Most readers of this book would think nothing about building their own PCs. The hardware is nearly fully standardized across the industry, the choices of component selection are straightforward, and the method for assembly is extremely well documented in numerous books and articles. The pitfalls are few. However, when it comes to building a server, many of these same people hesitate. When building a server, there are more choices to make, and the equipment is more expensive than that for a PC, but the results can be equally satisfying. Because you've now read a number of chapters that describe how to select a motherboard, what the advantages are of one bus over another, and how casing influences your system configuration, we don't repeat that information here. Instead, the sections that follow speak to what kinds of servers are straightforward to build and why you might want to build your own. If you are considering building a server, you shouldn't do so because you intend on saving a lot of money. You usually don't. You often can't build a PC for less than you'd spend on a major first-tier OEM, such as Dell or Hewlett-Packard. Components are a commodity, and OEMs buy them by the container load. The best you can hope for is to approach their pricing with your costs. Servers, on the other hand, tend to have higher markups. So it is possible to save some money building your own server. But saving money is still not the best reason to build a server. The best reason to build your own server is that you can pick and choose your own components in a way that buying someone else's system doesn't allow. When you build your own server, you have more control over the setup of the system, and you are more likely to know what to do or replace when things go wrong. A home-built server is generally rather flexible to configure because you use industry-standard parts and not some proprietary type of casing, memory, or motherboard that will block your upgrade path in the future. Building your own server often results in equipment that has a longer duty cycle because it is more upgradable. Building your own server makes sense for another reason: Although system builders make their servers competitively priced at purchase time, everything else they sell youfrom service to upgrade parts and even their shippingis priced at whatever the market will bear. Server Purposes and Form FactorsIf you have decided to build a server, the first place to start is determining the intended purpose of the server. That purpose should guide many of your selections. A good rule of thumb when building any system is to try to build a balanced system but oversize that system for any task that is the primary function of the server. A balanced system is one where each subsystem of the server is powerful enough to allow you to avoid bottlenecks. If the purpose of the server is to serve files, then the I/O subsystem needs to be emphasized. Let's talk a little bit about balanced systems. It's impossible or at least too costly to size subsystems so that they never present a bottleneck. When a system gets a job that requires a lot of processing, chances are that the CPU is going to be 100% utilized until the job is near completion. The goal is to allow acceptable performance in those circumstances as well as to maintain a good average CPU utilization rate. That's one advantage that servers offer. If you find that your CPU utilization goes up, if you've selected the right motherboard, you can upgrade your processor or add another processor. What typically separates a server from either a workstation or PC is that servers are built with more upgrade options. Realistically there are only a few different types of servers that are practical for most people to build themselves:
It's possible to build a thin form factor system using readily available components for rack-mounted units. Two types of servers are difficult to build, given the current retail model:
Neither of these two types of system is standardized enough and in great enough demand from the average system builder that companies stock the parts needed to build them. If you intend to build either a large SMP or a blade system, you will find yourself spending time talking to the original parts manufacturers themselves. Chances are that for a single board or a limited number of boards, they aren't going to be much help to you. Server ComponentsYou've seen a wide variety of components described in this book. What are the features that a server requires from its components in order to provide a stable and dependable service to network clients? Intel markets server building to its system builders, using the marketing term "Real Server." A server should include the following:
The preceding list represents a checklist for selecting your basic server components. They are necessary to create a server but are probably not sufficient for most purposes. Servers are differentiated from workstations or desktops through the addition of these features:
All these requirements speak to the fundamental differences between workstations/desktops and servers. Servers must be much more dependable, must be higher performing, and must be flexible and have room to grow. Servers require a significantly higher investment than standard PCs, so you want to maximize your investment in them by selecting components that support the features described in this section. Assembling a ServerWhen you have chosen your components, the next step is to assemble the system. In most respects, there isn't much difference between assembling a server and assembling a PC. There are a few critical differences, however, so in the following sections we discuss the building of a hypothetical server system step by step. Installing Core ComponentsLet's begin by walking through the casing assembly, assuming that you've bought a case with no preassembled components already installed in it. Begin as follows:
It's a good idea to test the basic system at step 11 because it becomes increasingly difficult to diagnose problems later on, when there are more potential causes. At this point, if there is an issue, you can try switching the memory or changing slots, swapping out the CPU or video board, changing power supplies, and reexamining your connections. In your initial boot to BIOS, you can determine whether your power LED is functioning, whether your restart button operates, and whether you are getting beep sounds. Installing the Remaining ComponentsAfter you have installed the core components, you can add peripheral devices. It's a good idea to add two or three components at a time and then test the boot process to ensure that the additions aren't causing any problems. If you have the time and patience, you may prefer to test one component at a time. Here are a some of the steps you need to follow, but the order isn't as critical as in the prior list:
At this point your server is fully populated and ready for configuration. If you are using hardware RAID, follow these steps:
The process of creating the container is fast, but striping a large array can take some time. Installing an Operating SystemAfter your RAID has been configured, it is time to install your operating system and complete the installation. To install the operating system, follow these steps:
In building a server, the steps most people seem to have trouble with are creating the RAID container and not having the correct device driver in hand. Many RAID boards are poorly documented, and if you haven't done a system build before, you might not realize that you need to create a container first and stripe it prior to installing the operating system and then formatting the volume. The container and its striping are a hardware feature, separate from the formatting the operating system does. With your server up and running, it's a good idea to let it burn in for 48 hours, monitoring your system temperature, which can usually be done using capabilities built into modern motherboards. In particular, you should monitor your CPU temperature to make sure it is not overheating. |