IBM®
Skip to main content
    Country/region [select]      Terms of use
 
 
    
     Home      Products      Services & solutions      Support & downloads      My account     
 
developerworks > My developerWorks >  Dashboard > PowerVM wiki > Home > VirtualTechnical
developerWorks
Log In   View a printable version of the current page.
Overview Connect Spaces Forums Wikis
VirtualTechnical
Added by nagger, last edited by jrathbun@us.ibm.com on May 30, 2007  (view change)
Labels: 
(None)

Virtualization Technical

The postings on this site solely reflect the personal views of the authors and do not necessarily represent the views, positions, strategies or opinions of IBM or IBM management.

Virtualisation Why and What is that all about? A brief introduction to POWER5 Virtualisation

Virtualisation has become one of the hot topics of 2005 and looks to continue as a key computing industry technology and a new way of life for years to come. Not only is it interesting technology for the technically minded to get to grips with but it also saves money - so the business minded are very interested too. On a more practical level, it saves system management time, increases flexibility and allows a quick reaction time to changing IT requirements, so everyone is happy! Unfortunately, the name virtualisation has become greatly over used, over hyped but only a little understood.
This article is written primarily for the solution architect, platform designer, senior systems administrator and implementer perspective, although more business oriented people for example CTO, CIO, business managers, salesmen and sales managers will fully understand the first section and the final Conclusions section cover the bottom line.
This article takes POWER5 virtualisation as the example of the general virtualisation principles as it is an advanced implementation and already proved ready for production use on both small and very large scale hardware. The same is not true for some other virtualisation implementations. This article aims to address the confusions over virtualisation by explaining and exploring virtualisation from three perspectives or different view points. These are

  • Section 1 Why Virtualisation and what does it give me?
    • What is the IT industry challenges that virtualisation addresses?
    • How is it saving money, reducing people time and increasing flexibility?

*Section 2 Logically, what is Virtualisation?

    • The model that can help you visualise the role of virtualisation
    • How this is different to classic computer systems

Note: By Classic computer system we mean one operating system (OS) on one physical machine (hardware) running one or many applications, middleware and/or databases.

  • Section 3 Physically, what is Virtualisation?
    • The components used in POWER5 to achieve virtualisation
    • How they work together and inter-operate

While there are different sorts of virtualisation from different companies, this article is concerned with the virtualisation that is a fundamental part of the POWER5 based machines and specifically the pSeries and OpenPower ranges from IBM. Most of the concepts and a lot of the technology behind POWER5 virtualisation is originally from the IBM mainframe products and has been implemented and tried and tested for years in critical production environments. This means pSeries and OpenPower customers can benefit from this mature technology from IBMs development labs and the IBM technical specialists.

This article is written primarily for the solution architect, platform designer, senior systems administrator and implementer perspective, although more business oriented people for example CTO, CIO, business managers, salesmen and sales managers will fully understand the first section and the final conclusions cover the bottom line.

Section 1 Why virtualisation and what does it give me?

Definition:

Virtualisation separates the Operating System and all the applications it supports from the native underlying hardware, so there no longer needs to be a one to one link between OS and machine. This opens up many new opportunities for optimising the use of hardware and reducing costs and reducing complexity by co-hosting multiple systems on one machine and sharing resources for higher performance handling peaks in the different workloads of each system.

Overview

The following two sections detail the logical and physical components of POWER5 virtualisation but we need to introduce a few concepts in this first section. Briefly, virtualisation allow multiple classic computer systems to run on one machine and, if necessary, for these systems to even be moved between machines as they are not tied to particular hardware features like specific adapters or specific disks. POWER5 virtualisation does this with a combination of features provided by POWER5 processor (CPU), advanced machine firmware (Hypervisor), the flexible service processor (FSP) and operating system (AIX and Linux) support. This combined whole infrastructure approach allows efficiencies and optimisation that purely software virtualisation cannot provide. Together these enable one physical machine in the pSeries and OpenPower range to run multiple operating systems at the same time and for them to share resources like CPU cycles, disks and networks. This brings with it the virtualisation benefits that are highlighted below.

