Testing Out the New vHMC

Edit: Do you use this in your environment?

Originally posted January 12, 2016 on AIXchange

Have you ever wished you could run HMC code on your laptop? Sure, there are unsupported work-arounds, but the new HMC virtual appliance (vHMC) makes this task much simpler to accomplish, and it’s supported by IBM. Read all about it in section 3.2 of this Redbook.

Although IBM designed the vHMC solution for use in data centers — either as a backup to an existing physical HMC or by itself as a primary HMC solution — I wanted to know if it would actually run on a laptop. In truth, I just had to know.

Before getting into the install process, a bit about the vHMC itself. It allows you to manage Power servers from your existing VMware environment. In addition, some high availability solutions can be set up around your vHMC VM in existing VMware environments. This is especially useful for smaller customers that want to manage one or two smaller Power servers (located either on-site on remotely) without the need for dedicated HMC hardware.

The FAQs and general info that follows can be found in this document. I recommend reading the entire thing.

Support for vHMC firmware, including how-to and usage, is handled by IBM software support similar to the hardware appliance. When contacting IBM support for vHMC issues specify “software support” (not hardware) and reference the vHMC product identification number (PID: 5765-HMV).

How-to, install, and configuration support for the underlying virtualization manager is not included in this offering. IBM has separate support offerings for most common hypervisors which can be purchased if desired.

Q: How can I tell if it’s a vHMC?
A: To determine if the HMC is a virtual machine image or hardware appliance, view the HMC model and type. If the machine type and model is in the format of “Vxxx-mmm,” then it is a virtual HMC.

From command line (CLI) use the lshmc -v command and check the *TM field for a model starting with “V” and/or the presence of the *UVMID fields… .

Q: Are existing HMC customers entitled to vHMC?
A: No. vHMC is a separate offering and must be purchased separately. There is no conversion and no upgrade offering at this time.

Q: Are there any restrictions related to on-site warranty support for managed servers?
A: Restrictions are similar to the hardware appliance. You must supply a workstation or virtual console session located within 8 meters (25 feet) of the managed system. The workstation must have browser and command line access to the HMC. This setup allows service personnel access to the HMC. You should supply a method to transfer service related files (dumps, firmware, logs, etc) to and from the HMC and IBM service. If removable media is needed to perform a service action, you must configure the virtual media assignment through the virtualization manager or provide the media access and file transfer from another host that has network access to HMC.

Q: Can the vHMC be hosted on IBM POWER servers?
A: No, the current offering is only supported on Intel hardware. See release notes for the requirements.

Q: Is DHCP/private network supported?
A: Automatic configuration of a private DHCP network interface at install time by the activation engine is not supported. Manually configuring a private DHCP network using the HMC GUI/CLI is supported the same as with the hardware appliance. Note that a private DHCP network requires an isolated network to the managed server FSPs. Using the hypervisor to configure an isolated private network is outside the scope of vHMC. As with the hardware appliance, vHMC does not support VlAN tagged packets.

As noted in these installation instructions, the vHMC supports the kernel-based virtual machine (KVM) and VMware virtualization hypervisors. Here are the minimum requirements for running it:

  • 8 GB of memory
  • 4 processors
  • 1 network interface (maximum of 4 allowed)
  • 160 GB of disk space (recommended: 700 GB to get adequate performance and capacity monitoring (PCM) data)

Note: The processor on the systems that host the HMC virtual appliance must be either an Intel VT-x or an AMD-V hardware virtualization-enabled processor.

In my test environment I saw tolerable performance with 1 CPU and 4G of memory. Of course I wouldn’t recommend running it that way in production.

Also remember: The vHMC itself isn’t monitored. IBM has no visibility into all the different types of hardware on which this code could run:

Callhome for serviceable events with a failing MTMS of the virtual HMC appliance are not called home to IBM hardware service. The virtual HMC appliance is a software only offering with no associated hardware as provided in the HMC hardware appliance. Serviceable events reported against the vHMC appliance can be reported manually to IBM software support by phone or the IBM service web site.

Callhome for serviceable events on the managed servers and partitions, which will have “Failing MTMS” of the server, works the same on the virtual HMC as on the hardware appliance.

I had a copy of VMware workstation on my laptop, and I first tried the KVM version of the vHMC code inside of a Linux VM running KVM. First, I had to get the code. After confirming that I had entitlement, I went to the ESS website, clicked on entitled software, and then selected software downloads. When prompted for my operating system, I selected other. This brought up the 5765-HMV Power HMC Virtual Software Appliance. After selecting that, I was able to choose:

    tar.gz Download README
    TGZ, ESD – Virtual HMC V8.8.4 for VMware 11/2015
    TGZ, ESD – Virtual HMC V8.8.4 for KVM 11/2015

