我在centos 8上安装了microk8s。启动microk8s时,根据以下错误失败。
$ cat /etc/centos-release
CentOS Linux release 8.3.2011
$ microk8s inspect
Inspecting Certificates
Inspecting services
Service snap.microk8s.daemon-cluster-agent is running
Service snap.microk8s.daemon-containerd is running
Service snap.microk8s.daemon-apiserver is running
Service snap.microk8s.daemon-apiserver-kicker is running
Service snap.microk8s.daemon-control-plane-kicker is running
Service snap.microk8s.daemon-proxy is running
FAIL: Service snap.microk8s.daemon-kubelet is not running
For more details look at: sudo journalctl -u snap.microk8s.daemon-kubelet
一旦我运行以下命令,unknown service runtime.v1alpha2.RuntimeService
就会出现在日志中。
$ journalctl -u snap.microk8s.daemon-kubelet
May 03 15:46:25 nestpaylab microk8s.daemon-kubelet[41600]: E0503 15:46:25.990540 41600 remote_runtime.go:86] Version from runtime service failed: rpc error: code = Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService
May 03 15:46:25 nestpaylab microk8s.daemon-kubelet[41600]: E0503 15:46:25.990622 41600 kuberuntime_manager.go:202] Get runtime version failed: get remote runtime typed version failed: rpc error: code = Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService
May 03 15:46:25 nestpaylab microk8s.daemon-kubelet[41600]: F0503 15:46:25.990641 41600 server.go:269] failed to run Kubelet: failed to create kubelet: get remote runtime typed version failed: rpc error: code = Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService
当我从https://github.com/containerd/containerd/blob/261c107ffc4ff681bc73988f64e3f60c32233b37/docs/cri/crictl.md检查时,它与 Docker 安装中不正确的容器配置有关。
所以我运行了如下所示的命令,但没有任何改变。
$ mv /var/snap/microk8s/current/args/containerd.toml /var/snap/microk8s/current/args/containerd.toml.bak
$ containerd config default > /var/snap/microk8s/current/args/containerd.toml
$ systemctl restart snap.microk8s.daemon-containerd.service
$ systemctl restart snap.microk8s.daemon-kubelet.service
我该如何解决这个问题?