 CFUnited August 12-15, 2009  Mike Brunt – CFWhisperer.

Slides:



Advertisements
Similar presentations
Chapter 4 Infrastructure as a Service (IaaS)
Advertisements

Microsoft Virtualization Last Update Copyright 2011 Kenneth M. Chipps Ph.D.
WSUS Presented by: Nada Abdullah Ahmed.
Chapter 5: Server Hardware and Availability. Hardware Reliability and LAN The more reliable a component, the more expensive it is. Server hardware is.
June 23rd, 2009Inflectra Proprietary InformationPage: 1 SpiraTest/Plan/Team Deployment Considerations How to deploy for high-availability and strategies.
Cold Fusion High Availability “Taking It To The Next Level” Presenter: Jason Baker, Digital North Date:
1.1 Installing Windows Server 2008 Windows Server 2008 Editions Windows Server 2008 Installation Requirements X64 Installation Considerations Preparing.
Deployment Options Frank Bergmann
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 11 Managing and Monitoring a Windows Server 2008 Network.
Microsoft ® Application Virtualization 4.5 Infrastructure Planning and Design Series.
Module 2: Planning to Install SQL Server. Overview Hardware Installation Considerations SQL Server 2000 Editions Software Installation Considerations.
Session 3 Windows Platform Dina Alkhoudari. Learning Objectives Understanding Server Storage Technologies Direct Attached Storage DAS Network-Attached.
Virtual Network Servers. What is a Server? 1. A software application that provides a specific one or more services to other computers  Example: Apache.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 7 Configuring File Services in Windows Server 2008.
Implementing High Availability
SharePoint is only an application so it has to run on top of Windows Server Windows 2008 R2 SP1 or Windows 2012 Standard, Enterprise, or Data Center Still.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
VMware vCenter Server Module 4.
1 Chapter Overview Creating User and Computer Objects Maintaining User Accounts Creating User Profiles.
11 SYSTEMS ADMINISTRATION AND TERMINAL SERVICES Chapter 12.
Microsoft ® Application Virtualization 4.6 Infrastructure Planning and Design Published: September 2008 Updated: February 2010.
Storage Area Networks The Basics. Storage Area Networks SANS are designed to give you: More disk space Multiple server access to a single disk pool Better.
Configuring File Services Lesson 6. Skills Matrix Technology SkillObjective DomainObjective # Configuring a File ServerConfigure a file server4.1 Using.
Overview Print and Document Services Print Management console Printer properties Troubleshooting.
Chapter 10 : Designing a SQL Server 2005 Solution for High Availability MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design.

