LXD, Canonical‘s “machine container” platform, has been out now for a few months. What does the open-source company plan to do with LXD and how does it relate to Docker and other container systems? Here’s what Canonical executive Dustin Kirkland told me recently.
Based on LXC, a container technology that has been built into the Linux kernel for some time, LXD is what Canonical calls a machine container platform. That means it’s designed to run entire operating systems inside containers rather than just individual apps, as Docker does. The first production version of the platform debuted in April.
Recently, I spoke with Kirkland, who heads Ubuntu Product and Strategy for Canonical, about LXD. We discussed several points, detailed below.
LXD Use Cases: High- and Low-Density Virtualization
LXD is new and has not yet seen widespread adoption for production environments. But Kirkland told me he expects it to appeal to three main sets of users.
The first are large organizations, such as those in the finance industry, that want high-density virtual hosting. Currently, he said, companies use traditional virtual machines (think VMware) to run 50 to 100 virtual servers on top of a single physical host. According to Kirkland, LXD can help organizations to increase that density tenfold because it can support many more virtual hosts on a single physical server due to its lower overhead.
It also likely will prove valuable for organizations such as telcos, which want more access to the host machine than they can achieve using traditional hypervisors. Since it provides a containerized environment rather than complete emulation, he said, it allows interaction between the host and the guest that is not possible with the likes of VMware.
The third set of users are those seeking extremely low-density environments, Kirkland said. Because LXD containers entail less overhead than a hypervisor, they may be attractive for users who want to run even just one single virtual host on top of a physical server without sacrificing bare-metal performance. The advantage here, Kirkland explained, is that LXD can provide an easily portable and renewable virtualization environment while at the same time providing very good performance.
LXD and Docker
Kirkland emphasized, as developers have done previously, that LXD is not a Docker competitor. It’s instead a platform on which Docker can run. LXD can serve as the platform for virtual OS that hosts Docker, while Docker runs individual apps.
More generally, Kirkland said that Canonical sees Docker as part and parcel of Ubuntu’s future. That’s because Ubuntu servers are a popular platform for hosting Docker environments. And it’s why Canonical has prioritized ensuring that Docker on Ubuntu remains up to date and easy to install with a single apt-get command, Kirkland said.
The Machine Container Ecosystem
I also asked Kirkland how LXD relates to other container systems that are designed to containerize entire operating systems, rather than just individual apps as Docker does. The main alternative we discussed was OpenVZ, a container platform that has been around for about 15 years and is now the basis for a commercial offering from Virtuozzo.
(N.B.: Virtuozzo calls its containers “system containers” because they can host complete operating systems, while Canonical uses the term “machine containers” or sometimes “container machines,” but the concept is the same no matter what you call it.)
Kirkland told me that OpenVZ containers “complement but are different from LXD containers.” He added that Canonical and Virtuozzo “compete in the market but we certainly collaborate on the technology.”
He seems to view LXD’s relationship to OpenVZ, and Canonical’s relationship to Virtuozzo, as akin to, say, Red Hat’s relationship with Canonical: Everything revolves around open source, which means companies compete commercially even as they work together on the same upstream technologies that drive their products.
For the record, Virtuozzo’s Interim CEO and SVP of Worldwide Sales, Mike Riolo, told me in a separate interview that his company is interested to see where LXD goes, but noted that for the time being that it has seen little use in the market.
Perhaps in a year’s time, after LXD has established a stronger commercial presence, everyone will have a better sense of exactly where the platform fits within the burgeoning container ecosystem.