As modern IT evolves, there have been many milestones along the way. Starting with bare metal servers, followed by virtualization, then cloud computing, and beyond. Each advancement has created both challenges and opportunities for IT professionals. Today the industry is focused on deploying solutions that will improve overall IT operations while reducing overhead. Orchestration and modeling solutions help these organizations to integrate, manage, and deploy flexible solutions faster and with more consistency. Canonical and IBM have partnered to help our mutual customers with advanced virtualisation solutions on the IBM z and LinuxONE platforms.
How IBM and Canonical bring virtualisation options to their customers
The combination of Ubuntu Server with the highly virtualized platforms IBM LinuxONE and IBM z Systems offers a highly competitive set of capabilities and virtualization options that provide many of the scalability, security, and isolation needs of our customers.
The IBM LinuxONE and z Systems come already with the Processor Resource and Service Management (PR/SM) or Dynamic Partition Manager (DPM), built into firmware, providing creation and management of up to 85 logical partitions in the high-end models such as IBM z13 or IBM LinuxONE Emperor. Although there are no real ‘bare metal’ options with IBM LinuxONE and z Systems available, there are several options for running Ubuntu Server on LinuxONE and z Systems for example:
- A: In the logical partition(s) which is as close to the hardware as it gets without being on bare metal
- B: As a guest (aka virtual machine) under IBM z/VM, IBM’s commercially available hypervisor.
The newer options, open source based, are:
- C: As a virtual machine (VM) under KVM hypervisor
- D: As a machine container
But who will provide the KVM hypervisor and a machine containers foundation? Right out of the box, Ubuntu Server itself comes with:
- A built-in KVM with the well-known Linux full-virtualization concept with the same functions, look and feel across all architectures, but exploiting hardware assisted virtualisation of s390x architecture (SIE instruction).
- LXD “the container hypervisor”, is a lightweight operating-system virtualization concept based on Linux Containers technology, enabling organisations to run Linux VMs straight to (machine) containers
The timeliness of the Ubuntu operating system itself ensures that our KVM is on the latest functional level, especially the s390x bits and pieces are frequently brought up-stream by IBM – hence this hand in hand delivery lets you get the most out of KVM, regardless how it’s used:
- using virsh only
- using uvtool and
- using virtinst
Ubuntu Server actings as a KVM host is more than a valid and up-to-date alternative to other KVM based solutions on s390x – like IBM KVM for z Systems, that was withdrawn from marketing by IBM on March the 7th 2017 – see the KVM for IBM z Systems External Frequently Asked Questions.
For technical details and help on migrating from KVM for IBM z to Ubuntu KVM the Wiki page IBM KVM to Ubuntu KVM is recommended. It provides a quick technical summary of what an administrator should consider when trying to move guests from IBM-KVM to Ubuntu KVM.
LXD delivers a fast, dense and secure basic container management. Containers in LXD pack workloads up to 10x more densely compared to VMs – hence LXD is a perfect way to utilize hardware more efficiently. And similar to KVMs, with LXD you can run different Ubuntu releases or even other Linux distributions inside of LXD machine containers.
The significant advantage of open source based virtualization and container options, KVM and LXD, is that both are recognized by OpenStack. KVM is the default hypervisor for OpenStack and LXD can be integrated using nova-lxd driver.
A key benefit of an Optimized Deployment, includes provisioning, orchestration and modelling provided by Juju and it’s Charms and Bundles, which are sets of scripts for reliably and repeatedly deploying, scaling and managing services within Juju. Even just the combination of Juju and LXD based on Ubuntu Server can be considered a basic Cloud, where each new instance will run inside of a LXD container. Juju considers Ubuntu Server, with LXD enabled, as a cloud enabler where each new instance is implemented as a LXD container. Just install Ubuntu Server in a LPAR to fully benefit from a scale-up architecture of IBM LinuxONE and z Systems and the bare metal performance of LXD containers.
To conclude, there are many approaches to virtualisation and each has its own characteristics. For example:
- LPARs are as close as possible to bare metal on IBM z Systems and LinuxONE
- Ubuntu Server can act as KVM hypervisor and be integrated with OpenStack
- Containers can be combined with any of the other virtualization options
There are also significant advantages:
- Efficiency / Flexibility: LXD > KVM > LPAR
- Isolation: LPAR > KVM > LXD
With the robustness of IBM LinuxONE and z Systems platforms, the combination of different virtualization and management options, even inside one physical server, orchestrated by Juju offer a broad range of options for modeling within the enterprise according to the customer’s specific needs.