在进行kubernetes初始化的时报错
[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory "/etc/kubernetes/manifests". This can take up to 4m0s
[kubelet-check] Initial timeout of 40s passed.
[kubelet-check] It seems like the kubelet isn't running or healthy.
[kubelet-check] The HTTP call equal to 'curl -sSL http://localhost:10248/healthz' failed with error: Get "http://localhost:10248/healthz": dial tcp 127.0.0.1:10248: connect: connection refused.
Docker状态
kubelet查看报错信息
[root@master ~]# journalctl -xeu kubelet
6月 25 15:21:33 master kubelet[94145]: k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.Until(…)
6月 25 15:21:33 master kubelet[94145]: /workspace/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:90
6月 25 15:21:33 master kubelet[94145]: k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.Forever(0x479c278, 0x12a05f200)
6月 25 15:21:33 master kubelet[94145]: /workspace/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:81 +0x4f
6月 25 15:21:33 master kubelet[94145]: created by k8s.io/kubernetes/vendor/k8s.io/component-base/logs.InitLogs
6月 25 15:21:33 master systemd[1]: kubelet.service: main process exited, code=exited, status=255/n/a
6月 25 15:21:33 master kubelet[94145]: /workspace/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/k8s.io/component-base/logs/logs.go:58 +0x8a
6月 25 15:21:33 master systemd[1]: Unit kubelet.service entered failed state.
6月 25 15:21:33 master systemd[1]: kubelet.service failed.
解决办法
docker驱动与Kubelet的驱动程序不同导致
1、查看docker驱动
docker info | grep Driver # Cgroup Driver: systemd
2、查看kubelet驱动
systemctl show --property=Environment kubelet |cat
[root@master ~]# systemctl show --property=Environment kubelet |cat
Environment=KUBELET_KUBECONFIG_ARGS=–bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf KUBELET_CONFIG_ARGS=–config=/var/lib/kubelet/config.yaml
3、修改docker驱动
查看/etc/docker/daemon.json文件,没有的话手动创建,添加以下内容
[root@master ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=cgroupfs"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
4、重启docker
systemctl daemon-reload && systemctl restart docker
至此重新初始化即可!
Being with others is the beginning of being ordinary, while being alone is the beginning of being outstanding.