The playing field for server virtualization has become much more crowded over the last few years. Competition is always good for a market as more choices always push vendors into providing better products at more competitive prices. It can be very time consuming to digest each vendor's marketing materials to come to the right solution for your organization. This checklist provides a list of the main considerations and basic differences between the technologies to provide a starting point for technology evaluation. The three main technologies discussed in this analysis are: hardware virtualization, para-virtualization and OS virtualization.
Technology Overview
Hardware Virtualization
Hardware virtualization is probably the most commonly known technology, including products from VMware, Parallels and Microsoft. The technologies are designed to support multiple types of OSs on a single server and are characterized by technology that virtualizes hardware resources in order to manage and dedicate them to Virtual Machines on the server.
Para-Virtualization
Para-virtualization is similar to hardware emulation because in concept it is designed to support multiple OSs on a single server. The only implementation of this technology today is the Xen open source project. Xen customizes the operating system to provide more efficient processing and lower overhead which results in better performance than hardware emulation.
Os Virtualization
OS virtualization is a third approach to virtualization and has been implemented by SWsoft's Virtuozzo and Sun's Solaris Containers. The concept is based on a single OS instance, which provides a leaner more efficient architecture and a single OS per server for management and updates. The main limitation is that it does not support multiple OSs on the same server so it is intended for organizations that are consolidating or deploying multiple virtual servers on a single Linux, Windows or Sun physical server; Solaris Containers obviously supports Solaris while Virtuozzo supports both Linux and Windows. SWsoft Virtuozzo for Linux product does support multiple Linux distributions in the guest virtual servers.
Ten Considerations
#1Management Tools
Many organizations undertake virtualization projects because they can quantify the hard costs of hardware sitting in data centers at 15-20% utilization rates. While hardware and environmental costs are considerable, the administrative costs for managing servers are the largest cost component. Administrative tasks include OS and application updates and patches, backups, installations and provisioning.
The management tools available for each solution vary widely. Some solutions have very few tools available and may be extremely limited. There are many excellent toolsets available with the more mature products.
The process of moving a physical server to a virtual server can be daunting task, particularly if the server is critical to the business. Most of the vendors have tools that help in the migration process, and there are some external vendors that have provided tools for moving not only from physical to virtual, but between virtual environments and even from virtual back to physical. The ability to evaluate a physical server for resource utilization trends to predict and configure an adequate virtual server is rated as the most important component for physical to virtual transition, even above the simple requirement of moving data reliably to a virtualized server. The resource trending capability is only available in a few select P2V tools.
#2. Virtualization Level
Para-virtual and hardware virtualization solutions virtualize the technology from the hardware up to the OS. OS virtualization sits on top of the OS, virtualizing a single instance on a server and taking advantage of all of the underlying hardware technology. Hardware virtualization looks exactly like a dedicated server, ten servers consolidated onto one will still have ten plus one underlying OS.
OS virtualization requires only a single OS instance, although in certain cases OS variances are supported. With the ease of deploying virtualized servers, hardware virtualization sites have actually seen an increase in the number of virtualized servers, beyond what would have been approved on a single server basis. With the complete OS and application structure of each virtualized server, the management workload for IT teams has gotten even larger, rather than decreased with these types of virtualization solutions. OS virtualization deploys on a single OS per server, limiting it to a single OS type, but in the case of management this is quite beneficial.
#3. Performance
Why is processing overhead important? It affects the performance of the application, and ultimately the end-user's satisfaction. Only non-production or non-critical applications should be loaded in a virtualization infrastructure that is high in processing overhead. The processing overhead of virtualization solutions ranges from 1% to as much as 60% between the different product offerings; the virtualized application could perform at near native performance or so slowly it is unacceptable by the end-user. The products in each virtualization technology category vary largely for performance, but generally, the hardware virtualization has the most performance degradation, and the OS virtualization has the closest to native performance.
#4. Density
Many customer virtualization projects are a result of examining server utilization rates which typically are as low as 5-15%. Raising server utilization rates can considerably reduce total cost of ownership of data center resources. Often the new servers that house the consolidated servers are robust with high processing power and capacity, and a single additional virtualized server makes a fast impact on the return on investment analysis. Some virtualization solutions have limitations on the number of virtualized servers allowed on a single server, and other solutions cannot support many virtualized servers based on their architecture and high overhead.
OS virtualization technologies are unique in addressing utilization. There are no limitations on the number of virtualized servers allowed on a single physical server, and the efficient architecture enables many more virtual servers to be supported with adequate processing power on a single physical server which can deliver significantly higher actual "useful" utilization (utilization that does not include overhead as part of it) and associated maximum performance/price ratios and ROI.
#5. Platform Support
Virtualization technologies abstract the virtual servers from the underlying hardware. However, that does not mean that any hardware is supported by the virtual infrastructure. Hardware virtualization and para virtualization in particular have to support each piece of hardware, from straightforward CPU chips to obscure video cards. OS virtualization technologies by definition are built on top of standard OSs and therefore automatically support all of the hardware that the OS supports making them easier to deploy with fewer conflicts. In addition to baseline hardware support, some technologies are able to leverage full hardware technology capabilities inside of virtual machines including full SMP support, 6 bit processing, up to 16 CPUs and up to 6 GB of RAM.
#6. Migration
One of the largest benefits of virtualizing a server is abstracting it from the hardware layer and enabling it to move between servers. Migration capabilities allow cloning or moving a virtualized server from one physical server to another. The benefits of migration include:
Eliminating downtime for hardware upgrades or issues
Avoiding downtime as a result of software changes
Moving virtualized server to a more or less powerful server as requirements change
Many virtualization solutions have cloning or migration capabilities but they vary considerably in capabilities, restrictions and cost structures. A very high-end solution that allows zero-downtime migration is extremely costly and requires a SAN, while another available solution provides near-zero downtime on any networked server as a part of the basic software package. Assess the importance of migration and how it will be used to determine the best it for your environment.
#7. Resource Management
The three technology categories approach resource allocation in different ways. Hardware virtualization and para-virtualization virtualize hardware resources for dissemination to each of the residing virtual servers. The products have varying levels of flexibility for assigning and changing resources. Some resources are dynamic and able to change in real-time, while others require a server reboot or at least virtual server interruption. These two technologies actually assign a virtualized hardware resource to a virtual server; virtualized resources can have limitations such as limited CPU and memory that can be assigned to a single virtual machine
OS virtualization has flexible resource management. Resources may be changed in real-time without interrupting the application or the virtual server. SWsoft in particular allows bursting, which allows unclaimed resources on the server to be used by any virtualized server requiring resources.
#8. Isolation & Security
Each of the technologies has a different approach to isolation and security. The most basic component of a virtualization solution is partitioning. Each virtual machine must be completely isolated so that processes, DLLs, and applications do not affect others on the same server.
The technologies change access points and different components of a regular server so attacks are less likely to be a problem for virtualized servers. Along the same lines of isolation, security between the virtual machines on the same server is also critical. Each of the technologies has a different approaches to these areas, and with the exception of XEN and Solaris Containers, have been tested extensively by enough customers to validate effective levels of isolation and security.
#9. Intended Virtualization Deployment
The top three server virtualization deployments are testing and development, server consolidation, and disaster recovery.
Testing and development organizations were the first to deploy virtualization technologies because the need for developers to use many different operating systems made it quite difficult to manage the associated costs. For development organizations that need different operating systems, one strong option is hardware virtualization. Para-virtualization has plans to support multiple operating systems but hasn't launched that capability. SWsoft's Virtuozzo for Linux does support different Linux distributions on the same server, but does not mix OS families. For testing organizations that need to be able to quickly create many servers for stress testing, most of the technologies would be sufficient although some have much faster provisioning capabilities.
Server consolidation (involving existing applications and/or new applications) is typically done on servers in production supporting live applications and data. The two most important considerations for server consolidation are processing overhead and server utilization. The best technology suited for server consolidation is OS virtualization because it has low overhead and servers it enables has therefore significantly higher utilization.
Disaster recovery solutions are a very common virtualized server deployment. Many organizations find that fully available and redundant systems are too costly for disaster recovery. Virtualized servers that can be activated, booted and made primary servers in a limited amount of time are rapidly becoming the cost-effective and more manageable disaster recovery solutions of choice. There are differences in the technologies regarding boot time and there are other tools and components that may be purchased to supplement server availability.
Technology Overview
Hardware Virtualization
Hardware virtualization is probably the most commonly known technology, including products from VMware, Parallels and Microsoft. The technologies are designed to support multiple types of OSs on a single server and are characterized by technology that virtualizes hardware resources in order to manage and dedicate them to Virtual Machines on the server.
Para-Virtualization
Para-virtualization is similar to hardware emulation because in concept it is designed to support multiple OSs on a single server. The only implementation of this technology today is the Xen open source project. Xen customizes the operating system to provide more efficient processing and lower overhead which results in better performance than hardware emulation.
Os Virtualization
OS virtualization is a third approach to virtualization and has been implemented by SWsoft's Virtuozzo and Sun's Solaris Containers. The concept is based on a single OS instance, which provides a leaner more efficient architecture and a single OS per server for management and updates. The main limitation is that it does not support multiple OSs on the same server so it is intended for organizations that are consolidating or deploying multiple virtual servers on a single Linux, Windows or Sun physical server; Solaris Containers obviously supports Solaris while Virtuozzo supports both Linux and Windows. SWsoft Virtuozzo for Linux product does support multiple Linux distributions in the guest virtual servers.
Ten Considerations
#1Management Tools
Many organizations undertake virtualization projects because they can quantify the hard costs of hardware sitting in data centers at 15-20% utilization rates. While hardware and environmental costs are considerable, the administrative costs for managing servers are the largest cost component. Administrative tasks include OS and application updates and patches, backups, installations and provisioning.
The management tools available for each solution vary widely. Some solutions have very few tools available and may be extremely limited. There are many excellent toolsets available with the more mature products.
The process of moving a physical server to a virtual server can be daunting task, particularly if the server is critical to the business. Most of the vendors have tools that help in the migration process, and there are some external vendors that have provided tools for moving not only from physical to virtual, but between virtual environments and even from virtual back to physical. The ability to evaluate a physical server for resource utilization trends to predict and configure an adequate virtual server is rated as the most important component for physical to virtual transition, even above the simple requirement of moving data reliably to a virtualized server. The resource trending capability is only available in a few select P2V tools.
#2. Virtualization Level
Para-virtual and hardware virtualization solutions virtualize the technology from the hardware up to the OS. OS virtualization sits on top of the OS, virtualizing a single instance on a server and taking advantage of all of the underlying hardware technology. Hardware virtualization looks exactly like a dedicated server, ten servers consolidated onto one will still have ten plus one underlying OS.
OS virtualization requires only a single OS instance, although in certain cases OS variances are supported. With the ease of deploying virtualized servers, hardware virtualization sites have actually seen an increase in the number of virtualized servers, beyond what would have been approved on a single server basis. With the complete OS and application structure of each virtualized server, the management workload for IT teams has gotten even larger, rather than decreased with these types of virtualization solutions. OS virtualization deploys on a single OS per server, limiting it to a single OS type, but in the case of management this is quite beneficial.
#3. Performance
Why is processing overhead important? It affects the performance of the application, and ultimately the end-user's satisfaction. Only non-production or non-critical applications should be loaded in a virtualization infrastructure that is high in processing overhead. The processing overhead of virtualization solutions ranges from 1% to as much as 60% between the different product offerings; the virtualized application could perform at near native performance or so slowly it is unacceptable by the end-user. The products in each virtualization technology category vary largely for performance, but generally, the hardware virtualization has the most performance degradation, and the OS virtualization has the closest to native performance.
#4. Density
Many customer virtualization projects are a result of examining server utilization rates which typically are as low as 5-15%. Raising server utilization rates can considerably reduce total cost of ownership of data center resources. Often the new servers that house the consolidated servers are robust with high processing power and capacity, and a single additional virtualized server makes a fast impact on the return on investment analysis. Some virtualization solutions have limitations on the number of virtualized servers allowed on a single server, and other solutions cannot support many virtualized servers based on their architecture and high overhead.
OS virtualization technologies are unique in addressing utilization. There are no limitations on the number of virtualized servers allowed on a single physical server, and the efficient architecture enables many more virtual servers to be supported with adequate processing power on a single physical server which can deliver significantly higher actual "useful" utilization (utilization that does not include overhead as part of it) and associated maximum performance/price ratios and ROI.
#5. Platform Support
Virtualization technologies abstract the virtual servers from the underlying hardware. However, that does not mean that any hardware is supported by the virtual infrastructure. Hardware virtualization and para virtualization in particular have to support each piece of hardware, from straightforward CPU chips to obscure video cards. OS virtualization technologies by definition are built on top of standard OSs and therefore automatically support all of the hardware that the OS supports making them easier to deploy with fewer conflicts. In addition to baseline hardware support, some technologies are able to leverage full hardware technology capabilities inside of virtual machines including full SMP support, 6 bit processing, up to 16 CPUs and up to 6 GB of RAM.
#6. Migration
One of the largest benefits of virtualizing a server is abstracting it from the hardware layer and enabling it to move between servers. Migration capabilities allow cloning or moving a virtualized server from one physical server to another. The benefits of migration include:
Eliminating downtime for hardware upgrades or issues
Avoiding downtime as a result of software changes
Moving virtualized server to a more or less powerful server as requirements change
Many virtualization solutions have cloning or migration capabilities but they vary considerably in capabilities, restrictions and cost structures. A very high-end solution that allows zero-downtime migration is extremely costly and requires a SAN, while another available solution provides near-zero downtime on any networked server as a part of the basic software package. Assess the importance of migration and how it will be used to determine the best it for your environment.
#7. Resource Management
The three technology categories approach resource allocation in different ways. Hardware virtualization and para-virtualization virtualize hardware resources for dissemination to each of the residing virtual servers. The products have varying levels of flexibility for assigning and changing resources. Some resources are dynamic and able to change in real-time, while others require a server reboot or at least virtual server interruption. These two technologies actually assign a virtualized hardware resource to a virtual server; virtualized resources can have limitations such as limited CPU and memory that can be assigned to a single virtual machine
OS virtualization has flexible resource management. Resources may be changed in real-time without interrupting the application or the virtual server. SWsoft in particular allows bursting, which allows unclaimed resources on the server to be used by any virtualized server requiring resources.
#8. Isolation & Security
Each of the technologies has a different approach to isolation and security. The most basic component of a virtualization solution is partitioning. Each virtual machine must be completely isolated so that processes, DLLs, and applications do not affect others on the same server.
The technologies change access points and different components of a regular server so attacks are less likely to be a problem for virtualized servers. Along the same lines of isolation, security between the virtual machines on the same server is also critical. Each of the technologies has a different approaches to these areas, and with the exception of XEN and Solaris Containers, have been tested extensively by enough customers to validate effective levels of isolation and security.
#9. Intended Virtualization Deployment
The top three server virtualization deployments are testing and development, server consolidation, and disaster recovery.
Testing and development organizations were the first to deploy virtualization technologies because the need for developers to use many different operating systems made it quite difficult to manage the associated costs. For development organizations that need different operating systems, one strong option is hardware virtualization. Para-virtualization has plans to support multiple operating systems but hasn't launched that capability. SWsoft's Virtuozzo for Linux does support different Linux distributions on the same server, but does not mix OS families. For testing organizations that need to be able to quickly create many servers for stress testing, most of the technologies would be sufficient although some have much faster provisioning capabilities.
Server consolidation (involving existing applications and/or new applications) is typically done on servers in production supporting live applications and data. The two most important considerations for server consolidation are processing overhead and server utilization. The best technology suited for server consolidation is OS virtualization because it has low overhead and servers it enables has therefore significantly higher utilization.
Disaster recovery solutions are a very common virtualized server deployment. Many organizations find that fully available and redundant systems are too costly for disaster recovery. Virtualized servers that can be activated, booted and made primary servers in a limited amount of time are rapidly becoming the cost-effective and more manageable disaster recovery solutions of choice. There are differences in the technologies regarding boot time and there are other tools and components that may be purchased to supplement server availability.
No comments:
Post a Comment