Introduction Server cluster is used to provide failover support for applications and services. A Server cluster can consist of several nodes (computers). Each node is attached to one or more cluster storage devices. Cluster storage devices allow different servers to share the same data, and by reading this data provide failover for resources.
Introduction Load balancing is used to scale the system as the client requests are increased It is suitable for static data which can be copied to several load balancing servers Each server is autonomous which means they don’t share any state information
Cluster Farm A farm is a group of servers that run similar services, but do not typically share data. They are called a farm because they handle whatever requests are passed out to them using identical copies of data that is stored locally. Because they use identical copies of data (rather than sharing data), members of a farm operate autonomously and are also referred to as clones. Front-end Web servers running Internet Information Services (IIS) and using NLB are an example of a farm.
Cluster Pack A pack is a group of servers that operate together and share partitioned data. They are called a pack because they work together to manage and maintain services. Because members of a pack share access to partitioned data, they have unique operations modes and usually access the shared data on disk drives to which all members of the pack are connected. An example of a pack is a database Server cluster running SQL Server 2000 and a server cluster with partitioned database views. Members of the pack share access to the data and have a unique chunk of data or logic that they handle, rather than handling all data requests. In a 4-node SQL Server cluster: –Database Server 1 may handle accounts that begin with A-F. –Database Server 2 may handle accounts that begin with G-M. –Database Server 3 may handle accounts that begin with N-S. –Database Server 4 may handle accounts that begin with T-Z.
Server configurations Server clusters can be setup using many different configurations. Servers can be either active or passive, and different servers can be configured to take over the failed resources of another server. Failover can take several minutes, depending on the configuration and the application being used, but is designed to be transparent to the end-user.
Clients Windows Clustering The Big Picture IIS Web Server or other IP based services Network Load Balancing 1 2 32 3 … 4 Data Servers SQL, Exchange, File Cluster Service
Windows Clustering: Addressing Concerns Scalability –Scale Up –Scale Out High Availability –99.9% Uptime Manageability –Remote –UI and Command line
Windows Clustering Vocabulary MSCS – Server clusters provide failover of resources representing services, applications and base system features between the servers in the Cluster. NLB – (WLBS) Network Load Balancing clusters distribute client requests or TCP/IP network traffic among many servers in the Cluster. Cluster – A group of independent computers that work together to run a common set of applications and provide the image of a single system to the client and application. Nodes or Hosts – Each system in a cluster configuration.
Server Clusters Physical design Client PCs Public network Private network (heartbeats, status, control) RAID disk sets Multi-initiator SCSI or SCSI over Fibre Channel Cluster servers
Server Clusters Recommended Environments Microsoft SQL Server™ 6.5 & 7.0 Microsoft Exchange 5.5 File shares Printer shares Other cluster-aware applications & services Typical uses are for data that changes frequently and cannot be easily replicated.
NLB Host NLB Virtual IP Address NLB Host Internet/intranet Network Load Balancing Logical Design No single point of failure No performance bottleneck No additional hardware needed Grow incrementally as demand increases Up to 32 nodes in a cluster Handle both planned and unplanned server downtime transparently Handle both planned and unplanned server downtime transparently
Configuring NLB with two network adapters 1. Assign appropriate IP addresses to each NIC, placing the NICs in separate subnets. Rename the first NIC “Public“ and the second to “NLB“, do this for each machine. * Node1 – o "Public" NIC * IP address: 10.10.10.11 * Subnet: 255.255.255.0 * Gateway: 10.10.10.1 * DNS: as appropriate o "NLB" NIC * IP address: 192.168.1.1 * Subnet: 255.255.255.0 * Gateway: N/A * DNS: N/A 2. On the "Public" NICs, click "Advanced" and add an additional IP address as the Virtual IP Address which clients will connect to from the Public network (i.e. - 10.10.10.169) Node2 - o "Public" NIC * IP address: 10.10.10.12 * Subnet: 255.255.255.0 * Gateway: 10.10.10.1 * DNS: as appropriate o "NLB" NIC * IP address: 192.168.1.2 * Subnet: 255.255.255.0 * Gateway: N/A * DNS: N/A
Multiple Sites and Geographically Dispersed Clusters
Cluster models Single node server clusters can be configured with, or without, external cluster storage devices. For single node clusters without an external cluster storage device, the local disk is configured as the cluster storage device. Single quorum device server clusters have two or more nodes and are configured so that every node is attached to one or more cluster storage devices. The cluster configuration data is stored on a single cluster storage device. Majority node set server clusters have two or more nodes but the nodes may or may not be attached to one or more cluster storage devices. The cluster configuration data is stored on multiple disks across the cluster and the Cluster service makes sure that this data is kept consistent across the different disks.
Cluster application types Cluster-unaware applications. These types of applications do not interact with the server cluster at all but can still fail over. Failure detection is limited. The Cluster service protects these applications mainly against hardware failures. Cluster-aware applications. These types of applications are characterized by superior failure detection. The Cluster service can protect these applications not only against hardware but also against software failures. Cluster management applications. These types of applications, which include Cluster Administrator and Cluster.exe, allow administrators to manage and configure clusters. Custom resource types. Resource types provide customized cluster management and instrumentation for applications, services, and devices.