Getting Started With PowerKVM

Edit: This is no longer a thing, although the commands and tools are still useful.

Originally posted June 10, 2014 on AIXchange

I recently installed and started playing with IBM PowerKVM software on the S822L. Luckily I had a good PowerKVM quick start guide to follow. There’s also a draft version of a Redbook that will help you with your installation. It covers how to netboot and includes examples of the menus you’ll encounter.

I started by connecting my laptop Ethernet port to the HMC1 port on the S822L. This port is using the default address of 169.254.2.147, while the HMC2 port is using the default of 169.254.3.147. In my case I set my laptop to 169.254.2.140 and logged into ASMI as I’m used to doing with PowerVM.

Once I was in I was prompted to change my ASMI password. Then I went to the system configuration/hypervisor configuration menu item in ASMI. There I was presented with a choice of using PowerVM or PowerKVM. I selected PowerKVM and entered an IPMI session password.

To get a console or power on and off the system, you need to get impitool. With a web search you can find methods using Cygwin to get it running on Windows, or you could look at ipmiutil. Since I was using Linux, I just made sure I had ipmitool installed, and I was set to go.

In ASMI I went to System information > Real-time progress indicator so I could see the LEDs from the front of the display without actually being in front of the machine. I verified I was at the 01 N V=N prompt, and then ran:

            ipmitool –I lanplus –H x.x.x.x –P password power on

Once I did this, I saw my LED codes change as the system powered on.

To get a console I ran:

            ipmitool –I lanplus –H x.x.x.x –P password sol activate

I soon discovered that I could kill my console session by running:

            Ipmitool –I lanplus –H x.x.x.x –P password sol deactivate

Finally, to power off I’d run:

            Ipmtool –I lanplus –H x.x.x.x –P password power off

I made sure the PowerKVM DVD (that I burned from an .iso image) was in the drive, the machine was powered up and my console was open. Eventually, petitboot came up. Due to a bad DVD I didn’t initially get what I expected, but once I had a .iso image that was in good shape, I was able to select the PowerKVM LiveCD option. The screen displayed:

            POWERKVM_LIVECD

            System information

            System configuration

            Exit to shell

The install wizard (which reminded me quite a bit of an old school RedHat install) prompted me for a root password, time zones, which disks to use, etc. Once that was completed it installed

PowerKVM and the system rebooted. Then petitboot came back up. I selected my freshly installed system and I was able to boot to a root prompt.

During the install I specified a network address for my network card and made sure it was on the network. To get Kimchi to work I needed to get into my sol console and edit /etc/sysconfig/selinux, change the selinux permissions to permissive and then reboot the server.

I verified that kimchid was allowed in the firewall by running:

            firewall-cmd –list-services

I ran systemctl to see the state of Kimchi:

            kimchid.service             loaded active running   Kimchi server

Once in a while I’d see it wasn’t running. In those instances I’d run:

            systemctl stop kimchid.service

            systemctl start kimchid.service

At this point I was able to connect to kimchi by going to https://ip.address.of.powerkvm.host:8001.

This gave me a graphical interface to simplify creating guests. I’ve gotten different versions of Redhat, SUSE, Ubuntu and Debian to all run successfully.

I copied my .iso files to /var/lib/libvirt/images and then set up templates in kimchi. It was pretty self explanatory. I’d click on the green + button, pick the local .iso image option and select create templates from selected .iso. At this point I could edit the number of CPUs, the amount of memory and disk, choose networking options, etc. Then I started my guest machine. I clicked on the live tile to get a console, and configured the machine as I would any new install.

By logging into my PowerKVM instance and running top, I can see all of the copies of my operating systems running as the qemu user. By running virsh commands I can get information about my machines as well as stop/start them, suspend them, etc. For example, this virsh command gave me information about the disks I was using for a machine called redhat7-1

            virsh qemu-monitor-command –hmp redhat7-1 info block

            drive-virtio-disk0: /var/lib/libvirt/images/9f82cbd6-d345-4591-aa68-748f2c7b2b4e-0.img (raw)

            drive-scsi0-0-0-2: /var/lib/libvirt/images/rhel-server-7.0-ppc64-dvd.iso (raw, read-only)

                Removable device: locked, tray closed

Another nice way to run the system is to simply enter virsh and run interactively. To see all the machines you can control, enter list. You can also get a console to a virtual machine — in my case I entered:

console redhat7-1

This is definitely an interesting new way to access a Power Systems machine. As I continue to work with PowerKVM, I’ll post more tips and tricks.