From 3398013249fea8a03652a24887ff8caa5daa3ca5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20F=20Bj=C3=B6rklund?= Date: Sat, 15 Feb 2020 12:32:25 +0100 Subject: [PATCH] Change cgroup driver from cgroupfs to systemd The minikube iso is using systemd, so change the container runtime to use the same cgroup manager instead of the default (cgroupfs). Avoids kubeadm init message: [WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Also change the configuration for the containerd and cri-o runtimes. --- .../minikube-iso/package/containerd-bin/config.toml | 2 +- deploy/iso/minikube-iso/package/crio-bin/crio.conf | 2 +- deploy/iso/minikube-iso/package/docker-bin/daemon.json | 10 ++++++++++ .../iso/minikube-iso/package/docker-bin/docker-bin.mk | 6 ++++++ 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 deploy/iso/minikube-iso/package/docker-bin/daemon.json diff --git a/deploy/iso/minikube-iso/package/containerd-bin/config.toml b/deploy/iso/minikube-iso/package/containerd-bin/config.toml index 6a64bb6e5c..be3a0cf471 100644 --- a/deploy/iso/minikube-iso/package/containerd-bin/config.toml +++ b/deploy/iso/minikube-iso/package/containerd-bin/config.toml @@ -31,7 +31,7 @@ oom_score = 0 enable_selinux = false sandbox_image = "k8s.gcr.io/pause:3.1" stats_collect_period = 10 - systemd_cgroup = false + systemd_cgroup = true enable_tls_streaming = false max_container_log_line_size = 16384 [plugins.cri.containerd] diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio.conf b/deploy/iso/minikube-iso/package/crio-bin/crio.conf index d473a85d8c..36dc1725ea 100644 --- a/deploy/iso/minikube-iso/package/crio-bin/crio.conf +++ b/deploy/iso/minikube-iso/package/crio-bin/crio.conf @@ -120,7 +120,7 @@ seccomp_profile = "" apparmor_profile = "crio-default-1.16.1" # Cgroup management implementation used for the runtime. -cgroup_manager = "cgroupfs" +cgroup_manager = "systemd" # List of default capabilities for containers. If it is empty or commented out, # only the capabilities defined in the containers json file by the user/kube diff --git a/deploy/iso/minikube-iso/package/docker-bin/daemon.json b/deploy/iso/minikube-iso/package/docker-bin/daemon.json new file mode 100644 index 0000000000..46c2107f11 --- /dev/null +++ b/deploy/iso/minikube-iso/package/docker-bin/daemon.json @@ -0,0 +1,10 @@ +{ + "exec-opts": [ + "native.cgroupdriver=systemd" + ], + "log-driver": "json-file", + "log-opts": { + "max-size": "100m" + }, + "storage-driver": "overlay2" +} diff --git a/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk b/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk index 2cafaadc6b..81978dbfd9 100644 --- a/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk +++ b/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk @@ -34,6 +34,12 @@ define DOCKER_BIN_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 \ $(@D)/docker-proxy \ $(TARGET_DIR)/bin/docker-proxy + + # https://kubernetes.io/docs/setup/production-environment/container-runtimes/#docker + + $(INSTALL) -Dm644 \ + $(DOCKER_BIN_PKGDIR)/daemon.json \ + $(TARGET_DIR)/etc/docker/daemon.json endef define DOCKER_BIN_INSTALL_INIT_SYSTEMD