Building your own computer is a major undertaking; it can also be very rewarding. If you're seriously involved with computers, I recommend that you build your own machine at least once. All the machines running in my lab are "homegrown," so I obviously heed my own advice. As a guide to constructing your own server for BackOffice Server 2000, let's look at the tasks and decisions I faced when building my new primary production server, Colossus.

Disks. The most difficult—and enjoyable, in some ways—part of building a server is specifying the system's components. To select the most appropriate parts, you must identify the role the new machine will play in your computing environment. Will it primarily be a file server, or will it handle Windows 2000 Server Terminal Services-based application interaction? In my case, Colossus will process a mixture of tasks (including all my file services, basic printing tasks, and minimal Terminal Services execution) and act as an Internet gateway.

For a file server, disk quality, interface, and space are the most crucial specifications. SCSI disks present several advantages over lower-priced—and lower-performance—IDE drives. SCSI drives can handle several operations at once without lagging, they outperform IDE drives by a large margin, and they often operate at higher RPMs than IDE drives. Since Colossus is a file server, I chose Seagate Technology’s Barracuda line. I populated the new machine with three 18.4GB Seagate ST318436LW Barracuda 18XL Ultra SCSI drives.

Controller. Why did I choose three hard disks instead of one? I wanted to use them in a RAID configuration. RAID provides fault tolerance and, in some cases, increases performance. RAID has different levels, or modes, of fault tolerance (see Joel Sloss, "RAID Levels," Windows NT Magazine, August 1997). I used RAID 5 to give my three drives maximum protection. If you don't want a RAID array but still have SCSI disks, the Adaptec 29160 SCSI card offers stability and reliability at a reasonable price.

Processors. For an application server, the CPU’s quality is the most important issue to address. Servers often include dual processors, which takes advantage of a special capability built into Intel chipsets called symmetric multiprocessing (SMP). Using an OS such as Windows NT or Win2K, the OS's kernel allocates current tasks—called threads—to individual processors, distributing the machine's total load across the multiple processors. In Colossus, I used two Intel Pentium III 650MHz processors.

Which processor speed should you choose? The rule of thumb says that two slower processors are better than one faster processor. A dual-processor system can handle load better than a uniprocessor system, even if that uniprocessor system has big, fast SCSI hard drives and lots of memory. My colleague Robert Bruce Thompson explains this rule well in his thorough commentary about SMP and SCSI.

Memory. The general standard to follow for memory is put as much memory in your machine as you can afford. However, be careful of the inexpensive, no-name, commodity memory that most computer stores sell. Although it might appear to work out-of-the-box, inferior memory can introduce into your system random errors and crashes that are difficult to diagnose. I put 384MB of Crucial Technology RAM in Colossus, and I prefer Crucial RAM. It’s nearly as inexpensive as commodity memory, so you don’t pay much for peace of mind.

Motherboards. For dual-processor machines, motherboards are as simple as memory. All dual-processor motherboards are fast; the key is stability. I have had excellent experiences with Supermicro motherboards; my main workstation runs on the SUPER P6DGU model, and Colossus has the SUPER 370DLE board. Intel also makes reliable, expensive server motherboards with dual-processor capability. However, I prefer Supermicro boards because of the price difference.

Network Interfaces. Intel makes the best Ethernet chips, in my opinion, with 3Com following closely behind. Don’t be lured into buying cheap network equipment; buy name-brand hardware and save yourself the hassle. The 370DLE motherboard in Colossus comes with a built-in Intel EtherExpress interface, and I added a 3Com 3C905-TX for Internet connectivity. I chose a desktop NIC because the load I plan to put on this server doesn't require the special features found in server NICs.

Building the system is the next step, and several books illustrate the process of assembling boards and chips into a functional computer. Bob Thompson’s book PC Hardware in a Nutshell, (O’Reilly, 2000, ISBN: 1-56592-599-8) is my favorite, but you can use any hardware-assembly book. After you assemble your computer, you’re ready to load software. Congratulations! Next month, I’ll discuss buying a server for BackOffice Server 2000 from a manufacturer.