I recently went out of town to upgrade a client's server. In my consulting business, I always feel under pressure to accomplish a certain amount of work before leaving for home. I installed a new Windows 2003 and Microsoft Exchange Server 2003 server and had to migrate the data from the existing Windows 2000 server to the new server. When I've performed similar remote upgrades, I've prepped the server at my office and completed the installation on site. This sounds like a good idea, but in reality it doesn't save much time. If you decide to prep a server before transporting it to the site, don't make it a domain controller (DC); simply prep the hardware and install the OS. You can miss too many details during the onsite installation that can cause problems in the future.

Even with the server prepped, you still have many steps to complete after you get the server on site. You probably need to change the server's TCP/IP configuration, move the server to a different site, make sure you've correctly set up Active Directory (AD) replication bridgehead servers, possibly make the server a Global Catalog (GC) server, wait for AD replication to take place--it goes on and on. The time that you thought you were going to save is taken up by making sure the server is properly installed in AD, not to mention unpacking the server and repacking it for its final destination. The bottom line is: Send the hardware to the site and perform the installation onsite.

When you arrive on site, make sure you have all the components you've ordered. When you perform an installation at a remote site, give yourself an extra day or so in case things don't go smoothly. For this particular installation, the order was complete and everything arrived safely.

After setting up the server hardware, I received a memory mismatch error during the Power On Self Test (POST) process on the server, and the server didn't recognize the extra 2GB of memory I installed. The server was an HP Proliant ML370 with a three-drive RAID 5 array with one hot spare and 3GB of memory. I called Kingston Technology, who diagnosed the problem as bad memory. Fortunately, I was able to set up a FedEx Saturday delivery (it was Friday when I discovered the problem), and the memory arrived the next day and the replacement memory worked. When setting up a new Windows 2003 server at a remote location, I typically configure the server with the following options:

  • Disk partitions. I usually create two partitions on the server. A 30GB C drive, with the remaining space used for the D drive. This setup gives me enough space to install the OS, program files, and swap file on the C drive, leaving the D drive available for user data. If you plan to install Remote Installation Services (RIS), you need to store the RIS image files on a separate partition from the server's OS.
  • Latest patches. After you complete any OS installation, make sure to update the server with the latest patches and critical updates.
  • Latest hardware drivers. HP has a slick setup utility that automatically installs the latest drivers for the server as part of the Smart Start OS installation. If you decide not to use this utility, make sure to install the manufacturer's latest hardware drivers.
  • BIOS. In most cases, new servers will have the latest BIOS for the computer and other hardware devices such as RAID controllers, but it's a good practice to make sure you have the latest version. For this installation, I used an HP 6402 RAID controller that had outdated firmware. I downloaded and installed the latest firmware for the RAID controller, which took care of annoying battery cache error that the RAID controller displayed during the POST process.
  • Remote access. I needed the ability to use Windows Terminal Services to connect to this server so I enabled both the remote assistance and remote desktop features of Windows 2003. To enable the remote access features, right-click My Computer, Properties, then click the Remote tab and select the Remote Assistance and Remote Desktop checkboxes.
  • I386 setup files. After installing the OS, I copy the i386 setup files and subfolders from the Windows 2003 CD-ROM to the C drive. Doing so makes it easier to install any Windows 2003 feature that you might need in the future because the setup files are already on the server. Because Windows 2003 Service Pack 1 (SP1) isn't out yet, I didn't need to apply a service pack. But for Windows 2000 environments, you can extract the service pack files by typing D:\patches\ W2KSP4\w2ksp4_en.exe –x. After the files are extracted, go to the \i386\update folder and type the command:   update –s:c:   assuming that the setup files are located in the c:\i386 folder. This command slipstreams the service pack files into the i386 setup files, which eliminates the annoying prompts to go back and forth between the i386 and the service pack folder when you install new services.
  • DC. Because this server was only the second server installed at this location, I made it a DC and a DNS server. When possible, I prefer to have at least two DCs per site for fault tolerance.
  • AD Sites and Services. This was the second server that was installed in this remote site, so the site name and the subnet were already created in Active Directory Sites and Services. Because it's the newer of the two servers, I decided to make it the bridgehead server for site replication and had the existing server replicate to this new server. You should typically designate one server in each site as the bridgehead server and have all the remaining DCs in the site replicate with the bridgehead server. This setup cuts down on WAN replication traffic and makes AD replication more efficient.
  • GC server. This installation has one forest and domain so I made this server a GC server. This setup improves authentication performance by allowing users to locally authenticate to this server. To make a DC a GC, start Active Directory Sites and Services, and select the , Servers, , and right-click NTDS Settings. Select the Global Catalog check box and click OK.
  • Label the server. I use a label maker to label the server with the server name, OS, IP address and subnet mask. I also label the server with the month and year it went into service. This system makes it easy to identify which servers are due for replacement during budget time. Typicall, I replace servers every 3 to 5 years, depending on the client's requirements.
  • Norton AntiVirus (NAV) client. For virus protection, I installed NAV Corporate Edition.
  • DHCP. I kept DHCP on the old server, and I duplicated the DHCP scope on the new server but didn't activate it. This setup will let me quickly bring up DHCP services on the new server in case the old server goes down.
Of course it's very difficult to anticipate everything you might need for a server installation. This installation was no exception. I forgot to order two items: a Keyboard/Video/Mouse (KVM) switch to control both servers with one keyboard and monitor, and a SCSI cable because I wanted to move the existing external DLT tape to the new server. Fortunately, I was able to find both parts at a local computer store. Next month I discuss the steps I use when I install an Exchange Server.

Tip: Cable Managers

I like to use Panduit cable managers to organize patch cables between the patch panel and switch when installed in a 19" rack. These organizers make for a very clean installation. One drawback is that it's impossible to tell which patch cord is installed in a given switch port without opening up the wire manager and tracing down the cable. For this reason, I use wire markers on both sides of the patch cord, which makes it easy to see where a patch cable is going. If you've worked with brand X wire markers, you know that they tend to pop off the patch cable after a year or so. One brand that stays on better than others is Tyton wire marker tape. I use the markers in the blue refillable dispenser. It has labels 0 – 9 that you can refill individually, so you don't end up with sheets that are missing 0's, and 1's but still have a lot of the higher numbers still on the sheet.