Comparez les prix des domaines et des services informatiques des vendeurs du monde entier

Configuration du pilote incorrect cgroup Kubernetes

Installation Docker Par défaut B. CentOS commencer avec

systemd

Cgroup. J'ai installé Kubernetes Du référentiel officiel YUM et systemd

drop-in 10-kubeadm.conf

Il a le contenu suivant:

[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true"
Environment="KUBELET_NETWORK_ARGS=--network-plugin=cni --cni-conf-dir=/etc/cni/net.d --cni-bin-dir=/opt/cni/bin"
Environment="KUBELET_DNS_ARGS=--cluster-dns=10.96.0.10 --cluster-domain=cluster.local"
Environment="KUBELET_AUTHZ_ARGS=--authorization-mode=Webhook --client-ca-file=/etc/kubernetes/pki/ca.crt"
Environment="KUBELET_CADVISOR_ARGS=--cadvisor-port=0"
Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd"
Environment="KUBELET_CERTIFICATE_ARGS=--rotate-certificates=true --cert-dir=/var/lib/kubelet/pki"
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_AUTHZ_ARGS $KUBELET_CADVISOR_ARGS $KUBELET_CGROUP_ARGS $KUBELET_CERTIFICATE_ARGS $KUBELET_EXTRA_ARGS

J'ai également essayé d'obtenir des environnements variables pour voir s'il s'avère correctement systemd drop-in (

systemctl show --property=Environment kubelet | cat

):

Environment=KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf\x20--kubeconfig=/etc/kubernetes/kubelet.conf KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests\x20--allow-privileged=true KUBELET_NETWORK_ARGS=--network-plugin=cni\x20--cni-conf-dir=/etc/cni/net.d\x20--cni-bin-dir=/opt/cni/bin KUBELET_DNS_ARGS=--cluster-dns=10.96.0.10\x20--cluster-domain=cluster.local KUBELET_AUTHZ_ARGS=--authorization-mode=Webhook\x20--client-ca-file=/etc/kubernetes/pki/ca.crt KUBELET_CADVISOR_ARGS=--cadvisor-port=0 KUBELET_CGROUP_ARGS=--cgroup-driver=systemd KUBELET_CERTIFICATE_ARGS=--rotate-certificates=true\x20--cert-dir=/var/lib/kubelet/pki

Quand j'initialise le cluster en utilisant

kubeadm init --apiserver-advertise-address=X.X.X.X --pod-network-cidr=10.244.0.0/16

, Le processus a été réussi. Cependant, courez.

kubelet version

me donne une erreur de la mauvaise configuration Cgroup:

error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "cgroupfs" is different from docker cgroup driver: "systemd"

Version

CentOS Linux version 7.4.1708 (Core)

Version Kubernetes (

kubectl version

): 1.9 (GitVersion: 1.9.1; Version Go: go1.9.2)

Version du docker (

docker version

): 1.12.6

Quelle est la bonne solution à ce problème? J'ai essayé de changer Cgroup Kubernetes sur cgroupfs, mais kubeadm continué à me donner une erreur «kubelet Ne répond pas. " Comment puis-je avoir Kubernetes Prenez le paramètre transmis CGroup?
Invité:

Emilie

Confirmation de:

Salut étaient les mêmes problèmes. Vous devez vous assurer que Docker et Kubelet travailler avec le même pilote cgroup.

DANS Centos Docker Courir B. cgroupfs, et kubelet - dans cgroup systemd. Pour le changer, vous devez suivre la documentation Kubelet:
https://kubernetes.io/docs/set ... -node
Pour le réparer, vous avez besoin de:

sed -i "s/cgroup-driver=systemd/cgroup-driver=cgroupfs/g" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf

Puis redémarrez les gouttes

systemctl daemon-reload
systemctl restart kubelet

Babette

Confirmation de:

Changement de fichier / etc / sysconfig / kubelet, Lorsque vous spécifiez votre valeur cgroup-driver, par exemple:

KUBELET_EXTRA_ARGS=--cgroup-driver=<value>

Pour obtenir le vôtre

Chauffeur Docker Cgroup

:

docker info | grep -i 'cgroup driver'

Puis redémarrez

démon systemd

et redémarrer

Cubestre

:

systemctl daemon-reload
systemctl restart kubelet

</value>

Pour répondre aux questions, connectez-vous ou registre