All this marvellous technology is wonderful but it is only useful if it can be applied to solving the business needs of saving time and saving money, for example, to:

  • Reduced hardware purchase cost
  • Reduces system administration people costs
  • Raise the reliability downtime costs
  • Increased flexibility & faster reaction lost opportunity costs

These four needs are met by POWER5 virtualisation and this article sets out to explain the why, what and how. Below is a list of many common IT frustrations that stem from the one OS equals one machine rule of the past and are addressed by POWER5 virtualization. Indeed these are the key motivating factors for IBM developing this virtualisation technology in the first place.

Below are the common frustrations:

  1. Increasing number of applications and servers but less people to run them
  2. Some red hot busy machines but most are only ticking over
  3. New computer change requests just stacking up in a waiting queue
  4. Unused computer cycles but they are in the wrong place
  5. Machine outages
  6. Business has peaks & troughs but this means wasted CPUs in the troughs
  7. Can I consolidate small older workloads?
  8. Consolidation looks good but I need to reduce costs even more.
  9. Heat, power and space are my main worries.

1) Increasing applications and servers but less people to run them

Do you have an ever increasing number of small servers to run specific applications but no more head count to look after them i.e. System Administration and Operations (Ops). From this follows:

  • Ever increasing machine to person ratio,
  • Less people time per machine and so,
  • Reduced quality of service.

For example a common approach is if it has not crashed nor got a serious problem, we dont have time to even take a look at it scenario. This is a recognised in many computing press surveys of IT industry of major issues, as a serious computing industry problem.

Virtualisation allows many applications to run on the one machine in separate and isolated compartments. These are called logical partitions but will be covered in more detail in later pages of this article. This reduces systems management workload - with each new application you dont need to purchase, install and commission new machines but only switch on more resources or reassign what you already have. Adjusting a few software parameters is a lot less effort than physically adding a new server. This reduces many of the tasks required to support new and old applications. A side effect of consolidation is fewer physical machines and this reduces power, heat and space.

2) Some red hot busy machines but most are only ticking over

Do you have a few servers that are "flat-out" with angry users with deadlines to hit and you get frustrated that you can't simply add more horsepower, where it is needed? To add a few extra CPUs would require a box swap (i.e. the whole machine changed for a larger one) and that would take a couple of days to a couple of weeks in effort.

POWER5 Virtualisation allows the movement of CPU cycles between applications in less than ten milliseconds, and the machine can automatically moves the CPU power to where it is needed. That is a re-organisation of compute power based on actual demand that allows hitting extremely large peaks in work and all automatically. You can also manually decide the priorities, for example, doubling the CPU allowed, give the application an extra 4 GB of memory for the batch run or temporarily add the application to an extra network to take on new data and all without touching that machine (or getting out of your chair).

3) New computer change requests just stacking up in a waiting queue

Your IT department would like to react in minutes to new application requirements but it seems to take them weeks? Just the decision to purchase new hardware can take the the company process many weeks. The user departments can get frustrated too they always want it done at a moments notice but to purchase, commission, install and test a new server takes man-power and elapsed time and then there is the backlog of urgent requests. With physical changes there are many opportunities for mistakes in rack space, power, network cabling etc.

Virtualisation means you can tap into existing spare capacity on the machine or via Capacity Update On Demand (see below information box), just switch on the extra resources needed. This rapid reaction time to new applications will save days or weeks and significant man power in the commissioning process. With virtual configuration changes there is little or no scope for unexpected limitations or mistakes.

What is Capacity Update On Demand?

