Running an open source multicloud with Ubuntu, LXD, and Mist
Originally published on the Ubuntu blog.*
One of the advantages that Ubuntu brings to the cloud equation is improving an organization's ability to run in multiple clouds. Running containers on top of Ubuntu further increases portability. Mist is an open-source multicloud management platform that helps teams centrally manage and control their Ubuntu instances across many different cloud environments and/or bare metal. This removes some of the operational and financial barriers to running applications in multiple clouds.
One recent example of how Mist works with Ubuntu came from a customer who runs a WordPress hosting service in Europe. This company is extremely security conscious and wanted a completely open-source stack. They run in multiple public clouds as well as on bare metal, and completely isolate their customers' workloads.
This customer was already using Ubuntu and LXD, both chosen for their baked-in security and robustness, and both open-source. LXD is a container and VM management tool that allows users to create, run, and maintain containers as if they were VMs, and VMs as if they were their own cloud. LXD uses pre-made images available for a range of Linux distributions and is built around a powerful, but simple, REST API. A good tool for orchestration of 'single-cloud' virtual environments.
However, the customer still needed to have visibility and control over the entire stack, from LXD down to the cloud environment, and they needed a way to centrally manage all of their deployments in
They adopted Mist to get a unified view of their entire setup and to be able to centrally control certain aspects of their deployments. Here are some of the things that Ubuntu users get by layering Mist on top:
Spin up Ubuntu instances anywhere, from one dashboard. Instead of having to toggle between environments to spin up Ubuntu instances in different public and private clouds, you can spin new instances up from a single dashboard.
Centrally control role-based access (RBAC) for your entire setup. Many organizations, like the customer noted above, choose an all open source stack for security and privacy reasons. Privacy and legal compliance can also be a reason organizations need to operate in more than one cloud environment. With Mist, it's easy to control RBAC for the entire suite of servers from one place, decreasing the likelihood of errors and the accompanying security exposure.
Automatically set up workflows from one dashboard. Instead of managing workflows separately for each cloud environment, the organization can automate workflow creation and operation in a way that is cloud agnostic. This gives developers a standard, repeatable process to follow regardless of cloud environment and reduces the likelihood of errors.
Optimize cloud costs. Operating in more than one cloud can get very expensive. Mist helps companies track, understand and control their cloud spend across multiple providers, so that multicloud doesn't become a major business liability.
The customer discussed above adopted containers and LXD specifically for portability and the ability to run in multiple cloud environments. Combining Ubuntu, LXD, and Mist to centrally manage these environments enabled this company to take advantage of the portability that containers offer, while controlling their cloud costs. Mist makes running in multiple clouds practical, so companies can run in multiple environments without running up huge bills or spending too much engineering time on cloud management.