Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting our team. We will be in touch shortly.Close

  1. Blog
  2. Article

Tytus Kurek
on 2 January 2024

OpenStack with Sunbeam for small-scale private cloud infrastructure


Whenever it comes to a small-scale private cloud infrastructure project roll-out, organisations usually face a serious dilemma. The implementation process often seems complex due to a lack of knowledge, tricky migrations and an immediate need from management to run various extensions, such as Kubernetes, on top. The most obvious way to overcome this complexity is to bring in costly professional services to handle the project, but this option can be prohibitively expensive for small and mid-size businesses.

Fortunately, there are now ways to easily address all these challenges yourself. In this short blog, we will showcase how you can use project Sunbeam to seamlessly deploy a small-scale private cloud with no need for experience or costly consulting.

Before we start

Before we start, let’s briefly clarify some terms that we’ll be using in this blog.

What is Sunbeam?

Sunbeam is an upstream project under the governance of the OpenInfra Foundation (OIF) created to lower the entry barrier for OpenStack, simplify its adoption process, and set the foundation for an autonomous private cloud. Sunbeam uses cloud-native architecture and total bottom-up automation to make OpenStack more accessible to newcomers and to help users get to grips with the platform immediately.

What is MicroStack?

MicroStack (based on Sunbeam) is an OpenStack distribution designed for small-scale cloud environments. While it is available with full commercial support from Canonical, it can also be self-deployed with no friction, effectively eliminating the need for a paid consulting engagement. MicroStack currently includes core OpenStack services only but is expected to evolve quickly to ensure full feature parity with Canonical’s Charmed OpenStack soon.

OpenStack for small-scale private cloud infrastructure

People tend to think about OpenStack as something overly complex. And to be frank, they are basically right. OpenStack is well-known for its excessive complexity. However, when using proper tooling, OpenStack can be effectively tamed, making it a technology that is accessible to anyone. This includes people with no previous experience with OpenStack or Linux.

Getting started with OpenStack

Historically, getting started with OpenStack has always been a challenge. The overall number of steps and design decisions to kick off the installation has been overwhelming for newcomers. Fortunately, with project Sunbeam, this is no longer the case.

With Sunbeam, users can install OpenStack in five simple steps. The entire process takes less than an hour, and what you get at the end of this journey is a fully functional cloud. Obviously, bootstrapping a multi-node, production-grade cluster requires a little bit more effort. However, in essence, the process is mostly the same.

The most important thing is to simply give it a try. OpenStack isn’t as intimidating as it seems. I got it running on my laptop when writing this blog.

OpenStack dashboard

Performing the migration

Once the cloud is bootstrapped, it is high time to start migrating workloads and data. A Sunbeam-based OpenStack installation can serve as a reasonable alternative to small-scale VMware vSphere infrastructure, Proxmox Virtualization Environment (VE), Hyper-V or Citrix Hypervisor.

This is also something that might be easier than many people think. In order to migrate a virtual machine (VM) from one platform to another, first export its disk image. Obviously, exact instructions vary depending on the platform, but usually, they’re very well documented.

Then, an exported image has to be converted into a QCOW2 format, which is the image format used by OpenStack. In order to convert a VMware-exported VMDK image to a QCOW2 format, use the qemu-img tool:

qemu-img convert -f vmdk -O qcow2 my_vmware_image.vmdk my_openstack_image.qcow2

The QCOW2 image can further be imported into the OpenStack Glance service and launched as a VM by the OpenStack Nova service.

In more advanced scenarios, when downtime is not an option, organisations can also consider dedicated migration-as-a-service tools. A good example of a tool like that is Coriolis by Cloudbase Solutions.

Running K8s on top of your cloud infrastructure

A modern cloud platform wouldn’t be versatile enough without a Kubernetes layer running on the top. This is also something that project Sunbeam is fully capable of. By using OpenStack Magnum service and its built-in plugin architecture, an optional K8s-on-demand functionality can be enabled almost with a single click.

In order to enable the Container-as-a-Service (CaaS) plugin on top of your multi-node Sunbeam-based cloud, execute the following command:

sunbeam enable caas

This will install Magnum components so that you can start using its APIs. Then, to create a K8s cluster template, use the OpenStack client:

openstack coe cluster template create k8s-cluster-template-ovn \
   --image fedora-coreos-38 \
   --keypair sunbeam \
   --external-network external-network \
   --flavor m1.small \
   --docker-volume-size 15 \
   --master-lb-enabled \
   --labels octavia_provider=ovn \
   --labels octavia_lb_algorithm=SOURCE_IP_PORT \
   --network-driver flannel \
   --coe kubernetes

Starting from now, you can use a single command to create K8s clusters on demand:

openstack coe cluster create \
   --cluster-template k8s-cluster-template-ovn \
   --node-count 1 \
   --timeout 60 \
   sunbeam-k8s-ovn

Always refer to the official documentation for the most up-to-date instructions.

Conclusions

Project Sunbeam effectively makes OpenStack suitable for small-scale private cloud infrastructure implementation purposes. It lowers the barrier to entry, enabling a production-grade OpenStack cluster to be installed in a few simple steps. Other typical cloud functions, such as K8s-on-demand, are also natively available with almost a single click. All of this makes the platform accessible to all users, irrespective of experience, and puts the power of OpenStack within reach of organisations of any size.

Learn more about Sunbeam

Now that you’ve got a basic understanding of project Sunbeam and how it can be used for various use cases, you might be wondering where to find more information about it. If that’s the case, we have prepared some interesting follow-up materials for you:

Related posts


Tytus Kurek
8 September 2023

How telcos are building carrier-grade infrastructure using open source

Cloud and server Article

Telco cloud implementation with Canonical and HPE Service providers need cloud infrastructure everywhere, from modern 5G and 6G network functions running in the network core to sophisticated AI/ML jobs running on the edge. Given the sensitivity of those workloads to any interruptions, outages or performance degradations, the cloud infrast ...


Tytus Kurek
10 May 2023

OpenInfra Summit Vancouver 2023 is coming

Cloud and server Article

Heads up! The OpenInfra Summit Vancouver 2023 is coming!!! After the successful resurrection of the event in Berlin last year, the OpenInfra Summit is back as an in-person event again. The conference will take place in Vancouver, Canada, on June 13-15. As usual, Canonical will be there to share the latest news about OpenStack and ...


Tytus Kurek
16 March 2023

Kubernetes vs OpenStack: which one to choose?

Cloud and server Article

Kubernetes vs OpenStack is a common dilemma that organisations face when considering the modernisation of their IT infrastructure. Both are well-established open-source technologies for building cloud infrastructure, and both bring tangible benefits, especially when used in combination. Yet, they differ significantly and need to be proper ...