IBM's Capacity on Demand offerings for eServer p5 and pSeries are straightforward and easy to implement. You purchase a machine with spare capacity which is not initially activated. There is never a requirement to activate any inactive processors or memory. In fact, systems with inactive Capacity Upgrade on Demand processors can be resold as is. The activation process is quick and easy. Just place an order, supply the necessary system configuration data when needed, and you will receive an encrypted key via the Web and by mail. There is no requirement to set up electronic monitoring of your configuration by IBM.

4) Unused computer cycles but they are in the wrong place

Do you have dozens of practically unused servers and wonder about the waste of money, power, space and cooling? Especially, if you take a look around the server farm and you find that the bulk of the other machines are just 10% to 20% busy. It seems the 80% of the purchase price is getting wasted or to put it another way 80% of the time you purchase a server purchase it is a total waste of money. But to improve on this utilisation would require more effort which means more people and that is not allowed.

Virtualisation means that you end up with this unused 80% CPU time in one place. You then simply add more applications to the machine to soak up the unused resources. This is actually pooling your CPU power and which every application needs extra resources has access to a large pool rather than limited smaller machines CPUs.

5) Machine outages

Does your server ranch always have a few machines down and waiting to be rescued? Take some typical examples: one thousand servers with ten years mean time between failures (MTBF) gives you, on average, two fatal machine crashes a week that is just the maths.

Then you might talk to a mainframe specialist and find out that have not had any failures for 30 years. This starts many people thinking that some of this mainframe technology but running UNIX sounds really good.

POWER5 Virtualisation means using a few larger servers rather than a large number of small servers and these come with mainframe inspired technology for hardware and software redundancy, mutual take-over, reduced failures that is just not possible when hundreds or thousands of smaller machines.

6) Business has peaks & troughs but this means wasted CPUs in the troughs

Would you like to borrow a few CPUs, GB RAM and a disk or two from your main machines in those quieter months of the year to do some other projects? Do some serious system testing of a new version of OS, RDBMS or application code and on the identical production machine? Trail a new application before deciding on a purchase? Try a new approach to an old problem?

Virtualisation makes the surplus CPU, memory and bandwidth in you computer infrastructure visible and available for other work, projects or quality improvement at not extra cost.

7) Can I consolidate small older workloads?

How can I afford the POWER5 based machines to support lots of tiny workloads? Some of the workloads you might be considering are currently running on old Intel 386 machines or RS/6000 machines and they dont need a whole powerful POWER5 processor nor modern dedicated high performance adapters or modern very large disks.

Virtualisation is a key part of the consolidation of workloads as you can share CPUs down to 0.1 of a CPU, 64 MBs of memory and shared disk and shared network adapters between dozens of workloads, while maintaining complete isolation. So a single machine can run a few dozen to a few hundred applications. This reduces the costs and if a workload does not use even this much power (less than 10% of a CPU) then the CPU, when found not to be busy, can be assigned by other busier applications.

8) Consolidation looks good but I need to reduce costs even more

Did you know that four 1 CPU machines costs roughly the same as a four CPU machine?
Check the facts below - at the time of writing this whitepaper in the UK

  • pSeries p510
    • 1 CPU, 2 GB and 1 disk
    • Rack space = 2U
    • Costs approximately £5.0K GBP list price
  • pSeries p550
    • 4 CPUs, 8 GB, 4 disks
    • Rack space = 4U
    • Including the virtualisation features and VIO Server
    • Costs approximately £19.7K GBP list price

So consolidating and using virtualisation is a no brainer (as it costs less) and actually takes less rack space. If any of the four workloads do not need a whole CPU each, you may well find that you can add a 5th or 6th workload for zero costs.

9) Heat, power and space are my main worries

Let us take a simple example comparing eight Intel servers from Dell the 1850 that is new at the time of writing this article and POWER5 based p5 model 550A machines.

  Dell PowerEdge 1850 IBM p5 Model 550Q Difference
