Stéphane Graber

Stéphane Graber

63 posts

Software Engineer

Stéphane Graber is the former technical lead for LXD at Canonical Ltd. Stéphane has been involved with Ubuntu for years and currently sits on the Ubuntu Technical Board and Ubuntu Developer Membership board. He is a member of the Ubuntu Release team as well as an Ubuntu Archive administrator and Ubuntu Stable Release team member. Outside of his work on containers, Stéphane also has very strong networking knowledge as the former maintainer of the Ubuntu networking stack and large scale system administration knowledge from previous jobs. Stéphane is one of the organizers of the Containers mini-summit during the Linux Plumbers Conference, a regular presenter at LinuxCon and has been involved in many other Ubuntu and container specific events and hackfests.


Stéphane Graber
27 February 2017

LXD client on Windows and macOS

Article Cloud and server

LXD on other operating systems? While LXD and especially its API have been designed in a mostly OS-agnostic way, the only OS supported for the daemon right now is Linux (and a rather recent Linux at that). However since all … Continue reading →

Stéphane Graber
27 February 2017


Stéphane Graber
27 February 2017

LXD 2.0: Debugging and contributing to LXD [12/12]

Article Cloud and server

This is the twelfth and last blog post in this series about LXD 2.0. Introduction This is finally it! The last blog post in this series of 12 that started almost a year ago. If you followed the series from the beginning, … Continue reading →

Stéphane Graber
27 February 2017


Stéphane Graber
27 February 2017

Ubuntu Core in LXD containers

Article Cloud and server

What’s Ubuntu Core? Ubuntu Core is a version of Ubuntu that’s fully transactional and entirely based on snap packages. Most of the system is read-only. All installed applications come from snap packages and all updates are done using transactions. Meaning … Continue reading →

Stéphane Graber
27 February 2017


Stéphane Graber
22 February 2017

LXD on Debian (using snapd)

Article Cloud and server

Introduction So far all my blog posts about LXD have been assuming an Ubuntu host with LXD installed from packages, as a snap or from source. But LXD is perfectly happy to run on any Linux distribution which has the … Continue reading →

Stéphane Graber
22 February 2017


Stéphane Graber
20 February 2017

Running Kubernetes inside LXD

Article Cloud and server

Introduction For those who haven’t heard of Kubernetes before, it’s defined by the upstream project as: Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical … Continue reading →

Stéphane Graber
20 February 2017


Stéphane Graber
14 February 2017

Network management with LXD (2.3+)

Article Cloud and server

Introduction When LXD 2.0 shipped with Ubuntu 16.04, LXD networking was pretty simple. You could either use that “lxdbr0” bridge that “lxd init” would have you configure, provide your own or just use an existing physical interface for your containers. … Continue reading →

Stéphane Graber
14 February 2017


Stéphane Graber
7 December 2016

LXD 2.0: LXD and OpenStack [11/12]

Article Cloud and server

This is the eleventh blog post in this series about LXD 2.0. Introduction First of all, sorry for the delay. It took quite a long time before I finally managed to get all of this going. My first attempts were using devstack which ran into a number of issues that had to be resolved. Yet

Stéphane Graber
7 December 2016


Stéphane Graber
8 June 2016

LXD 2.0: LXD and Juju [10/12]

Article Cloud and server

Juju is Canonical’s service modeling and deployment tool. It supports a very wide range of cloud providers to make it easy for you to deploy any service you want on any cloud you want.On top of that, Juju 2.0 also includes support for LXD, both for local deployments, ideal for development and as a way to co-locate...

Stéphane Graber
8 June 2016


Stéphane Graber
25 April 2016

LXD 2.0: Live migration [9/12]

Article Cloud and server

This is the ninth blog post in this series about LXD 2.0.IntroductionOne of the very exciting feature of LXD 2.0, albeit experimental, is the support for container checkpoint and restore.Simply put, checkpoint/restore means that the running container state can be serialized down to disk and then restored, either on the...

Stéphane Graber
25 April 2016


Stéphane Graber
18 April 2016

Directly interacting with the LXD API

Article Cloud and server

The next post in the LXD series is currently blocked on a pending kernel fix, so I figured I’d do an out of series post on how to use the LXD API directly.Setting up the LXD daemonThe LXD REST API can be accessed over either a local Unix socket or over HTTPs. The protocol in both case is identical, the only difference...

Stéphane Graber
18 April 2016


Stéphane Graber
15 April 2016

LXD 2.0: LXD in LXD [8/12]

Article Cloud and server

This is the eighth blog post in this series about LXD 2.0.IntroductionIn the previous post I covered how to run Docker inside LXD which is a good way to get access to the portfolio of application provided by Docker while running in the safety of the LXD environment.One use case I mentioned was offering a LXD container...

Stéphane Graber
15 April 2016


Stéphane Graber
13 April 2016

LXD 2.0: Docker in LXD [7/12]

Article Cloud and server

This is the seventh blog post in this series about LXD 2.0.Why run Docker inside LXDAs I briefly covered in the first post of this series, LXD’s focus is system containers. That is, we run a full unmodified Linux distribution inside our containers. LXD for all intent and purposes doesn’t care about the workload running...

Stéphane Graber
13 April 2016


Stéphane Graber
12 April 2016

LXD 2.0: Remote hosts and container migration [6/12]

Article Cloud and server

This is the sixth blog post in this series about LXD 2.0.Remote protocolsLXD 2.0 supports two protocols:LXD 1.0 API: That’s the REST API used between the clients and a LXD daemon as well as between LXD daemons when copying/moving images and containers.Simplestreams: The Simplestreams protocol is a read-only, image-only...

Stéphane Graber
12 April 2016


Stéphane Graber
1 April 2016

LXD 2.0: Image management [5/12]

Article Cloud and server

This is the fifth blog post in this series about LXD 2.0.Container imagesIf you’ve used LXC before, you probably remember those LXC “templates”, basically shell scripts that spit out a container filesystem and a bit of configuration.Most templates generate the filesystem by doing a full distribution bootstrapping on...

Stéphane Graber
1 April 2016