490 likes | 637 Views
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability. Objectives. Understand availability and scalability Differentiate between server clustering and Network Load Balancing
E N D
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, EnhancedChapter 12: Planning and Implementing Server Availability and Scalability
Objectives • Understand availability and scalability • Differentiate between server clustering and Network Load Balancing • Implement server clustering • Describe the concepts involved in server clustering • Describe the concepts involved in Network Load Balancing • Implement Network Load Balancing • Install applications on an NLB cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Availability and Scalability • Availability: the percentage of time that servers are providing service on the network • Scalability: the ability to expand the number of clients or data that a server can support • How you implement availability and scalability depends on whether applications are stateful or stateless 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Server Availability • Potential causes of server or service failure • Hardware failure • Network failure • Administrator mistakes • Operating system crashes • Application crashes 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Server Availability (continued) • To provide higher server availability, you can use: • Redundant hardware (e.g., RAID5) • Uninterruptible power supply for temporary power outages • Backup power generator for longer power outages • Redundant paths through the network • Standardized procedures to perform tasks • Fully document the network server configuration • Regularly patched operating systems and applications • Windows Server 2003 clustering to implement server clusters and Network Load Balancing 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Scalability • Scalability can be accomplished by: • Scaling up • Scaling out • To scale up, you can: • Add more RAM • Add a faster disk subsystem • Add more processors • Scaling up can be both limiting and expensive 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Scalability (continued) • Scaling out uses commonly available hardware rather than specialized hardware • Difficult when a single service is running on a server and you want to scale out • Network Load Balancing (NLB) • Best solution for scaling out a single application • Can distribute the load between multiple servers • NLB can sense a failed server 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Stateful and Stateless Applications • Stateful applications require the server to retain knowledge about the client accessing the server • Not well suited to scale out • Easier to scale up • Stateless applications do not require the server to retain knowledge about the client accessing the server • Well suited to scale out 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Windows Server 2003 Clustering • Windows Server 2003 provides two clustering mechanisms to provide availability and scalability: • Server clusters • NLB 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Server Clusters • Provides highly available services • A service runs on a single server and can be moved to another server in the cluster (failover) • Server clusters are available only in Windows Server 2003, Enterprise Edition and Datacenter Edition • Up to eight nodes are supported in each server cluster • Server clusters must have a shared storage 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Server Cluster Configurations • Windows Server 2003 supports: • Active/Passive • Consists of two nodes: one hosts services and the other does not • N+I failover • N nodes in the server cluster are active and I nodes are passive in the server cluster ready to accept failed over services • Active/Active • Consists of two or more nodes, all of which are active • Single node virtual server • Consists of only one node. and does not have failover capability 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Cluster Applications • To use server clusters, application must be • An IP-based protocol • Able to specify where application data is located • Able to use the clustering API and receive status notifications and manage the cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Network Load Balancing • Network Load Balancing (NLB) spreads application requests from clients among two or more servers • With NLB, an application is installed on multiple servers using a virtual IP address • NLB can spread network requests evenly among the servers hosting the application or spread network requests based on a weighting scheme 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
An Example of Windows Server 2003 Clustering • The following example illustrates how both server clusters and NLB can be used for a Web-based application designed to explore a computerized web based database backed school registration system 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
An Example of Windows Server 2003 Clustering (continued) 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-1: Cluster Concepts • The purpose of this activity is to learn more about server clusters and NLB 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Installing and Configuring Server Clusters • The cluster service is installed automatically as part of a Windows Server 2003 installation • To configure a server cluster, you use Cluster Administrator • To create new server clusters or • Add new nodes to an existing server cluster • New Server Cluster Wizard: creates a new cluster • After installation, the current state of your cluster is shown in Cluster Administrator 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-2: Installing a Single Node Virtual Server Cluster • The purpose of this activity is to create a single node virtual server cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Server Cluster Concepts • The various concepts about server clusters include: • Shared disks • Quorum resource • Cluster communication • Resource groups • Failover and failback • Virtual servers 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Shared Disks • Shared disk: storage that all nodes in a cluster can access • Not required when a geographically dispersed server cluster is configured with an alternate data synchronization mechanism, or when a server cluster has a single server for testing purposes • When shared disks are required use either • A shared SCSI bus or • Fibre Channel SAN 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Shared SCSI Bus • SCSI configuration requirements include • An SCSI card that can disable autobus reset • All SCSI devices on the SCSI must have unique SCSI IDs • Proper termination on the SCSI bus • SCSI hard drives that are multi-initiator enabled to support multiple SCSI cards on the bus 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Shared SCSI Bus (continued) 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Fibre Channel • Fibre Channel is for storage area networks • Requirements for Fibre Channel shared storage • Fibre Channel card for each node in the server cluster • External storage array that supports Fibre Channel • Fibre Channel switch to connect the nodes to the external storage array 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Fibre Channel (continued) 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Quorum Resource • Quorum Resource is used by the cluster service • To store configuration information • To arbitrate which node owns the cluster • The location is specified at server cluster creation • Only one node at a time can own the quorum resource • First available node becomes the owner 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Cluster Communication • Nodes in a server cluster communicate with each other using heartbeat packets • Heartbeat packets monitor which nodes in the server cluster are still up and available • Can be UDP unicast packets or multicast packets 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Resource Groups • Control of services and applications in a server cluster is based on resource groups • Resource group: logical grouping of all required resources for an application or service to run • Resources can be disk partitions, IP addresses, printers, services, and applications • Resources can be in the following states: online, offline, online pending, offline pending or failed 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Failover and Failback • If a server cluster node fails, the resource groups on that node automatically fail over to another node • After failover has occurred, failback is possible • Occurs when the original node hosting a resource group is available again and the resource group is moved back to the original node • Can define whether a resource group fails back automatically, manually, or not at all 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Virtual Servers • Virtual server: collection of resources in a resource group presented by the cluster service • The node that owns the group responds on its behalf • Resources in server clusters are always accessed through a virtual server 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-3: Adding a Printer to a Virtual Server • The purpose of this activity is to add a printer to a virtual server 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-4: Removing a Server Cluster Node • The purpose of this activity is to remove the final node from a server cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Network Load Balancing Concepts • Concepts in NLB include: • The NLB driver • Virtual IP addresses • Application requirements • Affinity • Load balancing options • Network communication • Port rules 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
NLB Driver • NLB driver: software responsible for performing NLB on each host in an NLB cluster • Operates between the network card driver and the IP protocol • Can intercept and filter all incoming IP traffic • Filtering is required because all hosts in an NLB cluster share a MAC address that is used for the cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-5: Enabling the NLB Driver • The purpose of this activity is to enable the NLB driver 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Virtual IP Address • Each NLB cluster has a virtual IP address • The virtual IP address must be • Unique on the network • On the same subnet as the hosts in the NLB cluster • Added as a secondary IP address to a network interface 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Application Requirements • NLB suitable applications must: • Must use TCP or UDP • Data modified by the clients must be synchronized between hosts in the NLB cluster or stored in a central location, or affinity must be configured • Session state information must be stored on client computers or central location, or affinity must be configured • The application must not bind to a computer name • Applications must not keep files open for writing 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Affinity • Affinity: responses to requests made originally to one host in an NLB cluster are directed back to the original host • Required for applications that track session state info • Affinity can be configured in three ways: • None: affinity is not performed for stateless applications • Single: affinity based on the source IP address of the client • Class C: affinity is based on the source network of the client. 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Load Balancing Options • When hosts are part of an NLB cluster, you can define how the load is balanced between them: • Multiple Host and Equal • NLB cluster distributes load evenly between all hosts in cluster • Multiple Host and Load weight • NLB cluster distributes requests based on a load weight • Single Host • All requests to the NLB cluster are directed to a single host 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Network Communication • All hosts in the NLB cluster share a MAC address • All client requests use the MAC address of the NLB cluster as the destination MAC address • Allows all hosts in the NLB cluster to receive packets addressed to the NLB cluster • NLB driver loaded on each host accepts or discards the packet based on an algorithm that takes into account affinity settings, load weighting, and priority • NLB clusters can be configured to use either unicast MAC addresses or multicast MAC addresses 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Unicast • Unicast is the most common method used for distributing client requests • When selected, all hosts in the NLB cluster use the same unicast MAC address • Unicast MAC address is used in place of the MAC address embedded in the network card of each host 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Multicast • Multicast MAC addresses: prevent the inefficient use of switches and allow NLB cluster hosts with a single network to communicate among themselves 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Port Rules • Port rules • Control what the NLB driver does with packets • When hosts in the NLB cluster receive packets from clients, port rules define what is done with each packet • Composed of • Cluster IP address • Port address range • Protocol • Filtering mode that includes load weight and affinity 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Implementing Network Load Balancing • To implement an NLB cluster • NLB driver must be enabled on all servers that are to be hosts in the NLB cluster • Can create a new NLB cluster using Network Load Balancing Manager (nlbmgr.exe) • After the first host has created the NLB cluster, others can join 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-6: Installing an NLB Cluster • The purpose of this activity is to install an NLB cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Installing Applications on an NLB Cluster • No special procedure to use when installing applications on an NLB cluster • Application must be installed on all hosts in cluster • Microsoft recommends that you automate the process of application configuration to ensure that all servers are configured exactly the same 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-7: Configuring a Web Application for Load Balancing • The purpose of this activity is to configure a Web site for load balancing 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Activity 12-8: Removing an NLB Clustered Application • The purpose of this activity is to remove an NLB cluster 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Summary • Availability: percentage of time that servers are providing service on the network • Scalability: ability to expand the number of clients or data that a server can support • Windows Server 2003 provides two clustering mechanisms to provide availability and scalability: server clusters and NLB • In a server cluster a service runs on a single server and can be moved to another server (failover) 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network
Summary (continued) • Network Load Balancing (NLB) spreads application requests from clients among two or more servers • NLB Manager is used to implement NLB • When implementing NLB, Microsoft recommends that you automate the process of application configuration to ensure that all servers are configured exactly the same 70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network