Processors Intel Xeon 3.8GHz POWER5 1.5 GHz  
Size in Rack 1U each x 8 = 8U 4U Half the rack space
CPUs Two Single core each = 16 8 Half the per CPU software costs
Power 550W each x 8 = 4400 W * 1100 W Quarter of the electrical power
Cooling     Same as above for air conditioning
Ideas International Rating 1100 * 8 = 8800
Average 20% busy = 1760
Average 40% busy = 3520
Average 50% busy = 4400
Average 55% busy = 4840
Average 60% busy = 5280
5180 Virtualisation matches the Intel performance up to each Intel at 55% busy - when 10% to 20% is typical utilisation.
Peak Performance 1100 5180 4.7 times higher
List Price With 2 GB of memory each (16GB total) with Red Hat EL4 = ~ £4100 = ~£32,800 ** With 16GB of memory with Red Hat EL4
~ £33,500
Approximately 2% higher
  With Microsoft Windows Server 2003, Standard Edition with 5 Client Licenses add £200 x 8 = £1600   3% lower
  With Microsoft Windows Server 2003, Standard Edition with 25 Client Licenses add £1500 x 8 = £12000   34% lower

The Dell machine is simply a typical example of a commodity Intel based small server but any similar product from other manufactures could have been chosen as an alternative. It was selected at it came out to be roughly the same price to highlight the other massive differences in

  • Half of the rack space
  • Quarter of the power requirement
  • Quarter of the air conditioning
  • Four times the maximum performance peak
  • Half the per CPU software licensing costs is a useful side benefit

And this is all in addition to the flexibility and reaction times for changing requirements.
Section 1 - Conclusions
Virtualisation addresses these top IT industry issues and it also introduces many cost and infrastructure savings and more importantly increased flexibility and reduced reaction time to support ever changing IT needs.

Below is the same list of common frustrations and virtualisation answers:

  Classic Environment Frustration Virtualisation Answer
1. Increasing number of applications and servers but less people to run them
  • Reduced number of machines saves people costs
2. Some red hot busy machines but most are only ticking over
  • Logically move resources to the hot spot and dont make physical
3. New computer change requests just stacking up in a waiting queue
  • Use spare capacity to implement quick and timely changes
4. Unused computer cycles but they are in the wrong place
  • Unused resources are pooled together and reused
5. Machine outages
  • A reduced number of higher quality parts increases reliability
6. Business has peaks & troughs but this means wasted CPUs in the troughs
  • Get the hardware to balance the resources across the peaks
7. Can I consolidate small older workloads?
  • Yes, down to a fractions of a CPU
8. Consolidation looks good but I need to reduce costs even more.
  • Sneak extra workloads on to spare capacity
9. Heat, power and space are my main worries.
  • Reduce space by half and power by three quarters

If many of these common issues are true in your computer infrastructure then you need to seriously consider POWER5 Virtualisation further and read on. The remaining two sections cover the logical view and the physical implementation of POWER5 virtualisation.

Section 2 Logically, what is POWER5 Virtualisation?

In the past, an Operating Systems (OS) main responsibility was to control and manage the hardware of the machine. This provides isolation of the application from the realities of how to get hardware working and the communications to the outside world like networks and remote disks over a SAN. But this meant the OS has become a complex item to setup, control and change and so time consuming to manage. The OS is fully embedded into the environment in which is sits, so changing your machine and its environments becomes problematic.

Logically, you can view your classic computer system at below:

The operating system is directly controlling these six resource types that come in two categories.

Core resources

The CPU and memory of the machine are, of course, fundamental and requires the maximum performance and direct access. However, this can be controlled access. The CPU access does not have to be full time basis i.e. the OS can be scheduled to run on a regular basis. It does not need to be all the memory in the machine and could be a subset and controlled by virtual memory. See Section 3 for more information on how this is done in practice.

Input/Output resources

