Sergey Galushko - Fotolia

First step in a virtualization design: Understand the layers

There are many design factors to consider when creating your virtual infrastructure that can help you build a robust deployment and prevent future problems.

There are many factors to consider when planning a virtualization design -- from hardware to hypervisor. In this article, we'll take a look at how to approach a new virtual deployment by examining the layers and offering strategies for how to select products and design your environment.

One of the critical decisions you'll need to make is selecting a hypervisor. The hypervisor layer helps orchestrate every virtual workload running in your infrastructure. Before choosing a hypervisor platform for your virtualization design, assess its scalability based on your current and future IT workloads, how well it would fit into the software space to provide software-defined services, if it can be operated by the management layer, whether it provides adequate computing features, and if it has the necessary performance features for your applications operating in the virtual environment.

Since the virtualization host requires physical hardware, you will always want to place the highest number of virtual machines on a host as is reasonably possible.

You might want to look at your organization's historical growth rate as well as plans for any expansion. For example, if your business plans to open another branch office, you should be able to do it easily by adding another virtualization host in the hypervisor layer. Conversely, if you plan to decommission a business unit, you should be able to scale down easily. The degree of flexibility in scaling up and down at the hypervisor layer is an important factor to consider when choosing a management tool.

Also, it is a good idea to think about the availability of workloads in your virtualization design. When an update to your virtualization platform is released, it will be necessary to upgrade the current virtualization hosts. It's essential that you provide availability to virtualized workloads running on the virtualization hosts during that upgrade. Hosts must be clustered to achieve high availability, and virtualization platforms need to provide failover capabilities to ensure workloads can be moved to another host before upgrading.

But don't get locked in. There are plenty of virtualization vendors in the market. VMware continues to dominate virtualization, but many organizations plan to implement a combination of VMware's vSphere and the less-expensive Microsoft Hyper-V.

But is this a good approach? Some computing features are supported only by certain virtualization vendors. As an example, both VMware and Hyper-V have the SR-IOV feature, which boosts the performance of resource intensive applications. But VMware does not support live migration of VMs, and Hyper-V does not support the SR-IOV feature for Linux VMs.

Another virtualization design issue to consider is application support. Your line-of-business applications might run successfully on the virtualization hosts you deploy now, but what if they require an update? You might need to talk to your application vendors to see what they have planned and whether those changes will affect where you host particular applications.

Many application vendors are approaching newer developments with containerization in mind. Thus, you might want to deploy servers/virtualization hosts that support application containerization.

An additional benefit to deploying virtualization hosts from different vendors is that you will have choices if at some point your organization decides to implement private cloud software.

Not all public cloud providers support workloads from all virtualization vendors. For example, if you host your applications on VMs running on Hyper-V and plan to move to the Amazon EC2 public cloud, you would need to convert those VMs to be supported by the Xen-based Amazon EC2.

Two of the most important services offered by a virtualization host are storage and networking.

Storage services provide the necessary support for storage protocols, storage arrays and a storage network. Your selection of a virtualization platform will have a direct effect on the physical storage layer. For example, if the storage services implemented in a virtualization host does not provide necessary support for storage protocols and storage arrays, your underlying physical storage infrastructure will be unusable -- your whole infrastructure might need to be upgraded.

You should choose a virtualization host that has features such as online expansion of storage without downtime, integration with the physical storage layer to support both block-based and file-based storage, greater capacity for virtualized workloads, among others. Don't worry about running out of space. You can always add storage support to the virtualized workloads at a later stage, but the challenge would be to get support from the virtualization host. If the host does not support storage expansion on the fly, management would be difficult.

The networking service, meanwhile, must be able to provide necessary support for protocols to manage the physical networking infrastructure along with providing isolation support for VMs operating on the virtualization host.

A converged networking architecture is cost-effective and provides flexibility in management. A traditional approach is to build a highly available and redundant network by planning for redundancy at each networking component. For example, many organizations deploy a dedicated Ethernet network with separate switches, network paths and cables. While this might be effective in the present, it limits the ability to efficiently adapt to future networking changes. Because the redundancy is controlled at the physical networking layer, it adds administrative overhead in managing the networking components.

Most virtualization vendors support converged network architecture, in which the traffic for storage and networking runs over the same switch and cables. In a converged architecture, you would require a single network adapter to support different traffic such as cluster, VMs, management and so on.

It is important to understand, however, that in the case of converged architecture, there needs to be traffic isolation. This is achievable by providing some set of quality of service functions.

Next Steps

The design, planning and deployment of a virtual server infrastructure

Find out where virtualization vendors are falling short

How to manage your virtual infrastructure

Dig Deeper on Introduction to virtualization and how-tos