Most admins know that server virtualization decreases hardware costs and provides high availability for virtual machines, but did you know it can also breathe new life into legacy servers?
Virtualizing ancient servers is rarely an easy process; it requires more planning and testing than the P2V conversion of newer servers. By paying attention to some critical details, however, you can get through the migration process with fewer headaches.
Why you should consider virtualizing legacy servers
I know several organizations that run mission-critical applications on a Windows NT Server because the applications will not run on newer operating systems. Operating such servers, however, often means running extremely old hardware. One organization, for example, runs a Windows NT server on top of 15-year-old hardware. Every time the server breaks down, it cannibalizes old hardware for spare parts.
More info on server migrations and conversions
Virtualizing legacy OSes on modern hardware
How to migrate from Microsoft Virtual Server to Hyper-V
Using VMware Converter for P2V migrations
Virtualizing aging servers frees the organization from dependency on legacy hardware. Not only does server virtualization allow the application to run on modern hardware, but it also makes future hardware migrations much simpler.
You can virtualize legacy operating systems, such as Windows NT, in spite of what you might have read elsewhere. I have done this several times. Running a Windows NT Server in a VM is not officially supported, but Windows NT Server itself is not supported either.
Work from a backup of the legacy server
You should try to avoid involving the legacy server in the virtualization process. Legacy servers tend to be fragile, which makes it more difficult to fix problems. I recommend creating a full system backup of the aging server and working from the backup. If your server runs Windows NT, then there is a good chance that your backup software won't be able to create a full server backup. You can, however, always use the NTBackup utility included with Windows NT. Once you create a full backup, you can manually install Windows NT onto the VM and then restore the backup to it.
In some ways, the backup and restore method is less problematic than a traditional P2V conversion. Older Windows Server operating systems such as Windows NT Server and Windows 2000 Server are extremely picky about their Hardware Abstraction Layers; moving one of these operating systems to different hardware, including virtual hardware, usually results in a Blue Screen of Death. As such, it's usually better to install the operating system manually and then restore a backup.
Check compatibility with modern hardware
Legacy Windows Server versions were never intended to run on modern hardware; you will have to enable the hypervisor's compatibility features to work around this roadblock. For example, when you open Hyper-V's Settings page and expand the Processor container, you see an option called Compatibility. As seen in Figure A, Hyper-V implies this option is only used for certain types of P2V migrations. In reality, some older operating systems -- Windows NT Server included -- simply will not function unless you enable this option.
You should also keep in mind that Hyper-V's integration services will not work with extremely old operating systems; you will have to depend on hardware emulation instead. Emulated hardware has a reputation for being slow, but the server will probably run faster on emulated hardware than on legacy physical hardware.
Use the right device drivers
You will also have to take device drivers into account during this process. Your operating system will need device drivers for the emulated hardware. Fortunately, Hyper-V emulates very common legacy hardware, such as NE2000 network adapters, so the operating system likely already has all the drivers that it needs, provided you have the latest service pack.
Moving a legacy server to a virtualized environment consists largely of trial and error. I recommend that you work through the process in an isolated lab environment, so as not to impact your production server. Once the legacy server is running on a virtual machine in a lab environment, you can easily migrate that VM to the production environment.