Kubernetes dependencies kubelet and master processes

2/11/2016

On CoreOS, Kuberenetes master processes (apiserver, kube-proxy, controller-manager and podmaster) run in Docker, while the kubelet process runs as a systemd process outside Docker.

Would it be recommended to run the master processes V1.1+ and kubelet V1.0.3 together on the master host?

The reason I am asking is that CentOS Atomic Host ships with Kubernetes V1.0.3, but we would like to upgrade the master processes to V1.1.+ by running it in Docker instead of as system services directly on the opsys (CentOS intends to run all components as systemd services).

Thanks, Andrej

-- Andrej
coreos
fedora
kubernetes

1 Answer

2/11/2016

I'm an advocate of running all Kubernetes services directly on the OS so forgive me if my answer is very opinionionated.

You have to ask yourself if running everything in a container makes sense at such a low level, considering that you have to mount so many libs from your host and can't benefit from systemd's journal while your services run in containers. In my case the benefit was not obvious.

On top of that, as you mentioned, running kubelet inside a container is not 100% supported yet. Running Kubernetes using systemd services is also a totally valid pattern technically speaking, so you shouldn't avoid updates invoking the reason that you can't run everything inside a container. However you should not mix versions (1.0 and 1.1)

-- Antoine Cotten
Source: StackOverflow