What should I virtualize?
Key factors determine suitability of your environment
By Scott Murphy
Virtualization has been a hot topic, and the camps disputing which business applications should be virtualized are slowly settling. Below are some criteria that can be measured either quantitatively or qualitatively to determine which applications or servers should be included in your virtual environment.
- Special Hardware Requirements - There can be some specific limitations that prevent a potential physical server from being virtualized. Specialty hardware requirements should be reviewed for each server to identify any hardware that would not be supported under the virtual environment. There are many examples of such a situation, such as software requiring USB/FireWire devices or PCI devices such as telecommunications trunks or line cards.
- Regulatory Requirements – There may be internal determinants that prevent some servers, such as finance servers, from being virtualized. These servers may have various auditing rules and compliance regulations that prevent virtualization.
- Overall Virtualization Strategy – Many applications may be excluded from becoming virtual applications depending on what stage you are in your overall strategy. Disaster recovery and workload management practices (any-to-any migrations, backups, etc.) may prevent applications from being virtualized, as business continuity cannot be guaranteed.
- Guest Operating System Support - Although virtualized environments provide generic hardware to the guest operating system, specific drivers are still required based on the guest operating system selected. If applications require unsupported guest OS’s, they may not warrant the risk in virtualizing.
- Resource Utilization - Applications that are resource intensive may not be good candidates either. The primary resources that should be evaluated are processor, memory, disk, and network. High resource consumption will cause contention and affect performance. This performance degradation may prevent workloads such as the following from becoming virtual machines:
- Exchange servers
- Domain controllers
- Shared data / File servers
- SQL servers
- Backup servers
It is critical to estimate resources prior to virtualizing a server/application.
- Processor Utilization - When determining if a candidate should be a virtual machine, it is important to estimate the actual requirements from the processor side. The metrics should include:
- Average processor utilization of the guest physical machine
- Degree of variability, or frequency of spikes in utilization
Ideal candidates utilize only a fraction of a single processor’s overall capacity. Servers that require more than a single CPU should be weighed carefully. Also, when a physical server consistently utilizes a high percentage of processor capacity for extended periods, then it should be reviewed to determine impact on the virtual environment.
- Memory Utilization – While there are many memory algorithms within a virtual environment’s architecture framework, memory used within a candidate virtual machine must be examined carefully. For maximum performance, the sum amount of all workloads should remain at or below 100% of the all physical server’s aggregate memory.
- Disk Utilization - Frequently disk is not a limiting factor in consolidation projects. Storage within a virtual environment is assigned to virtual machines according to the used space plus a growth percentage. There are limiting factors here as well of course. Due to costs of SAN space, large file servers may not be good candidates. More equitable methods can be considered such as NAS storage to deal with these types of servers, encouraging a tiered storage structure. In addition to space limitations, servers that have high disk access may be excluded due to the bandwidth requirement they represent.
- Network Utilization - Network utilization in excess of 400MB of consistent requirements may not be suited to a virtual environment. In addition to presenting network congestion, the extra overhead will come at the expense of CPU cycles. Generally speaking however, this is the least common bottleneck in the selection of candidates.
Any one of these factors may prevent an application or server from being deployed in a virtualization solution. While many factors will dictate the design of your overall virtualized environment, backup strategy and disaster recovery planning are foundational factors you always must consider. With proper planning your virtualization solution can be designed to optimize capabilities and availability.
Thank you to Shaun Webber and Darren Boyd for their contributions to this Tech Focus.
Scott Murphy is a Consultant and VP – Business Development at Data Perceptions. Scott helps companies select best available technologies to meet their business requirements. In his role as Business Development lead, Scott has helped develop Data Perceptions’ extended team and the collaborative consulting model. Data Perceptions has developed and maintains relationships with over 80 independent consultants and 200
|