Virtualization implementation projects involve a good chunk of your infrastructure, from your servers, storage...
and networking to your security and management software. This third part of our virtual server deployment guide offers nine steps to keep your virtualization implementation project on track.
At this point in the process, you have performed an IT environment assessment and planned and designed your virtual server infrastructure. Now comes the most exciting part: the actual virtualization implementation.
Virtualization expert Eric Siebert lays out the various virtualization implementation steps in his article, "Virtualization Deployment: The Assessment and Planning Phases." Below I have expanded on each of the phases he describes and have included additional considerations and questions to ask.
- Build your virtual environment. During this phase, install servers, load your chosen virtualization hypervisor (ESX Server or Hyper-V, for example), load the centralized management platform (Microsoft SCVMM or VMware vCenter) and add the virtual hosts to the management platform.
- Configure your virtual environment. During this phase, configure servers with their static IP addresses and correct network settings and configure network VLANs if necessary.
- Secure your virtual environment. During this phase, set a complex root password on all virtual hosts, create a group in Windows Active Directory, and add authorized VMware administrators to this group, authorize that group to be administrators in VMware vCenter and remove domain admin. If you have other kinds of users administering their virtual machines (i.e., SQL admins and developers), consider using additional groups and roles.
- Populate your virtual environment. During this phase, add new virtual machines to the virtual infrastructure by creating fresh VMs and installing a clean OS, by performing a P2V conversion with tools such as VMware's Converter Enterprise (or other tools mentioned in section two), or download virtual appliances from the VMware Virtual Appliance Marketplace. Consider the kind of P2V migration that you'll use.
- Monitor your virtual environment. During this phase, at minimum, you want to monitor your new virtual host using basic tools such as the graphs included with the free version of ESXi Server and the vSphere Client. More likely, you want to use more advanced performance graphs offered by vCenter, which can be configured to alert you about performance issues. As time goes on, it's also likely that you will want a more sophisticated performance monitoring tool, such as those covered in the "Management Tool Selection" section.
- Maintain your virtual environment. Maintenance may be simple and involve a single virtual host and a handful of VMs. But as your infrastructure grows, you will need maintenance tools. Not to be confused with the monitoring phase, the maintenance phase's primary task is patch management. Thankfully, if you use VMware's vSphere, every commercial edition includes Update Manager. With Update Manager, you can keep the patches on your ESX servers current as well as those for the operating system and even some applications. If you use VMware's Distributed Resource Scheduler (DRS), ESX Server can be updated without creating downtime for end users.
- Back up your virtual environment. Just as with physical servers, proper backup of virtual servers is paramount. When you virtualize physical servers, valid backups must be conducted from day one. While backups can be performed using the existing backup agents already on physical servers, this method isn't optimal for virtual machine backup. To back up virtual machines, use virtualization-specific backup programs that understand which VMs are on which host and that can identify when VMs have moved to a new host. These backup applications support Microsoft Volume Shadow Copy Service (VSS) to ensure application consistent backups and may support other features such as file- and image-level backups, data deduplication, and replication. Examples of virtualization-specific backup applications include VMware's Data Recovery, Veeam Software's Backup and Vizioncore vRanger.
- Troubleshoot your virtual environment. Hopefully you won't encounter issues with your newly deployed virtual infrastructure. But if you do, you should have documentation and diagrams of your environment. You should also have support information and a support contract (which is recommended) for your servers, SAN, network, storage and virtualization software.
- Educate and document. While this final phase isn't included on Siebert's list, education and documentation is a crucial step. Part of any good deployment plan includes the education of other admins at your company and the documentation of the new virtual infrastructure and common administrative tasks. While a virtual server may look like a physical server to other administrators, the administration and troubleshooting of VMs is quite different from that for physical servers. Training classes should he held so that support staff and junior administrators can understand the changes to their physical infrastructure and how to perform the same tasks in a virtual environment.
Avoid virtualization implementation pitfalls
While following your plan based on the steps above can prevent problems during virtualization implementation, there are specific pitfalls for you to avoid. Let's explore some of these dangers below:
- Underestimating the amount of RAM needed in virtual hosts. Even if you use VMware's memory overcommit, it's likely that your production virtual hosts will use all the RAM you can provide them. Many virtual hosts in production environments have 16 GB of RAM or more. As you add more virtual machines, monitor memory closely.
- Underestimating the amount of storage needed in your shared storage. While VMware's new vStorage Thin Provisioning helps reduce the amount of storage utilized by virtualization, virtual machines can quickly gobble up storage in your centralized storage. If possible, use VMware's Thin Provisioning or on your SAN to save on disk utilization. You can also use tools such as Vizioncore's vOptimizer Pro to reclaim overallocated storage.
- Virtualizing faster than the rate of training and documentation. Virtualizing a physical server is easy and can be done in a matter of minutes, but training junior admins and updating documentation can take far longer. Don't fall prey to virtualizing all your physical servers and then have to troubleshoot virtual machine problems or face the wrath of an application development manager whose systems have been moved without permission.
- Overprovisioning. During initial deployment and over time, it is easy to overprovision virtual machines because the creation of a new VM is so easy. Just as with physical servers, you should provision only VMs that the business side needs. Every new VM uses additional server resources and costs another OS license.
- Lack of testing. Test running an application as a VM, which can be as simple as doing a test P2V conversion into VMware Workstation and verifying the results. In my view, 99% of all applications work on a VM, but watch for applications that are graphics-intensive (such as running computer-aided design, or CAD, inside a virtual desktop) or applications that require license-key FOBs. While an application may be compatible, you also want to ensure that your virtual infrastructure can handle the application's demands and provide the same level of performance as that provided by a physical server.
David Davis is the director of infrastructure at Train Signal Inc., a global leader in video training for IT pros. Davis has a number of certifications, including vExpert, VCP, CISSP and CCIE #9369. Additionally, he has authored hundreds of articles and six different video training courses, including the Train Signal VMware ESX Server video training series. His websites are Happy Router.com and VMwareVideos.com.