[lxc-devel] Integration Kubernetes and LXD/LXC

Christian Brauner christian at brauner.io
Mon Oct 1 16:38:00 UTC 2018


Hi Oli,

On Mon, Oct 01, 2018 at 06:20:30PM +0200, Oliver Schad wrote:
> Hi everybody,
> 
> first I want to thank the community around LXC and Canonical for this
> great peace of software.

Well, thank you I guess. :)

> 
> We do a lot in the area of Kubernetes and integrated LXC/LXD with
> Kubernetes through CRI - therefore we added this interface inside it's
> own daemon, which then controls LXD.
> 
> We called this daemon LXE.
> 
> Why?
> 
> Kubernetes has a lot of infrastructure for containers and more and more
> integration is done within that. So it makes sense to try to use that
> as good as possible.
> 
> But: the existing container runtimes are more or less build to be
> restarted (on change, on failure, on bugs, on almost everything). On the
> other hand, stateful applications needs to stay online - as much as
> possible. Yes, even a cassandra cluster doesn't like a lot of
> restarting. No, MySQL and PostgreSQL just die, if you restart the
> master and no: multi-master doesn't work for every use case.
> 
> Does a mission critical project like downtimes? It's not our experience
> that business likes that.
> 
> So there is a clear difference in the design goals of something like
> Docker with immuteable storage and something like LXC. In fact, most
> container engines really sucks in terms of handling state. But we're
> lucky, LXC shines bright in the area of handling state.
> 
> Bring LXC to Kubernetes
> 
> So in fact, we've done it. Kubernetes works together with LXC/LXD and
> you can do "kubectl get pods", "kubectl create" and so on and you have
> exactly one API for all your platform services and applications.
> Configmaps with LXC? Works.

That all sounds very interesting. One thing I'm unclear about is what
exactly you integrated: LXC or LXD, i.e. are you using the LXC C api
directly or are you using the LXD go client api?

> 
> Do you like it?
> 
> For us it really makes sense. If there is a clear demand in the
> community to have a kubernetes integration, we try to bring that
> project to the public.

We've had multiple requests by people. So I'm sure this is something
people would be very interested in.
We also had some people telling us that they were working on this but so
far I haven't seen anyone actually doing the implementation.
Is the code for this accessible already? I'd be very interested to take
look even just to see what this looks like. :)

Christian

> 
> Best Regards
> Oli



> _______________________________________________
> lxc-devel mailing list
> lxc-devel at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-devel



More information about the lxc-devel mailing list