MAAS KVM Pods

Canonical

on 18 October 2017

This article was last updated 4 years ago.


This is a guest post by Michael Iatrou, cloud solutions architect at Canonical

OpenStack is the dominant solution in the IaaS space, fueled by the need for reliable, scalable and interoperable private cloud infrastructure to accommodate cloud native applications. Through OpenStack’s open APIs, tenants can easily deploy elaborate virtual (overlay) networks, integrate with a variety of storage backends, even leverage modern hypervisor-like machine containers (LXD) for bare metal performance. Although the tooling allows a full fledged OpenStack deployment on just a single machine, the intrinsic efficiencies that OpenStack’s design promises, materialize at a certain scale — typically at least 12 servers.

There is a large number of environments which would benefit from the merits of virtualization, including but not limited to hydrocarbon exploration sites, diagnostic imaging for health centers, backoffice for restaurants and retail store IT operations. But their per location server footprint is very small, usually no more than a handful of machines. We will explore here how to use the same tooling that delivers operational efficiency for large OpenStack and Kubernetes deployments, in order to revamp small scale environments.

MAAS stands for Metal As A Service and enables you to treat physical servers like an elastic cloud-like resource. As of MAAS 2.2 “pod” is introduced as an operational concept. A MAAS pod effectively describes the availability of resources and enables the creation (or composition) of machines with a set of those resources. A user can allocate the needed CPU, RAM, and (local or remote) storage resources manually (using the MAAS UI or CLI) or dynamically (using Juju or the MAAS API). That is, machines can be allocated “just in time”, based on CPU, RAM, and storage constraints of a specific workload. MAAS 2.2. supports two types of pods, (1) Physical systems with Intel RSD and (2) Virtual Machines with KVM (using the virsh interface).

We have published a detailed tutorial with step by step instructions on how to install and configure a testbed environment for MAAS KVM pods. You can quickly transform a physical server into a lightweight, reliable virtual machine management node. You can even test it on your laptop.

MAAS has been designed to be a modern, agile machine provisioning and infrastructure modelling solution, enabling both physical and virtual infrastructure. Beyond MAAS’ extensive adoption in cloud native environments, it can optimize the utilisation of existing in-house, small scale IT infrastructure using VM pods. The pod abstraction is very powerful and flexible, and it has quickly gained attention, with many new features coming soon! Try it out!

Ubuntu cloud

Ubuntu offers all the training, software infrastructure, tools, services and support you need for your public and private clouds.

Newsletter signup

Get the latest Ubuntu news and updates in your inbox.

By submitting this form, I confirm that I have read and agree to Canonical's Privacy Policy.

Related posts

Canonical joins the Sylva project

Canonical is proud to announce that we have joined the Sylva project of Linux Foundation Europe as a General Member. We aim to bring our open source...

A call for community

Introduction Open source projects are a testament to the possibilities of collective action. From small libraries to large-scale systems, these projects rely...

MAAS Outside the Lines

Far from the humdrum of server setups, this is about unusual deployments – Raspberry Pis, loose laptops, cheap NUCs, home appliances, and more. What the heck...