Move Kubernetes CNI paths to /var so they persist

Currently they will be on a read only partition so broken;
previously this would have been a non persistent read write partition
in an initramfs but this no longer works.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
This commit is contained in:
Justin Cormack 2017-08-21 12:18:53 +01:00
parent 2acb7151fb
commit 424203cd9c
3 changed files with 7 additions and 15 deletions

View File

@ -47,24 +47,20 @@ services:
- /run:/run - /run:/run
- /var:/var:rshared,rbind - /var:/var:rshared,rbind
- /var/lib/kubeadm:/etc/kubernetes - /var/lib/kubeadm:/etc/kubernetes
- /etc/cni:/etc/cni:rshared,rbind - /var/lib/cni/etc:/etc/cni:rshared,rbind
- /opt/cni:/opt/cni:rshared,rbind - /var/lib/cni/opt:/opt/cni:rshared,rbind
rootfsPropagation: shared rootfsPropagation: shared
command: ["/usr/local/bin/docker-init", "/usr/local/bin/dockerd"] command: ["/usr/local/bin/docker-init", "/usr/local/bin/dockerd"]
runtime: runtime:
mkdir: ["/var/lib/kubeadm"] mkdir: ["/var/lib/kubeadm", "/var/lib/cni/etc", "/var/lib/cni/opt"]
- name: kubernetes-image-cache-common - name: kubernetes-image-cache-common
image: linuxkitprojects/kubernetes-image-cache-common:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce image: linuxkitprojects/kubernetes-image-cache-common:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce
- name: kubernetes-image-cache-control-plane - name: kubernetes-image-cache-control-plane
image: linuxkitprojects/kubernetes-image-cache-control-plane:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce image: linuxkitprojects/kubernetes-image-cache-control-plane:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce
- name: kubelet - name: kubelet
image: linuxkitprojects/kubernetes:bbf14d70199babeea1f71f5b0bd70c1c1c9b5cd2 image: linuxkitprojects/kubernetes:bbf14d70199babeea1f71f5b0bd70c1c1c9b5cd2
runtime:
mkdir: ["/var/lib/kubeadm"]
files: files:
- path: root/.ssh/authorized_keys - path: root/.ssh/authorized_keys
source: ~/.ssh/id_rsa.pub source: ~/.ssh/id_rsa.pub
mode: "0600" mode: "0600"
optional: true optional: true
- {path: etc/cni, directory: true}
- {path: opt/cni, directory: true}

View File

@ -47,22 +47,18 @@ services:
- /run:/run - /run:/run
- /var:/var:rshared,rbind - /var:/var:rshared,rbind
- /var/lib/kubeadm:/etc/kubernetes - /var/lib/kubeadm:/etc/kubernetes
- /etc/cni:/etc/cni:rshared,rbind - /var/lib/cni/etc:/etc/cni:rshared,rbind
- /opt/cni:/opt/cni:rshared,rbind - /var/lib/cni/opt:/opt/cni:rshared,rbind
rootfsPropagation: shared rootfsPropagation: shared
command: ["/usr/local/bin/docker-init", "/usr/local/bin/dockerd"] command: ["/usr/local/bin/docker-init", "/usr/local/bin/dockerd"]
runtime: runtime:
mkdir: ["/var/lib/kubeadm"] mkdir: ["/var/lib/kubeadm", "/var/lib/cni/etc", "/var/lib/cni/opt"]
- name: kubernetes-image-cache-common - name: kubernetes-image-cache-common
image: linuxkitprojects/kubernetes-image-cache-common:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce image: linuxkitprojects/kubernetes-image-cache-common:ba16b1f8cfe4f415a5946d521e59f67eaeecd9ce
- name: kubelet - name: kubelet
image: linuxkitprojects/kubernetes:bbf14d70199babeea1f71f5b0bd70c1c1c9b5cd2 image: linuxkitprojects/kubernetes:bbf14d70199babeea1f71f5b0bd70c1c1c9b5cd2
runtime:
mkdir: ["/var/lib/kubeadm"]
files: files:
- path: root/.ssh/authorized_keys - path: root/.ssh/authorized_keys
source: ~/.ssh/id_rsa.pub source: ~/.ssh/id_rsa.pub
mode: "0600" mode: "0600"
optional: true optional: true
- {path: etc/cni, directory: true}
- {path: opt/cni, directory: true}

View File

@ -49,4 +49,4 @@ WORKDIR /
ENTRYPOINT ["/usr/bin/kubelet.sh"] ENTRYPOINT ["/usr/bin/kubelet.sh"]
COPY --from=build /out / COPY --from=build /out /
ENV KUBECONFIG "/etc/kubernetes/admin.conf" ENV KUBECONFIG "/etc/kubernetes/admin.conf"
LABEL org.mobyproject.config='{"binds": ["/dev:/dev", "/etc/resolv.conf:/etc/resolv.conf", "/run:/run", "/var:/var:rshared,rbind", "/var/lib/kubeadm:/etc/kubernetes", "/etc/cni:/rootfs/etc/cni:rshared,rbind", "/opt/cni:/rootfs/opt/cni:rshared,rbind"], "mounts": [{"type": "cgroup", "options": ["rw","nosuid","noexec","nodev","relatime"]}], "capabilities": ["all"], "rootfsPropagation": "shared", "pid": "host"}' LABEL org.mobyproject.config='{"binds": ["/dev:/dev", "/etc/resolv.conf:/etc/resolv.conf", "/run:/run", "/var:/var:rshared,rbind", "/var/lib/kubeadm:/etc/kubernetes", "/var/lib/cni/etc:/rootfs/etc/cni:rshared,rbind", "/var/lib/cni/opt:/rootfs/opt/cni:rshared,rbind"], "mounts": [{"type": "cgroup", "options": ["rw","nosuid","noexec","nodev","relatime"]}], "capabilities": ["all"], "rootfsPropagation": "shared", "pid": "host", "runtime": {"mkdir": ["/var/lib/kubeadm", "/var/lib/cni/etc", "/var/lib/cni/opt"]}}'