Disk, Network, Optical (CD and DVD) or Tape and Console are all relatively much slower resources than CPU or memory as they require interaction with the external world and physical devices. Each device is access by its a matching device driver code. For the I/O resources there is often more than one of each type. For example it is common to have both internal SCSI disks and many remote SAN disks on a single system. These resources are also often under utilised. For many applications, a 300GB disk is total over-kill or the CD is only used once a year, if at all.

All these resources tie the OS to the hardware and make change difficult. Any change, for example a new network type (like moving from 100Mb network adapters to Giga bit backbone network) or disks (like modifying or adding new SAN adapter), would require a project plan, change control, test cases, downtime to implement and regression test to minimise the risks. This can cause considerable drag or resistance to change that can then mean newer and lower cost technology cant be introduced and it can also introduce frustration of user departments as they feel the IT department take too long. The same is true of every single server that might implement similar or wildly different applications improving say, all these servers at once is seen as risky and time consuming and so is best avoided.

Note:

On a practical point, we are not suggesting that these changes in a virtual environment should not be planned or tested etc. but the hosted systems do not need to change at all (much lower risk) and that one change will provide benefits to all the many hosted systems (much reduced effort).

What is needed is a way to do the following:

Decouple So the OS does not directly manage the underlying hardware.
Reduced interdependencies The OS only uses a small set of hardware independent device drivers.
Control So resources can be added or modified, external to the OS and while the OS is running. Also load balancing CPU use automatically between systems.
Isolation The OS is unaware of changes in hardware.

This is precisely what POWER5 virtualisation can provide using two virtualisation components

  • Hypervisor - advanced firmware involved with CPU scheduling and virtual memory
  • Virtual I/O Server - single purpose dedicated function partition that owns the I/O adapters and shares access to them providing virtual devices
    Both are described in Section 3 of this article in more detail.

These components surround the Operating System and provide a simple and consistent environment for it and regardless of the underlying physical hardware resources. This virtual computer system is shown in the diagram below:

Now the Operating System has direct access to a subset of CPU cycles and a subset of the memory and a small set of relative simple virtual devices. It runs one set of virtual device drivers regardless of the underlying hardware. This isolates the OS and removes interdependency issues. These will also be stable over time and not change with the underlying technology. The two prime I/O devices are the virtual disk and virtual network device drivers these do not change even if the underlying hardware changes. For example, from internal SCSI to external SAN disks or from 100 MB to 1 Gb network adapters. Note: that all six resources are implemented or managed by the Hypervisor but the Virtual I/O Server is not involved with the use of CPU and Memory. The OS runs directly on the CPU but it is the Hypervisor that schedules the OS time slice and priority on the CPU. The OS directly controls its assigned memory but the Hypervisor manages the virtual memory page tables to ensure no OS can gain accidental (or deliberate) access to memory it does not own.

This level of isolation (from the physical hardware resources) results in two benefits.

  • The operating system can co-exist on the machine with many other operating systems
    This is using the pSeries ability to host multiple operating systems in separate logical partitions (LPAR) on the same machine. This has been available for a few years but now with virtualisation each LPAR does not need to have dedicated hardware adapters to support its I/O. Dedicated physical adapters or Virtual shared adapters or a mixture are now an option.
    This allows workload consolidation, sharing of resources for lower cost and higher performance and a simpler infrastructure and lower reaction time to operational needs.
  • The operating system can be moved to another machine and long as the new machine can provide the access to the same disk space and network assuming SAN disks - this is relatively ease to achieve.
    This allows longer term flexibility and reuse of resources between machines as needs change without the complexity and time consuming effort to re-host an operating system and its applications.

Section 2 Conclusion

Logically Virtualisation is decoupling the operating systems from the underlying hardware. This is achieved by reducing their interdependencies, by co-hosting isolated operating systems and their applications but still retaining control of machine resources.

This results in the benefits of Section 1 being realised.

Section 3 Physically, what is POWER5 Virtualisation?