ColdFusion MX Server Administration J2EE Deployment and Clustering Adam Wayne Lehman J2EE Deployment and Clustering Adam Wayne.
Module 13: Network Load Balancing Fundamentals. Server Availability and Scalability Overview Windows Network Load Balancing Configuring Windows Network.
Microsoft ® Application Virtualization 4.6 Infrastructure Planning and Design Published: September 2008 Updated: November 2011.
1 Group Account Administration Introduction to Groups Planning a Group Strategy Creating Groups Understanding Default Groups Groups for Administrators.
1 © 2006 SolidWorks Corp. Confidential. Clustering  SQL can be used in “Cluster Pack” –A pack is a group of servers that operate together and share partitioned.
Guide to Linux Installation and Administration, 2e 1 Chapter 9 Preparing for Emergencies.
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Managing and Monitoring Windows 7 Performance Lesson 8.
By Rashid Khan Lesson 10-From Here to There: Remote Installation of the Windows XP Professional Client.
Module 1: Installing and Configuring Servers. Module Overview Installing Windows Server 2008 Managing Server Roles and Features Overview of the Server.
SURENDER SARA 10GAS Building Corporate KPI’s
Module 9 Planning a Disaster Recovery Solution. Module Overview Planning for Disaster Mitigation Planning Exchange Server Backup Planning Exchange Server.
Module 11: Implementing ISA Server 2004 Enterprise Edition.
Mark A. Magumba Storage Management. What is storage An electronic place where computer may store data and instructions for retrieval The objective of.
Module 10: Maintaining High-Availability. Overview Introduction to Availability Increasing Availability Using Failover Clustering Standby Servers and.
1 Administering Shared Folders Understanding Shared Folders Planning Shared Folders Sharing Folders Combining Shared Folder Permissions and NTFS Permissions.
Clustering In A SAN For High Availability Steve Dalton, President and CEO Gadzoox Networks September 2002.
Switch Features Most enterprise-capable switches have a number of features that make the switch attractive for large organizations. The following is a.
Group 2 Bernard Smith Thomas Laborde Hannah Prather Fault Tolerance Environment Power Topology and Connectivity Servers Hurricane Preparedness Network.
1 Chapter Overview Planning to Install SQL Server 2000 Deciding SQL Server 2000 Setup Configuration Options Running the SQL Server 2000 Setup Program Using.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
VMware vSphere Configuration and Management v6
CHAPTER 7 CLUSTERING SERVERS. CLUSTERING TYPES There are 2 types of clustering ; Server clusters Network Load Balancing (NLB) The difference between the.
Cloud Computing Lecture 5-6 Muhammad Ahmad Jan.
Install, configure and test ICT Networks
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
1 CEG 2400 Fall 2012 Network Servers. 2 Network Servers Critical Network servers – Contain redundant components Power supplies Fans Memory CPU Hard Drives.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
Log Shipping, Mirroring, Replication and Clustering Which should I use? That depends on a few questions we must ask the user. We will go over these questions.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
An Introduction to Local Area Networks An Overview of Peer-to-Peer and Server-Based Models.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
Microsoft Virtual Academy Module 9 Configuring and Managing the VMM Library.
High Availability - Clustering ColdFusion
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
Configuring File Services
CONFIGURING A MICROSOFT EXCHANGE SERVER 2003 INFRASTRUCTURE
Introduction to Networks
Introduction of Week 6 Assignment Discussion
SpiraTest/Plan/Team Deployment Considerations
ColdFusion Performance Troubleshooting and Tuning
Managing Services with VMM and App Controller
Presentation transcript:

 CFUnited August 12-15, 2009  Mike Brunt – CFWhisperer

 Who am I, what am I and why am I here? I have been using CF since 1996, version 1.54 (dbml) and am still actively developing in CF. I worked for Allaire-Macromedia as a ColdFusion-Spectra consultant. Co-founded Webapper (SeeFusion crowd) carried on the Allaire-Macromedia consulting work.  Here to discuss how to design and build ColdFusion applications with High Availability in mind from day 1.

Let’s Start At The End!

 The previous slide illustrates a typical redundant infrastructure as it could be created in a single location, such as in a data center. In this case most devices are operating in an “active-active” mode.  Active-active means that devices are handling traffic and participating in the request-response cycle of a web application. The exception is the firewalls and clustering devices which are in active-passive mode. In this case only one of each device is actively participating in the request-response cycle of a web application. The other is ready to take over should the active device fail.  The clustered ColdFusion devices are actually clustered at the instance level using Java-J2EE clustering. It is good to note that as we are typically using external web servers, such as Apache, IIS, SunOne etc ColdFusion clustering is not operating at the web server level.  In the next section we will look at hardware considerations in HA…

The Network/Fiber Optic Layer Before we leave the overview of network hardware there is one item upon which everything which needs to communicate depends – the NIC - “the faucet or tap”… It is almost certain that there will be more than one NIC in a typical server, so make sure you use all of them for something. For example, use one NIC for all incoming-outgoing requests to the web-tier and another for communicating with a dependency, such as a database. Also bear in mind that any connection point, such as a NIC, is a potential bottleneck. In addition, take care with settings on the NIC’s always fix them do not leave them on “auto-sense”. If your switch runs at Gigabit Full Duplex then set the NIC’s on all servers to that setting.

SERVER CONSIDERATIONS

Server Considerations 64-bit: Do not buy 32-bit server hardware, the difference between 32-bit and 64-bit is dramatic. Hard Drives: This is often overlooked but hard drive configuration is an important aspect, particularly with regard to Database servers. The diagram below shows two kinds of groupings or “arrays” of hard- drives. These are know as RAID (Redundant Array of Inexpensive Disks) Arrays. Their primary job is to provide redundancy so if there is a hard-drive failure, service will still be maintained. There are two very important considerations when configuring RAID which are illustrated below. Firstly, the kind of array chosen should reflect the needs, this is especially important with database servers where heavy writing of transaction logs is typical, use a RAID 1 or 10 array for this. Secondly, where large amounts of storage is needed, for instance for the database files themselves, RAID 5 or 6 is optimal. VM and Cloud Computing?

 This diagram shows a very cost-effective way to create a high availability infrastructure at the data tier with SQL Server. We evolved this as an offering which we have deployed at several clients and it is very cost-effective as only one fully paid SQL Server license is necessary. This is mirroring with transactional log replication.  Only one database server is active at any time, the “witness” server monitors the mirror and should the active server fail, it immediately switches the two servers roles, making the passive server active.  One important advantage of this set-up is the switch-over in case of a failure is very quick, taking seconds as opposed to 2-3 minutes with clustering. Full clustering would also require licenses for all cluster members. Optimal Configuration for basic HA using SQL Server 2005 or 2008

