Chapter 5: Server Hardware and Availability Hardware Reliability and LAN • The more reliable a component, the more expensive it is. • Server hardware is more expensive than desktop workstation hardware as it needs to be more reliable. • If a workstation fails, one person is inconvenienced. If a server fails, many people are inconvenienced. • Servers need to be as powerful as possible as many people can be using them at once. Hot Swappable • A hot swappable device is one which can be replaced whilst the server is still in operation. • You should only hot swap components when the component and operating system supports it. • The following components can be hot swapped: RAM, disk drive, power supply, NIC, graphics cards. • Hot swappable components are more expensive. Often only necessary when you need to keep a server operational 24/7. • Most organizations can tolerate a server being offline after hours for maintenance. Multiple Power Supplies • Multiple power supplies can allow a server to function after one power supply fails. • Power supplies are the component most likely to fail in a server. They are also one of the cheapest components. • Having multiple power supplies doesn’t mean you can hot swap. In many cases it will allow you to keep your server running until you can choose the right time to power down and replace the failed component. UPS • Stands for Uninterruptible Power Supply. • A battery that allows a server to remain functional when there is a loss of mains electricity. • Battery also used when power fluctuates to provide a stable current to the server. Brownouts occur more often than blackouts and can do just as much damage. • Most operating systems can be configured to gracefully shut down once the server shifts to battery power. Asymmetric Multiprocessing • Where special processors can be delegated specific tasks by the operating system. • Graphics cards are an example. Graphics processing occurs on the graphics card’s processor rather than the computer’s CPU. Symmetric Multiprocessing • Symmetric multiprocessing involves having several processors of the same make and model working in parallel. • Tasks are balanced across all processors. • Operating system assigns tasks to processors based on current processor load. CISC and RISC CPU CISC: Complex Instruction Set Computer RISC: Reduced Instruction Set Computer CISC CPU: Intel Pentium – Pentium IV. AMD K6 RISC CPU: UltraSPARC III, PowerPC G3-G5 • RISC CPU have a smaller and more highly optimized processor instruction set than a CISC CPU. • RISC design came about because a study found that 80-90% of instructions were not used when computer code was compiled. Prior to the 1980s, when it was more common to write code in assembly language, most of a CPU instruction set was used. • The most common instructions are processed more quickly on RISC. Less common instructions are processed more quickly on CISC. Operating Systems and CPU Microsoft Windows Server 2003 supports Intel and AMD CISC CPU. Although Windows NT4 supported PowerPC as well. Apple OSX supports PowerPC only. Sun Solaris supports UltraSPARC only. Linux supports all processor architectures. RAID Overview • Stands for Redundant Array of Inexpensive Disks. • RAID is a way of using multiple disk drives and controllers to increase read/write speed or redundancy. • Hardware RAID is controlled by special hardware. Operating system is unaware of special disk configuration. • Software RAID is controlled by operating system. Less expensive than Hardware RAID, but often slower. • Appears as a single volume to the operating system. RAID 0 Three disk RAID 0 Each stack is a separate disk. Disk Striping without Parity Each color a different file. • Does not offer redundancy, does offer read/write improvement. • Different parts of the file are written to different disks at the same time. • This significantly improves write time. The more disks in the RAID 0 array, the faster it is. • Drawback is that if one disk in RAID 0 array fails, all array data is lost. RAID 1 RAID 1. 2nd disk is Disk Mirroring and Duplexing exact copy of first. Disk mirroring: two disks, one controller Disk duplexing: two disks, two controllers • Duplexing is more fault tolerant than mirroring as failure of the controller in mirroring will mean loss of the volume. • All data on the first disk is mirrored on the second disk. • Data written to one disk is automatically written to the second. RAID 1 RAID 1. 2nd disk is exact copy of first. • Data deleted from the first disk is automatically deleted from the second. • When one disk fails, the other continues operating without loss of data. With hot swappable drives, you could then replace the failed disk and the RAID 1 volume would automatically recreate the mirror. • Expensive because it requires twice the physical disk storage space. A 1000 GB RAID 1 volume made from 200 GB disks would require 10 disks. RAID 5 Disk Striping with Parity Parity Data • Minimum of 3 disks • Parity information is shared across all disks. In the event one disk fails, data can be recovered to a new disk using the parity information stored on the other disks on the set. • Faster than RAID 1 as data is read and written from multiple disks at the same time. • Slower than RAID 0 as parity information must be generated and written. • Requires one extra physical disk. A 1000 GB RAID 5 volume made out of 200 GB disks would require 6 disks. RAID 1+0 and 0+1 RAID 0 Stripe RAID 1 Data RAID 1 RAID 1 RAID 1 Mirror RAID 0 RAID 0 RAID 1+0 RAID 0+1 • Combines striping with mirroring and requires a minimum of 4 disks. • RAID 1+0 (also known as RAID10). Multiple mirrored pairs combined into stripe sets. • RAID 0+1. Stripe sets that are mirrored. RAID 1+0 and 0+1 RAID 0 Stripe RAID 1 Data RAID 1 RAID 1 RAID 1 Mirror RAID 0 RAID 0 RAID 1+0 RAID 0+1 • RAID 1+0: Better fault tolerance. In some cases can still function if multiple disks fail. • RAID 0+1: Better performance. If single disk fails, becomes a RAID 0 set. • Expensive because it requires twice the physical disk storage space. A 1000 GB RAID 1+0 volume made from 200 GB disks would require 10 disks. Active/Active Clustering • Uses a shared data source, either fibre channel or NAS. • All servers in cluster operational Shared storage at the same time. • Cluster appears as single server to devices on network. • Servers that make up cluster known as nodes. • Jobs allocated to server are distributed between nodes. • If node fails, other nodes in cluster take up slack. Active/Passive Clustering Active node Passive node Shared storage • Uses shared storage. • One node is active, the other in a “stand by” state. • Stand by node becomes active when an active node fails. • Can be combined with active/active clustering. Network Load Balancing • No shared storage. • Useful when data is not updated frequently (such as Web sites). • NLB software monitors load on each server. Server with lightest load receives the next job. • If node fails, NLB cluster is reconfigured automatically and jobs are reassigned. • If node added, NLB cluster is reconfigured automatically. Round Robin DNS • Basic clustering solution. • IP address of host nodes entered in DNS. 10.0.0.1 A cluster.companyname.com 10.0.0.2 A cluster.companyname.com 10.0.0.3 A cluster.companyname.com 10.0.0.4 A cluster.companyname.com • DNS returns different IP address each time host name is queried. • Does not ensure that load is balanced, just that each server receives the same number of new queries. Summary • Network servers are the most important computers on the LAN and need to be the most reliable. • Hot swappable devices can be replaced when the server is in operation. • Multiple power supplies can keep a server running in the event that one fails. • UPS allows a server to run on battery power if the need arises. Summary • Symmetric multiprocessing allows processing tasks to be shared across more than identical processor. • Active/active clustering has shared storage and shares jobs between nodes. Appears as a single server to clients. • Active/passive clustering has a server on standby. If a node fails, the stand by server comes online. Discussion Questions Explain the difference between active/active clustering and active/passive clustering? Describe the difference between NLB and Round Robin DNS? Describe the benefits/drawbacks of RAID 5 compared to RAID 1+0. What is a hot swappable component? Why do servers need to be so reliable?