Let us take a look at two examples from computing history of virtualisation that you probably already know about namely Time Sharing and Virtual Memory.

  • Time sharing
    • This was one of the design goals of UNIX over 35 years ago. With time sharing the many running programs have a portion of the machine CPU clock cycles. For a compute bound task, it will be stopped while running on the processor to allow something else to run. It will, in a faction of a second later, get its turn to run again. Each program gets its time slice in turn. The program has the impression that is has the CPU all the time as the time slicing is invisible to it but it is in fact sharing the CPU with many other programs. But it was found that a lot of programs are not compute bound. They run in a jerky fashion as they have to regularly wait for disks or networks to respond to requests for data or even worse have to wait users to type something. By switching to another program at waiting times it means a lot more useful work can be achieved. The lesson is: when the CPU is not busy then is a good time switch to another task and so slice up the CPU to get more work done.
  • Virtual memory (VM)
    • The program when running as a process, thinks is has limitless amounts of memory. In actual fact it has a limited subset of the physical memory of the machine and the rest of the contents of memory has been temporarily transferred to disk. As long as the OS can efficiently fetch back memory from disk in a way that is invisibly to the program (whenever it is referenced) then the program does not need to know it is sharing the memory with other processes. The lesson is: provided it is invisible to the process then it does not need to know it is sharing resources and this makes good use of resources.

So programs running in a Time Sharing and Virtual Memory machine run in an environment where they believe they have sole use of the CPU and all of the memory but in fact are running in a carefully isolated and controlled box. This is referred to as the program running in on virtual machine. This level of virtualisation is invisible to the program; it works extremely well in providing higher performance and fully used hardware resources - which in turn means lower costs. This is Process level Virtualisation as shown in the diagram below:

Here the programs (processes) think they have control of the hardware but it is the operating system that is controlling the hardware and providing the virtual environment for them. The processes are running in a virtual machine provided by the OS which is called the virtual engine.

Having understood these principles, you are well on the way to understand the latest forms of Virtualisation. A lot has happened in the years since these two standard computing feature where first implemented and POWER5 virtualisation technology now covers many more components and has multiple levels. Now we have:

Process level virtualisation - as above

  • Virtual CPUs for processes
  • Virtual Memory

But also the new additional Operating System level virtualisation

  • Virtual CPUs for operating systems
  • Dynamically Resizable Memory
  • Virtual Disks
  • Virtual Ethernet
  • Virtual Optical (CD and DVD)
  • Virtual Console

In this Operating System level virtualisation, we now provide a virtual machine for the entire operating system. What provides this virtual engine server is called different things on different platforms. With pSeries and POWER5 this is provided by two services working together called the Hypervisor (advanced firmware with hardware support) and the Virtual I/O Server (for shared I/O). Depending on your needs to virtualise you can use one or the other or both together. In the below diagram, we now have a new layer call the Hypervisor which is the Virtualisation engine for the operating Systems. This diagram shows only three OS virtual machine but you could run dozens of them on the one Hypervisor and hardware.