The actual files that were downloaded were named:

    README_for_tar_gz_Downloads_3-2007.tar.gz
    ESD_-_Virtual_HMC_V8.8.4_for_VMware_112015.tar.gz
    ESD_-_Virtual_HMC_V8.8.4_for_KVM_112015.tar.gz

After unzipping and untarring the files, I fiddled around with nested VMs to see if I could get the KVM vHMC code working in a Linux VM that was running inside of VMware:

Most hypervisors require hardware-assisted virtualization (HV). VMware products require hardware-assisted virtualization for 64-bit guests on Intel hardware. When running as a guest hypervisor, VMware products also require hardware-assisted virtualization for 64-bit guests on AMD hardware. The hardware-assisted virtualization features of the physical CPU are not typically available in a VM, because most hypervisors (from VMware or others) do not virtualize HV. However, Workstation 8, Player 4, Fusion 4, and ESXi 5.0 (or later) offer virtualized HV, so that you can run guest hypervisors which require hardware-assisted virtualization.

With virtualized HV enabled for the outer guest, you should be able to run any guest hypervisor that requires hardware-assisted virtualization. In particular, this means that you will be able to run 64-bit nested guests under VMware guest hypervisors.

Although I checked the correct box to enable nested virtualization, in my early tests the performance was too sluggish to get much done. I got vHMC to boot inside of KVM from within VMware, but it was far simpler to just run it in KVM or VMware natively.

I still wanted to get the KVM version to work, so I loaded Redhat Linux Enterprise Edition on an old standalone desktop machine. I copied the KVM file over to the Linux machine, and clicked on create a new virtual machine. The directions came right from the Redbook cited at the beginning. I selected import an existing disk image, left my OS as generic, set my memory and CPU settings, gave it a name, and clicked on finish. It came right up just as expected. Then I switched over and concentrated on my VMware instance.

To get vHMC to deploy in VMware, I clicked on one of the files (vHMC.ova) that was uncompressed from the VMware tarball I previously downloaded. I was prompted for the name of my new virtual machine and the path where it would live on the disk. I then clicked on import.

From there, everything else happened automagically. It was set to use thin provisioned disk, which only took up a little space on my machine, about 8G or so. By selecting “power on this virtual machine,” my vHMC came right up.

I did the next steps on both the KVM and VMware versions. I was first prompted to change my locale, so I told it to exit and not prompt again. I did likewise when prompted about changing my keyboard. Finally, I was asked to accept the license agreement. In short, everything worked pretty much as it would in a fresh HMC install on standalone hardware.

After accepting the license, the guided setup prompts came up. I skipped over that and the Callhome setup, since neither is necessary for my sandbox environment. At least that’s what I thought. It turns out though that the guided setup is where you create a password for your hscroot user ID. Having not done so, I couldn’t logon. So I rebooted the VM and tried again, this time running the guided setup. I chose my timezone, set up a password for hscroot and root, and skipped over the option to create other users.

For my networking I used an open network with an address of 127.0.0.1, and skipped over firewall settings. I told it I didn’t want to configure another adapter. In addition, I didn’t change the hostname or the domain name. I didn’t put in a gateway address or a gateway device. I told it I didn’t want to use DNS, and I skipped over setting up the SMTP server. Then I clicked on finish. After closing the wizard, it reset the GUI and allowed me to login as hscroot. (Each time you login you get a “tip of the day,” which is another thing I skipped.) Finally, I looked at my HMC version and indeed saw I was running 8.8.4.0, on a model type Vxxx-mmm.

My sandbox performance is pretty good, especially considering that this is an undersized VM that competes for resources with other VMs. On top of that, my test machine only has 8G of physical RAM installed. Obviously in a lab environment performance isn’t really a priority. In a real environment this code would be as snappy as you’d find on dedicated hardware.

Another nice thing is that suspend and resume functions the same as it does in other VMs you might be used to on KVM or VMware. It’s a simple matter to get it out of the way to free up resources; then when you’re ready to get back to it, you pick right up where you left off.

Finally, I appreciate that the process of installing fixes seems identical to what we’re used to with standalone HMCs. Since my VMware internal switch was set up to give my vHMC an address, I obtained one using DHCP by going into my HMC network adapter settings. I changed that setting from a fixed IP to DHCP and got it on the network. Then I was able to go into updates by selecting update HMC. IBM Fix Central didn’t show any vHMC updates, but there were regular HMC updates (MH01560 and MH01588), so I tested those on my sandbox server. Everything worked fine.

There remain many sound reasons to have an isolated standalone management machine serve as your infrastructure point of control. For starters, I believe that the KISS concept still has its advantages when it comes to managing critical hardware. However, the vHMC does offer another option for managing our machines, and I’m sure that adoption will grow as users get more comfortable with it. Testing it out in your environment will be the first step.

Can you see yourself using this solution in place of a dedicated HMC? Please share your thoughts in comments, along with any requests for other tests I can run with the vHMC.