From d73cf1322d3220410b116fb5e0ed31d9f6d73f5c Mon Sep 17 00:00:00 2001 From: networkop Date: Tue, 27 Jul 2021 08:44:44 +0100 Subject: [PATCH 1/3] Added WSL2 workaround for kubelet --- .../files/etc/systemd/system/kubelet.service.d/10-kubeadm.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/images/base/files/etc/systemd/system/kubelet.service.d/10-kubeadm.conf b/images/base/files/etc/systemd/system/kubelet.service.d/10-kubeadm.conf index 04fd985301..ce74589adb 100644 --- a/images/base/files/etc/systemd/system/kubelet.service.d/10-kubeadm.conf +++ b/images/base/files/etc/systemd/system/kubelet.service.d/10-kubeadm.conf @@ -11,5 +11,8 @@ EnvironmentFile=-/etc/default/kubelet # On cgroup v1, the /kubelet cgroup is created in the entrypoint script before running systemd. # On cgroup v2, the /kubelet cgroup is created here. (See the comments in the entrypoint script for the reason.) ExecStartPre=/bin/sh -euc "if [ -f /sys/fs/cgroup/cgroup.controllers ]; then create-kubelet-cgroup-v2; fi" +# on WSL2 (and potentially other distros without systemd) /sys/fs/cgroup/systemd is created after the entrypoint, during /sbin/init. +# This eventually leads to kubelet failing to start, see: https://github.com/kubernetes-sigs/kind/issues/2323 +ExecStartPre=/bin/sh -euc "if [ ! -f /sys/fs/cgroup/cgroup.controllers ] && [ ! -d /sys/fs/cgroup/systemd/kubelet ]; then mkdir -p /sys/fs/cgroup/systemd/kubelet; fi" ExecStart= ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS --cgroup-root=/kubelet From de1f24525ed8e297e373a87a43cf2fde5fbb0454 Mon Sep 17 00:00:00 2001 From: Benjamin Elder Date: Wed, 25 Aug 2021 12:49:02 -0700 Subject: [PATCH 2/3] bump base image --- pkg/build/nodeimage/defaults.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/build/nodeimage/defaults.go b/pkg/build/nodeimage/defaults.go index 52222b2ed4..9a3988de3a 100644 --- a/pkg/build/nodeimage/defaults.go +++ b/pkg/build/nodeimage/defaults.go @@ -20,4 +20,4 @@ package nodeimage const DefaultImage = "kindest/node:latest" // DefaultBaseImage is the default base image used -const DefaultBaseImage = "docker.io/kindest/base:v20210825-cb7eab3f" +const DefaultBaseImage = "docker.io/kindest/base:v20210825-547e6628" From 0fe7ec5bf48eb07bb9eb1ea418e8860186d623c1 Mon Sep 17 00:00:00 2001 From: Benjamin Elder Date: Wed, 25 Aug 2021 14:06:20 -0700 Subject: [PATCH 3/3] bump node image --- pkg/apis/config/defaults/image.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/apis/config/defaults/image.go b/pkg/apis/config/defaults/image.go index c5bfedb1fa..fa3db500df 100644 --- a/pkg/apis/config/defaults/image.go +++ b/pkg/apis/config/defaults/image.go @@ -18,4 +18,4 @@ limitations under the License. package defaults // Image is the default for the Config.Image field, aka the default node image. -const Image = "kindest/node:v1.22.1@sha256:2f8d6b023f2b443bfa283a92ef8c02f9665e5fe1d1347ca1f61693d2b04f01fd" +const Image = "kindest/node:v1.22.1@sha256:e0bf222d7dd1589075117c51740903017b328c59ffb0c3d97187a2b3de1f92b3"