Next we move on to software considerations…

Software considerations…  The Web Site Code: As we add cluster members we need to consider that each member will need access to the CF code (and possibly other media). We have two main alternatives in this to consider… 1. We can maintain multiple copies of the code, one on each cluster member’s physical server. This means we will have to set up a replication mechanism to ensure that the code on all cluster members is identical at all times. Con, there is a danger that code may be different within each cluster member. The replication mechanism is the key here. 2. Alternatively, we can maintain a central copy of the code on file servers, on network attached storage (NAS) or a storage area network (SAN). Con, we are adding another network-connection hop and still require the added level of storage to be redundant. The next slide is a graphical representation of the alternatives shown above…

Coding for Clusters - Shared Scope Variables 1 Shared scope variables reside in memory and as such are in the memory space of a single ColdFusion instance-server. The three current scopes in CF are.  Application Scope: available to all users in a single ColdFusion application created by using the <cfapplication tag.  Server Scope: available to all applications and all users on a single ColdFusion instance-server.  Session Scope: applicable to a single user in a ColdFusion application. If a user is moved from one instance to another in mid session their session variables will not be there. The application variables should be there providing the application is initialized with all those instantiations being in one place, preferably in the Application.cfm or.cfc. It is very important that the code used by all instances is identical.

Coding for Clusters - Shared Scope Variables 2 Alternative Scopes  Application Scope: The Request Scope can be interchanged with the Application Scope in many cases. As the Request Scope is not memory resident it does not cause problems if users are moved around a cluster.   Session Scope: In the Java world session state can be maintained in different areas, memory being one, a database being another. In ColdFusion the Client Scope is equivalent to maintaining session state in the database. The downside is that complex variables cannot natively be stored in a database. It is very important that the code used by all instances is identical.

Coding for Clusters - Shared Scope Variables 3

CF – J2EE Clustering ColdFusion clustering is based on J 2EE clustering which is peer-to- peer clustering. The external web-server is not clustered and still needs to be clustered using either a hardware clustering device such as an F5 Big-IP or software clustering such as Windows Network Load Balancing (NLB).

ColdFusion Enterprise – J2EE Clustering ColdFusion clustering is based on JRun which in turn is based on J2EE clustering. This is software based clustering and it is peer-to- peer with no cluster controller as such. If we set up clusters using the JRun Management Console, (JMC), there is the definite concept of a cluster creator as the JMC itself does not become part of any cluster. In the ColdFusion Administrator this is less well defined and can cause confusion. The following slides show a methodology we evolved to install ColdFusion and set up a basic cluster…

Installing ColdFusion Enterprise & Clustering - 1 During the install select “Multiserver Configuration”, this will install ColdFusion and JRun…

Installing ColdFusion Enterprise & Clustering - 2 As the install continues make sure you select the built-in web server. This is the Java Web Server (JWS)…

Installing ColdFusion Enterprise & Clustering - 3 After the installation completes we will have the first instance of ColdFusion up and running. This instance by default is named “cfusion” and we will not use this to run any applications, we will use it to simply create instances and peer to peer clusters. This will be the only instance which contains the “Enterprise Manager” which is the area of the ColdFusion used to create instances and clusters. The graphic here shows an instance successfully created…

Installing ColdFusion Enterprise & Clustering - 4 We then move on to create a second instance using the Enterprise Manager and at this point we have two instances up and running. In addition we should remove the “samples” instance.

Installing ColdFusion Enterprise & Clustering - 5 Now that we have two instances created we once again use Enterprise Manager to create a cluster and add the two instances.

Installing ColdFusion Enterprise & Clustering - 6 At this point we have achieved the following:  Installed ColdFusion Enterprise in a Multiserver installation.  Used the first instance “cfusion” on the built-in web server (JWS) to create two ColdFusion instances via Enterprise Manager.  Created a cluster and added two instances to that cluster.  Now is the time when we use the web server configuration tool to connect this cluster to the external (production) web server.

Installing ColdFusion Enterprise & Clustering - 7 We use the web server configuration tool (wsconfig) to connect the cluster we created to the external (production) web server.

All’s Well That Ends Well!

Cloud Computing???

Q & A Time Mike Brunt – (+1) (USA Only) (Intl.)