Why is virtualization so important? The short answer is that virtualization enables business to lower their technology Total Cost of Ownership (TCO) while increasing their Return on Investment (ROI). This is done primarily through the multitude of server consolidation projects proliferating every organization's infrastructure in some fashion today. What do the top UNIX vendors have to offer with respect to virtualization? IBM offers PowerVM, formerly referred to as Advanced Power Virtualization. HP offers their Virtual Server Environment™, which supports both their Integrity and HP9000 server base. Sun offers a new name, the xVM server, along with their mature container based technology. This article, updated to include all of the 2009 innovations from each vendor, looks at the features of each of these technologies and contrast and compare them with what you are most familiar with, PowerVM.
This section discusses HP's Virtual Server Environment (VSE) as well as vPars, nPartitions, and IVMs.
HP's VSE is the front-end for HP's overall virtualization strategies. VSE itself contains several elements; including a workload management tool and advanced manageability software. The workload management feature allows one to draw from spare capacity, which is available on a pay-per-use basis. This is similar in many respects to the IBM® Capacity on Demand. Further, HP Global Workload Manager (gWLM) provides intelligent policy engines which allow for automatically adjusting the workloads to increase server utilization. It also comes with a product called HP Capacity Advisor which helps you simulate various workload sceneries - which is similar in many ways to IBM's System workload Estimator (WLE), which ships with their System Planning Tool. The VSE also allows one to partition in several ways, with hard and soft partitions, as well as HP Virtual machines, partitions and secure resource partitions. HP describes their virtualization/partitioning solutions as their partitioning continuum. Available partitioning includes:
- nPartitions offers true electrical isolation, as well as cell granularity. nPartitions are based on hard partitions, which were first introduced by HP in 2000 and offer greater fault isolation than soft partitions. nPartitions allow you to service one partitions while others are on-line, which is similar in to IBM's logical partitioning, though systems require a reboot when moving cells from one partition to another. Its' important to note that while nPartitions support HP-UX, Windows, VMS and Linux, they only do so on their Itanium processor not on their HP9000 PA Risc architecture. Partition scalability also depends on the OS running in the nPartiiton. Another downside is that entry level servers do not support this technology -- only HP9000 and Integrity High End and Midrange servers. They also do not support moving resources to and from other partitions without a reboot.
- vPars are separate operating system instances on the same nPartition or server. This offering allows one to dynamically move either CPU or memory resources between partitions as the workload requirements change. They also allow one the ability to run multiple copies of HP-UX on the same hardware. Using vPars, one can move CPUs to other running partitions, similar to PowerVM and the System p. What you can't do with vPars is share resources because there is no virtualized layer in which to manage the interface between the hardware and the operating systems. This is one reason why performance overhead is limited -- a feature that HP will market without discussing its clear limitations. The scalability is also restricted as to the nPartition that the vPar is created on, the max being an 8 cell limitation. There is also limited workload support; resources cannot be added or removed. Finally, vPars also don't allow one to share resources between partitions nor can you dynamically allocate processing resources between partitions.
- Integrity Virtual Machines (IVMs) are separate guest instances on the same nPartition with different operating system versions and users in a fully isolated environment. First introduced in 2005, they allow for a partition to have its own full copy of the operating system. Within this copy, the virtual machines share the resources. This is similar in many ways to IBM's PowerVM as there is granularity for CPUs and I/O device sharing. The granularity actually beats PowerVM as one can have up to 1/20 of a micropartitions; the System p allows for only 1/10 of a CPU. The downside here is scalability. With HP's virtual machines there is a 4 CPU limitation and RAM limitation of 64GB. Reboots are also required to add processors or memory. There is also no support for features such as uncapped partitions or shared processor pools. Finally, its important to note that HP PA RISC servers are not supported; only Integrity servers are supported. Virtual storage adapters also cannot be moved, unless the virtual machines are shutdown. You also cannot dedicate processing resources to a single partitions.
- Resource Partitions are created from HP Process resource manager and allow resources for specific applications within a single operating systems. This is also a resource management tool which allows one to manage CPU, memory and disk bandwidth. It allows minimum allocations of CPUs and even allows one to cap a CPU by group. In many ways this is similar to a Solaris containers or AIX WPARs in that it allows one to have several applications reside in one copy of HP-UX. This feature has been available since HP-UX 9.0.
New features for HP-UX in 2009
HP-UX now allows you to have online workload migration, available on Integrity Virtual machines only, with release 4.1. This is similar to AIX's Live Application mobility. The March 2009 release, Version HP-UX 11iv3, also provides several enhancements, including the new parconfig command. This provides help for the recommended configuration of nPartitions. It also provides support for accelerated virtual I/O (AVIO) for networking on Windows and Linux guests, which gives clients up to a two-fold improvement in throughput over older virtualized storage3 and integrity solutions, as well as a 60% reduction in service demand. It consists of two components: an Integrity VM host and a VM Guest component.
Now that we've looked at HP virtualization, let's take a close look at Sun's xVM, along with containers, hardware partitioning, and logical domains.
Sun made some bold changes during 2008, the most important being the release of xVM. Sun's xVM is actually a mix of four separate technologies, the first of which was introduced in February of 2008: xVM Ops Center. xVM Ops Center's most important function is that it provides a single console for the management of all devices in a virtualized environment. It further allows for the discovery and management of all physical and virtual assets. The other three technologies include xVM server, VirtualBox and VDI software. The xVM server is a hypervisor based solution, which is based on Xen, running under Solaris on their x86 computers. On SPARC it is still based on logical domains. Containers and LDOMs now are part of the umbrella named xVM.
One new feature, introduced in the update 10/08 of Solaris, allows users to migrate workloads among Solaris systems and reduce the administrative overhead required to move containers between unlike configurations. This allows Solaris 8 and 9 containers to be able to run multiple Solaris 8 or 9 environments on one SPARC system. In release 10/09, their latest update, a new feature allows for parallel patch installation of virtual Solaris containers.
Sun is also claiming features such as predictive self-healing, which has long been available on the System p. VirtualBox is desktop virtualization software geared toward developers, allowing for many different types of operating systems to run on top of an existing desktop operating system. It supports Windows, Linux, Mac, and Solaris hosts. Sun did not develop this product, but acquired open source desktop virtualization vendor Innotel, which develops the product.
Sun also offers hardware partitioning, which allows their high-end servers to be divided into four-process partitions. These are referred to as Sun DSD's. In many ways this technology is similar to IBM's logical partitioning, which was introduced in 2001, with no real virtualization capabilities. It is also similar to HP's hardware partitioning, only high-end and midrange servers support this technology. You cannot share resources between partitions nor can you dynamically allocate processing resources between partitions. You also cannot share any I/O. It's the LDOMs that actually allow virtualization. Introduced in 2007 on their SunFire line of servers, LDOMs enable customers to run multiple operating systems simultaneously. While LDOMs solved a huge deficiency in Sun's virtualization strategy, it has many inherent flaws:
- Scalability -- Only eight CPUs and 64 GB RAM on one machine
- Server-line -- Only low-end Sparc servers are supported
- Limited micro-partitioning -- Four partitions on T1, 8 on T2
- No Dynamic allocation between partitions
For years, Sun's answer to everything was containers or zones. Containers and zones give you the ability to run multiple virtual operating system instances inside only one kernel. They are used to provide an isolated and secure environment for running applications, which are created from a single instance of Solaris.
Simply put, they had it and IBM did not. Sun can no longer make this claim. IBM now offers AIX workload partitions (WPARs), which is their answer to containers. IBM WPARs have all the features of containers plus additional innovations:
- Application WPARS. A workload partition that allows a single process or application to run inside of it, like a wrapper. Unlike a standard WPAR, it is temporary and stops when the application ends.
- Live Application Mobility. This feature allows you to move running WPARs to other partitions without any user disruption. With Solaris, you need to shut off the zone first. The feature also allows you to perform multi-system workload balancing, which can be used to conserve data center costs.
While Sun appears to be moving in the right direction with xVM, it still needs to standardize its offerings more. There is also still too much confusion around their offerings and virtualization roadmap.
IBM has a 40-plus year history of virtualization. No other vendor can come close to making this claim. The fact is that virtually (pardon the pun) everything they have implemented on the midrange - they have already done on the mainframe. They offer one virtualization strategy, PowerVM, unlike the myriad of solutions available from Sun or HP. The technology itself uses a hypervisor based solution (which IBM has finally implemented though Xen, but only on their x86 platform), which sits between the operating system and the hardware. PowerVM is a combination of hardware and software which accounts for IBM Systems p virtualization strategy.
The technology that makes up PowerVM includes:
- Micropartition and Shared processor pools. Micropartioning allows you to slice up pieces of your CPUs into virtual partitions. At the same time, it allows for the sharing of CPU, RAM and I/O. You can carve your partition with up to 1/10 of a CPU. Using a feature called uncapped partitions, you can even exceed the amount of hardware that you configure on your partition, your entitled capacity (EC), which is an important feature in environments where activity fluctuates. This workload management is all done automatically, without requiring the usage of speciality workload management tools. IBM has since retired their workload management tool, Partition Load Manager (PLM), recognizing that it was the automation inherent in its shared processor pool strategy, which really captivated the audience.
- VIO Servers. These are special partitions which allow one to service resources to VIO clients. The servers own the actual resources, which are network adapters or disk I/O. These partitions save money and provide flexibility by allowing partitions to shared I/O resources. Shared Ethernet and virtual SCSI are the solutions which allow for sharing network and disk I/O.
During the past year, IBM has changed their virtualization nomenclature from Advanced Power Virtualization to PowerVM. In the process. it has added several significant features to their virtualization product line:
- Live Partition Mobility. This feature, introduced with their Power6 architecture, allows you to move running AIX or Linux partitions from one physical server to another.
- Lx86. This recent innovation allows one to run x86 Linux applications that were not specifically ported to the Power Architecture directly on a Linux partition without a recompile.
- Shared Dedicated Capacity. This feature allows one to user spare CPU cycles from dedicated processor partitions towards the shared processor pool.
- Integrated Virtualization Manager (IVM) -- This is a browser-based tool that provides the option of not having to have a dedicated hardware management console (HMC) from which to manage Virtualization resources.
Active Memory Sharing (AMS) is a new feature introduced in 2009. This feature, available on Power6, is the final piece of the puzzle for PowerVM on Power6. It allows for the sharing of RAM, similar to how users have been able to share and micropartion CPUs, which in turn allows for the increased use of memory through the Power hypervisor without having to do a DLPAR operation. AMS makes it possible to use spare idle memory not being used by other LPARs toward the distribution of LPARs. This empowers customers to optimize their RAM configuration and make sure that resources do not sit idly by while their brethren LPARs may be in dire need of assistance.
How does AMS accomplish this? It does so by allowing for a shared memory pool, which is virtualized through the Power hypervisor. There is no binding of physical memory to a partition's logical memory in this environment; in fact, the total logical memory of all shared memory partitions are allowed to exceed the real physical memory allocated to the pool. This results in logical memory being oversubscribed, which is okay because the hypervisor takes care of all the logistics. Essentially, the hypervisor backs excess logical memory using paging devices. It does this through a special paging VIOs partition. AIX still manages its own paging device, which helps the hypervisor manage the over subscription. The hypervisor actually asks the OS for help and the OS steals aged pages, saves the contents to paging devices and loans them out. This feature is enabled through a framework called collaborative memory management, which is a new feature of the OS that allows the OS to page out contents and loan pages to the hypervisor. AMS also provides a great deal of flexibility because it can be disabled, making the hypervisor paging device the only device that needs to be optimized. This is only available through AIX and System i, not Linux. It should also be said that neither HP nor Sun offers anything remotely close to AMS.
This article discussed the offerings of the top UNIX vendors and compared them to IBM. It showed how most of the features available from HP and SUN are already implemented by IBM on a much grander scale. It also showed how IBM solutions are more scalable and mature. While IBM continues to innovate and improve on their offerings, it seems that the other vendors continue to just play catch up. While HP has more offerings and a more mature set of a virtualization feature sets than Sun, it still lacks the scalability and flexibility of IBM's PowerVM. While Sun has a new name and has made some bold changes, they still have a long way to go.
During 2009, while Solaris added patch management to virtualization processors and HP-UX added support for on-line workload management (integrity machines only), IBM added Active Memory Sharing to its mix, making IBM the only vendor that provided a major innovation in its virtualization strategy.
Learn
-
PowerVM Virtualization on IBM System p: Introduction and Configuration Fourth Edition:
Read this Redbook for an introduction to PowerVM virtualization
technologies on IBM System p servers.
-
"An Introduction to Virtualization"
by Amit Singh is a great introduction to virtualization and the varying
implementations that are available. In addition to Linux, this article
also covers other operating system virtualization (Windows, Solaris) and
other means of virtualization (such as network stack virtualization)
-
Xen is an open source
virtual machine monitor (hypervisor) developed by XenSource. Xen uses what
is known as paravirtualization, which typically requires guest operating
system modification, but Xen can take advantage of virtualization CPUs to
support unmodified guest operating systems.
-
New to AIX and UNIX?:
Visit the "New to AIX and UNIX" page to learn more about AIX and UNIX.
-
AIX Wiki:
A collaborative environment for technical information related to AIX.
-
Optimizing AIX 5L performance: Tuning network performance, Part 1
(Ken Milberg, developerWorks, November 2007): Read Part 1 of a three-part
series on AIX networking, which focuses on the challenges of optimizing
network performance.
- For a three-part series on memory tuning
on AIX, see
Optimizing AIX 5L performance: Tuning your memory settings, Part 1
(Ken Milberg, developerWorks, June 2007).
- Read the IBM whitepaper
Improving Database Performance with AIX concurrent I/O.
- Learn about
AIX memory affinity support
from the IBM System p and AIX InfoCenter.
- Get ready to take
Test 234: AIX 5L Performance and Systems Tuning
as part of IBM's certification program.
- Learn about IBM's
Power Architecture: High-Performance Architecture with a History.
- Read
Power to the People; A history of chip making at IBM
(developerWorks, December 2005) for coverage of IBM's power architecture.
-
CPU Monitoring and Tuning
(Wayne Huang et al. developerWorks, March, 2002): Read this article to
learn how standard AIX tools can help you determine CPU bottlenecks.
- For a comprehensive guide about the
performance monitoring and tuning tools that are provided with AIX 5L
Version 5.3, see the IBM Redbook
AIX 5L Practical Performance Tools and Tuning Guide.
- Learn what features you can benefit from
in AIX 5L Version 5.3, in
AIX 5L Version 5.3: What's in it for you?
(developerWorks, June 2005).
-
Operating System and Device Management
from IBM provides users and system administrators with complete
information that can affect your selection of options when performing such
tasks as backing up and restoring the system, managing physical and
logical storage, and sizing appropriate paging space.
-
The AIX 5L Differences Guide Version 5.3 Edition
(developerWorks, December 2004) redbook focuses on the differences
introduced in AIX 5L Version 5.3 when compared to AIX 5L Version 5.2.
-
The AIX and UNIX developerWorks zone
provides a wealth of information relating to all aspects of AIX systems
administration.
-
Open source:
Visit the developerWorks Open source zone for extensive how-to
information, tools, and project updates to help you develop with open
source technologies, and use them with IBM products.
-
developerWorks technical events and webcasts:
Stay current with developerWorks technical events and webcasts.
-
Podcasts:
Tune in and catch up with IBM technical experts.
Discuss
- Follow
developerWorks on Twitter.
- Get involved in the
My developerWorks community.
- Participate in the AIX and UNIX forums:
- AIX Forum
- AIX Forum for developers
- Cluster Systems Management
- IBM Support Assistant Forum
- Performance Tools Forum
- Virtualization Forum
- More AIX and UNIX Forums
Ken Milberg is a technology writer and site expert for Techtarget.com and provides Linux technical information and support at Searchopensource.com. He is also a writer and technical editor for IBM Systems Magazine, Power Systems edition, and a frequent contributor of content for IBM developerWorks. He holds a bachelor's degree in computer and information science, as well as a master's degree in technology management from the University of Maryland University College. He is the founder and group leader of the N.Y. Metro POWER-AIX/Linux Users Group. Through the years, he has worked for both large and small organizations and has held diverse positions from CIO to senior AIX engineer. He is currently president and managing consultant for UNIX-Linux Solutions, is a PMI-certified Project Management Professional (PMP), an IBM Certified Advanced Technical Expert (CATE), and is also IBM SCon certified.





