问题遇到的现象和发生背景
初始化master节点时报错
[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.
Unfortunately, an error has occurred:
timed out waiting for the condition
This error is likely caused by:
- The kubelet is not running
- The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled)
If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands:
- 'systemctl status kubelet'
- 'journalctl -xeu kubelet'
Additionally, a control plane component may have crashed or exited when started by the container runtime.
To troubleshoot, list all containers using your preferred container runtimes CLI, e.g. docker.
Here is one example how you may list all Kubernetes containers running in docker:
- 'docker ps -a | grep kube | grep -v pause'
Once you have found the failing container, you can inspect its logs with:
- 'docker logs CONTAINERID'
error execution phase wait-control-plane: couldn't initialize a Kubernetes cluster
To see the stack trace of this error execute with --v=5 or higher
查看到的kubelet日志内容如下
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.945771 113541 server.go:416] Version: v1.17.4
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.947010 113541 plugins.go:100] No cloud provider specified.
Feb 28 11:48:20 master kubelet[113541]: W0228 11:48:20.947044 113541 server.go:555] standalone mode, no API client
Feb 28 11:48:20 master kubelet[113541]: W0228 11:48:20.969387 113541 server.go:473] No api server defined - no events will be sent to API server.
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.969417 113541 server.go:641] --cgroups-per-qos enabled, but --cgroup-root was not specified. defaulting to /
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.969607 113541 container_manager_linux.go:265] container manager verified user specified cgroup-root exists: []
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.969614 113541 container_manager_linux.go:270] Creating Container Manager object based on Node Config: {RuntimeCgroupsName: Sy
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.969996 113541 fake_topology_manager.go:29] [fake topologymanager] NewFakeManager
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970002 113541 container_manager_linux.go:305] Creating device plugin manager: true
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970016 113541 fake_topology_manager.go:39] [fake topologymanager] AddHintProvider HintProvider: &{kubelet.sock /var/lib/kube
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970037 113541 state_mem.go:36] [cpumanager] initializing new in-memory state store
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970090 113541 state_mem.go:84] [cpumanager] updated default cpuset: ""
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970093 113541 state_mem.go:92] [cpumanager] updated cpuset assignments: "map[]"
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.970098 113541 fake_topology_manager.go:39] [fake topologymanager] AddHintProvider HintProvider: &{{0 0} 0x6ea6db8 1000000000
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.973669 113541 client.go:75] Connecting to docker on unix:///var/run/docker.sock
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.973705 113541 client.go:104] Start docker client with request timeout=2m0s
Feb 28 11:48:20 master kubelet[113541]: W0228 11:48:20.975078 113541 docker_service.go:563] Hairpin mode set to "promiscuous-bridge" but kubenet is not enabled, falling back to "ha
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.975097 113541 docker_service.go:240] Hairpin mode set to "hairpin-veth"
Feb 28 11:48:20 master kubelet[113541]: W0228 11:48:20.975158 113541 cni.go:237] Unable to update cni config: no networks found in /etc/cni/net.d
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.979484 113541 docker_service.go:255] Docker cri networking managed by kubernetes.io/no-op
Feb 28 11:48:20 master kubelet[113541]: I0228 11:48:20.993250 113541 docker_service.go:260] Docker Info: &{ID:NY4G:A7J3:S35W:ZTPA:Y5RP:TQUI:72IT:VILL:MZJK:M7RQ:4LG3:2CEE Containers
Feb 28 11:48:20 master kubelet[113541]: F0228 11:48:20.993313 113541 server.go:273] failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "cgrou
Feb 28 11:48:20 master systemd[1]: kubelet.service: Main process exited, code=exited, status=255/n/a
Feb 28 11:48:20 master systemd[1]: kubelet.service: Failed with result 'exit-code'.
操作环境、软件版本等信息
Ubuntu18.04
docker 18.06.3
kubeadm kubelet kubectl 1.17.4
尝试过的解决方法
修改驱动为systemd
依然不能成功
我想要达到的结果
完成master节点的初始化