Just like processes thought they owned the whole CPU and all of memory what is the operating systems view of the hardware now that it is the Hypervisor that is in control? Let us take each component in turn.

  • CPU
    • Just like processes, the OS thinking it owns the CPU but in fact it owns only a part of the total number of CPUs in the machine and the Hypervisor schedules the running of the OS. To save even more CPU time the OS co-operates with the Hypervisor - if it finds it has nothing to run it actually tells the Hypervisor, so a different OS is scheduled.
  • Memory
    • The OS itself is allocated memory by the Hypervisor by it controlling the virtual memory of the machine (rather than the OS). The OS then manages its memory but page table changes are performed by the OS calling a Hypervisor function. But the administrator can alter the allocated memory given to the operating system dynamically with the OS running.
  • Disks
    • With POWER5 virtualisation, we can now have dozens of OS virtual engines on the one machine. You might think this would introduce a problem of each OS needing disk space and also a disk adapter and there not being enough adapters. In the virtual disk environment, a special logical partition owns a set of disk adapters and disks. This disk space is divided up into pieces called logical volumes and these are made available to other LPARs using the virtual disk features. This is a function provided by the Virtual I/O Server often referred to as the VIO Server and the LPAR using the virtual disks are called VIO Clients. To make access to these virtual disks very quick the transfer of data is performed over memory by direct remote DMA from the disk adapters themselves straight to the VIO Client LPAR.
  • Network
    • Just like disks, the VIO Server provides access to real networks for LPARs that dont have physical adapters. This internal network is implemented over memory which makes it efficient and it also implements the VLAN protocol, so the VIO Client LPARs can fully inter-work with external networks and VLANs.
  • Optical CD or DVD
    • To install the OS, applications, add data and update software the use of a CD or DVD drive is often the simplest. The VIO Server can make such drive available as a virtual device, so that it can logically be moved to the correct LPAR for use and then moved again. For initially installing the operating system, the alternative is using a network install and this can be performed over the virtual network.
  • Console
    • With lots of OS virtual machines there is a need for access to a low level console particularly when initially installing the operating system or when the network is not available then some other non TCPIP access is essential. The virtual console provides this function from the Hardware Management Console or in the case of the IVM the Virtual I/O Server see below.

So how are these Virtualisation components implemented?

These virtual components are the Hypervisor and the Virtual I/O Server and are described below:

  • Hypervisor
    • The Hypervisor (originally call PHYPE in the labs and still seen on some charts) is implemented as the advanced system firmware in the machine and is run by the POWER5 processors themselves. It is held in non-volatile memory, so it cant be corrupted or lost and there are two versions inside the machine to allow for a new version to be tried and in extreme cases the machine can be booted from the previous version. The service processor (called the FSP) which provides initial boot tests, on going monitoring and diagnostics, also sets up the controlling tables for the Hypervisor. These control tables define the resources for each Logical Partition (LPAR) including the number and entitlement of the CPUs cycles, the location and size of memory, which adapters and virtual resources can be accessed by the LPAR. The FSP then starts the POWER5 CPUs and they use the control tables run the various LPARs and keep them separate in resource terms. Each of the LPARs also interacts regularly with the Hypervisor as it controls and scheduling of the operating systems and LPARs on to the CPUs (if they are not in dedicated CPU mode). The Hypervisor also tightly controls the memory of the machine as it manages the virtual memory page tables for all LPARs to guarantee that LPARs can access only their memory and adapters (these appear as memory too).

The above diagram shows the Hypervisor between the operating systems and the hardware. This is traditionally where the firmware layer sits. Indeed, you can think of the Hypervisor as a very clever firmware level using the advanced features of the POWER5 processor and optimising the use of the underlying high bandwidth hardware.

  • Virtual I/O Server
    • The Virtual I/O Server (VIO Server) is implemented as a logical partition (LPAR) that owns network and disk adapters. This is a single purpose dedicated function operating system. There are two implementations one from IBM (based on AIX) and another from Novell/SUSE (based on SUSE Linux). This article focuses on the IBM VIO Server. The VIO Server then lets other LPARs (known as VIO Clients) use its physical resources via a pair of device drivers. These are known as virtual device drivers but it is the resources that are virtual i.e. they are real device drivers.

For networks, the VIO Server and VIO Client LPARs use an internal virtual network to communicate. This is implemented by calls to the Hypervisor memory. The VIO Server then bridges the virtual network to the real physical adapter to allow VIO Clients to communicate externally. The internal network also operates as a VLAN switch. This means that LPARs can be connected and inter-operate fully in a physical VLAN environment.

