OVHcloud drives flash storage strategy with LXD

Canonical

on June 15, 2020

With more than 1.5 million global customers – including Sainsburys and Michelin – OVHcloud is Europe’s largest cloud computing provider, and the third largest web hosting company in the world. It goes without saying that storage is mission critical for an organisation like OVHcloud, but finding a solution that was compatible with their existing software environment was a challenge until they discovered LXD. 

The systemd challenge

OVHcloud offers a wide range of cloud-based services, and two of them – Public Cloud Block Storage, and Cloud Disk Array – rely on Ceph. About a year and a half ago, the company set its sights on creating a next-generation Ceph solution with all flash storage. However, this kind of solution would require newer versions of Ceph – versions that OVHcloud’s existing software environment could not support. 

Filip Dorosz, DevOps Engineer at OVHcloud, explains: “We quickly realised that it would be impossible to run newer Ceph releases on our legacy software because they required systemd, and we didn’t run systemd at all: neither inside the containers nor on the hosts.”

OVHcloud effectively uses containers as lightweight VMs and, at the time, it utilised Docker as an entry point. But this was an unusual use case for Docker, and not one that it was well-suited for in the long-term. It became clear that the company needed a new solution, with systemd support, that was designed for running a complete operating system within a container. 

Search for solutions

“We initially considered packaging Ceph ourselves and removing systemd,” continues Filip Dorosz. “But that would have been a lot of work for minimal value, and we would have lost the benefit of community-tested Ceph packages.”

Next, OVHcloud evaluated LXC. First launched as an open source project back in 2008, LXC has long been a staple for operating-system-level virtualisation. Since the company already used LXC as its Docker backend, it seemed like a natural choice; and it offered all the features that OVHcloud needed. The downside was ease-of-use. With LXC, OVHcloud would have had to code all of the container-related automation itself, which would have been an immense undertaking.

This is where LXD came in.

Founded and led by Canonical, LXD builds on top of LXC to deliver an enhanced, more intuitive user experience that represents the next step in system container management. It offers all the same capabilities as LXC, while enabling users to manage containers over the network through a REST API using a single command line. And just like LXC, it is free, open source software.

“I installed Ubuntu on my developer servers and then installed LXD,” says Filip Dorosz. “In just a few hours, I successfully set up a Ceph cluster running Mimic inside LXD containers. It was that easy.”

LXD at scale

LXD had emerged as the ideal solution, and now all that remained was to industrialise it for use on the enterprise scale. OVHcloud’s key requirement was a Puppet module for LXD so that it could manage containers via the host. At the time, there was no such module, so OVHcloud decided to build one itself – and it has recently open sourced the module on GitHub

The company is now moving to production with the new solution, enabling the switch to all flash storage with no HDDs. 

Filip Dorosz concludes: “Our plan is to migrate our entire legacy infrastructure – more than 50PB spanning 2,000 dedicated servers – to the LXD-based solution.”

To learn more about LXD, or to try it for yourself, visit linuxcontainers.org.

Newsletter signup

Select topics you’re
interested in

In submitting this form, I confirm that I have read and agree to Canonical’s Privacy Notice and Privacy Policy.

Related posts

We are changing the way you build snaps from GitHub repos

On the 11th March 2020 we introduced a new process for building a snap using GitHub repos to snapcraft.io. Here is all you need to know about this update....

GNOME 3.34 snapcraft extension

We constantly strive to empower developers. Part of that aim extends to making development easier, for example improving build tools and documentation. As an...

An adventure through the Snap Store

An application store with a large number of entries is a double-edged sword. It’s often a good sign of a vibrant, thriving community of software creators,...