diff --git a/projects/kubernetes/Makefile b/projects/kubernetes/Makefile index 52042d299..10e0a388b 100644 --- a/projects/kubernetes/Makefile +++ b/projects/kubernetes/Makefile @@ -13,13 +13,13 @@ KUBE_FORMAT_ARGS := $(patsubst %,-format %,$(KUBE_FORMATS)) all: build-container-images build-vm-images build-container-images: - linuxkit pkg build kubernetes + linuxkit pkg build kubelet build-cache-images: $(MAKE) -C image-cache build push-container-images: - linuxkit pkg push kubernetes + linuxkit pkg push kubelet $(MAKE) -C image-cache push build-vm-images: kube-master.iso kube-node.iso diff --git a/projects/kubernetes/boot.sh b/projects/kubernetes/boot.sh index 0970fbebd..f404c3fc1 100755 --- a/projects/kubernetes/boot.sh +++ b/projects/kubernetes/boot.sh @@ -28,14 +28,10 @@ if [ $# -eq 0 ] ; then # then we configure for auto init. If it is completely unset then # we do not. if [ -n "${KUBE_MASTER_AUTOINIT+x}" ] ; then - kubeadm_data="${kubeadm_data+$kubeadm_data, }\"init\": \"${KUBE_MASTER_AUTOINIT}\"" + kubeadm_data="${kubeadm_data+$kubeadm_data, }\"init\": { \"content\": \"${KUBE_MASTER_AUTOINIT}\" }" fi if [ "${KUBE_MASTER_UNTAINT}" = "y" ] ; then - kubeadm_data="${kubeadm_data+$kubeadm_data, }\"untaint-master\": \"\"" - fi - - if [ -n "${kubeadm_data}" ] ; then - data="{ \"kubeadm\": { ${kubeadm_data} } }" + kubeadm_data="${kubeadm_data+$kubeadm_data, }\"untaint-master\": { \"content\": \"\" }" fi state="kube-master-state" @@ -60,7 +56,7 @@ elif [ $# -ge 1 ] ; then shift if [ $# -ge 1 ] ; then - data="{\"kubeadm\": {\"join\": \"${*}\"} }" + kubeadm_data="\"join\": { \"content\": \"${*}\" }" fi state="kube-${name}-state" @@ -76,6 +72,7 @@ else echo " ${0} " exit 1 fi + set -x if [ -n "${KUBE_CLEAR_STATE}" ] ; then rm -rf "${state}" @@ -84,4 +81,10 @@ if [ -n "${KUBE_CLEAR_STATE}" ] ; then echo -n "${KUBE_MAC}" > "${state}"/mac-addr fi fi -linuxkit run ${KUBE_RUN_ARGS} -networking ${KUBE_NETWORKING} -cpus ${KUBE_VCPUS} -mem ${KUBE_MEM} -state "${state}" -disk size=${KUBE_DISK} -data "${data}" ${uefi} "${img}${suffix}" + +touch $state/metadata.json +if [ -n "${kubeadm_data}" ] ; then + echo "{ \"kubeadm\": { \"entries\": { ${kubeadm_data} } } }" > $state/metadata.json +fi + +linuxkit run ${KUBE_RUN_ARGS} -networking ${KUBE_NETWORKING} -cpus ${KUBE_VCPUS} -mem ${KUBE_MEM} -state "${state}" -disk size=${KUBE_DISK} -data $state/metadata.json ${uefi} "${img}${suffix}" diff --git a/projects/kubernetes/docker-master.yml b/projects/kubernetes/docker-master.yml index 3ba339b79..75112cf46 100644 --- a/projects/kubernetes/docker-master.yml +++ b/projects/kubernetes/docker-master.yml @@ -1,3 +1,3 @@ services: - - name: kubernetes-image-cache-control-plane - image: linuxkitprojects/kubernetes-image-cache-control-plane:77fd430bba18ed06d2128e9e8b45767b6fa39178 + - name: kubernetes-docker-image-cache-control-plane + image: linuxkitprojects/kubernetes-docker-image-cache-control-plane:02d28e234458f29277f175e68fdca028403b3ed8 diff --git a/projects/kubernetes/docker.yml b/projects/kubernetes/docker.yml index e7b277be2..511fad0b2 100644 --- a/projects/kubernetes/docker.yml +++ b/projects/kubernetes/docker.yml @@ -22,8 +22,8 @@ services: command: ["/usr/local/bin/docker-init", "/usr/local/bin/dockerd"] runtime: mkdir: ["/var/lib/kubeadm", "/var/lib/cni/etc", "/var/lib/cni/opt", "/var/lib/kubelet-plugins"] - - name: kubernetes-image-cache-common - image: linuxkitprojects/kubernetes-image-cache-common:77fd430bba18ed06d2128e9e8b45767b6fa39178 + - name: kubernetes-docker-image-cache-common + image: linuxkitprojects/kubernetes-docker-image-cache-common:02d28e234458f29277f175e68fdca028403b3ed8 files: - path: /etc/kubelet.sh.conf contents: "" diff --git a/projects/kubernetes/image-cache/build.yml.in b/projects/kubernetes/image-cache/build.yml.in index c7dee1e61..2b9a26c43 100644 --- a/projects/kubernetes/image-cache/build.yml.in +++ b/projects/kubernetes/image-cache/build.yml.in @@ -1,5 +1,5 @@ org: linuxkitprojects -image: kubernetes-image-cache-@@CACHE@@ +image: kubernetes-docker-image-cache-@@CACHE@@ disable-content-trust: true arches: - amd64 diff --git a/projects/kubernetes/kube.yml b/projects/kubernetes/kube.yml index effc06831..934403e55 100644 --- a/projects/kubernetes/kube.yml +++ b/projects/kubernetes/kube.yml @@ -18,7 +18,7 @@ onboot: image: linuxkit/dhcpcd:48831507404049660b960e4055f544917d90378e command: ["/sbin/dhcpcd", "--nobackground", "-f", "/dhcpcd.conf", "-1"] - name: metadata - image: linuxkit/metadata:9506d124d0a3ff645c9781c47f207423abf6154d + image: linuxkit/metadata:026aca5c08c22589a7e319f79449bef2c65f04c5 - name: format image: linuxkit/format:10e75e78e1f134d310c62e9a0352df1c67b0dd81 - name: mounts @@ -36,7 +36,7 @@ services: - name: sshd image: linuxkit/sshd:b7f21ef1b13300a994e35eac3644e4f84f0ada8a - name: kubelet - image: linuxkitprojects/kubernetes:a2693a182f9038d6ac5f7309f4678a9ad11d39ca + image: linuxkitprojects/kubelet:4f93f02fb13f8c3e98e922afb2ef8cd1e0da66b3 files: - path: etc/linuxkit.yml metadata: yaml diff --git a/projects/kubernetes/kubernetes/Dockerfile b/projects/kubernetes/kubelet/Dockerfile similarity index 100% rename from projects/kubernetes/kubernetes/Dockerfile rename to projects/kubernetes/kubelet/Dockerfile diff --git a/projects/kubernetes/kubernetes/build.yml b/projects/kubernetes/kubelet/build.yml similarity index 82% rename from projects/kubernetes/kubernetes/build.yml rename to projects/kubernetes/kubelet/build.yml index 878b405d2..05c64c46d 100644 --- a/projects/kubernetes/kubernetes/build.yml +++ b/projects/kubernetes/kubelet/build.yml @@ -1,5 +1,5 @@ org: linuxkitprojects -image: kubernetes +image: kubelet network: true disable-content-trust: true arches: diff --git a/projects/kubernetes/kubernetes/kubeadm-init.sh b/projects/kubernetes/kubelet/kubeadm-init.sh similarity index 100% rename from projects/kubernetes/kubernetes/kubeadm-init.sh rename to projects/kubernetes/kubelet/kubeadm-init.sh diff --git a/projects/kubernetes/kubernetes/kubelet.sh b/projects/kubernetes/kubelet/kubelet.sh similarity index 100% rename from projects/kubernetes/kubernetes/kubelet.sh rename to projects/kubernetes/kubelet/kubelet.sh diff --git a/projects/kubernetes/weave.yml b/projects/kubernetes/weave.yml index c410bf747..521b41ca5 100644 --- a/projects/kubernetes/weave.yml +++ b/projects/kubernetes/weave.yml @@ -1,3 +1,3 @@ files: - path: /etc/kubeadm/kube-system.init/50-weave.yaml - source: weave-sa.yaml + source: kube-weave.yaml