For disks, the VIO Server allocated a chuck of its own disk space as the virtual disk of a VIO Client. Again the communication is provided by the Hypervisor memory. So for example, the VIO Client believes it has a 16GB disk but it is in fact, a 16 GB logical volume on the VIO Server. The VIO Server disks can be implemented as internal or external SCSI or SCSI with RAID adapters or via Fibre-Channel adapters to SAN storage. The VIO Client only uses the virtual SCSI device drivers in all cases.

Virtualisation Management Control

The below two components are alternative ways to manage and operate the POWER5 Virtualisation depending on the size of system(s) and functionality required. They offer many of the same tools to implement logical partitions, CPU entitlement, memory sizes, adapters and virtual resources and connections.

  • Hardware Management Console (HMC)
    • The HMC is mandatory on large machines (capable of having more than 4 CPUs) and recommended when there are lots of smaller. From one HMC, you can manage the Hypervisor and VIO Server resources on 64 machines. The HMC is a single purpose dedicated function PC that runs only the embedded HMC software and communicates via Ethernet with the flexible service processor on each machine to control the setup and management of the Hypervisor and the Virtual I/O Server resources and connections. The HMC can be used directly or accessed remotely using the Windows, Linux or AIX remote interface called WebSM (Web based Systems management). Some work is also performed on the Virtual I/O Server logical partition itself to configure virtual disks and Ethernet. The user interface is simple to use and based on WebSM for AIX that has been available for years. Then HMC user interface looks like the below example:

Example Hardware Management Console

  • Integrated Virtualisation Manager (IVM)
    • The alternative is the Integrated Virtualisation Manager (IVM). This is recommended when there are smaller pSeries and OpenPower machines (up to 4 CPUs) and when there is only one or a few machines to control and some advanced HMC features are not required. This implements many of the HMC functions on the Virtual I/O Server logical partition itself which present the users interface via a web site. IVM can be accessed from any common Internet browser. The IVM has a simpler user interface than the HMC. It automated many of the tasks to implement the POWER5 virtualisation but does offer some limitations in flexibility that is available with the HMC and some advanced features. The IVM user interface looks like the example below:

Example Integrated Virtualization Manager in a web browser

Conclusions

In this paper, the background and concepts of virtualisation model have been presented along with the benefits this brings to address many common IT industry issues in this complex and ever changing business.

In addition, the components of POWER5 virtualisation (based on mainframe technology) have been explained and how they interact to provide a stabled, flexible and high performance infrastructure. They allow systems administrators to control and re-assign resources while maintaining high performance at reduced costs.

References

Books and Manuals:

Advanced POWER Virtualization on eServer p5 http://www-03.ibm.com/servers/eserver/pseries/ondemand/ve/index.html
IBM Red Books from http://www.redbooks.ibm.com/portals/UNIX
Advanced POWER Virtualization on IBM eServer p5 Servers: Introduction and Basic Configuration http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247940.html
Advanced POWER Virtualization on IBM eServer p5 Servers: Architecture and Performance Considerations http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg245768.html
Integrated Virtualization Manager with Virtual I/O Server http://w3.itso.ibm.com/itsoapps/redbooks.nsf/RedpieceAbstracts/redp4061.html

IBM Web Articles and White Papers:

POWER5 virtualization: How to set up the IBM Virtual I/O Server http://www-128.ibm.com/developerworks/eserver/library/es-aix-vioserver-v2/
IBM p5 570 Server Consolidation Using POWER5 Virtualization http://www-1.ibm.com/servers/eserver/pseries/hardware/whitepapers/570_serverconsol.pdf
IBM p5 570 Workload Balancing Using POWER5 Virtualization http://www.ibm.com/servers/eserver/pseries/hardware/whitepapers/570_workload.html
Virtual I/O Server-Performance/Sizing/QOS considerations http://techsupport.services.ibm.com/server/virtualization/vios/documentation/perf.html
Use the Integrated Virtualization Manager with Linux on POWER http://www-128.ibm.com/developerworks/linux/library/l-pow-ivm/


 
    About IBM Privacy Contact