git.iko.soy/typeable/nixpkgs
on master help sign in
nixos/kubernetes: actually set containerd to use systemd cgroups

The correct configuration is listed in the kubernetes documentation https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd-systemd The correct option can also be seen in `containerd config default`

commit97864e984d89248e74b13be175a1cfe9e16d984e authorThomas Dy <thatsmydoing@gmail.com> dateSat 18 Dec 2021, 22:18 (5 years ago) parent2d356a1
3 files changed+1−13
nixos/modules/services/cluster/kubernetes/default.nix+1−4 nixos/modules/services/cluster/kubernetes/kubelet.nix−2 nixos/tests/kubernetes/base.nix−7
nixos/modules/services/cluster/kubernetes/default.nix+1−4
@@ -26,10 +26,7 @@ let
2626
2727 containerd.runtimes.runc = {
2828 runtime_type = "io.containerd.runc.v2";
29− };
30−
31− containerd.runtimes."io.containerd.runc.v2".options = {
32− SystemdCgroup = true;
29+ options.SystemdCgroup = true;
3330 };
3431 };
3532 };
nixos/modules/services/cluster/kubernetes/kubelet.nix−2
@@ -264,8 +264,6 @@ in
264264 "net.bridge.bridge-nf-call-ip6tables" = 1;
265265 };
266266
267− systemd.enableUnifiedCgroupHierarchy = false; # true breaks node memory metrics
268−
269267 systemd.services.kubelet = {
270268 description = "Kubernetes Kubelet Service";
271269 wantedBy = [ "kubernetes.target" ];
nixos/tests/kubernetes/base.nix−7
@@ -60,13 +60,6 @@ let
6060 advertiseAddress = master.ip;
6161 };
6262 masterAddress = "${masterName}.${config.networking.domain}";
63− # workaround for:
64− # https://github.com/kubernetes/kubernetes/issues/102676
65− # (workaround from) https://github.com/kubernetes/kubernetes/issues/95488
66− kubelet.extraOpts = ''\
67− --cgroups-per-qos=false \
68− --enforce-node-allocatable="" \
69− '';
7063 };
7164 }
7265 (optionalAttrs (any (role: role == "master") machine.roles) {