当我执行“systemctl start kubelet”命令时,结果显示“错误:无法运行kubelet:无法创建证书签名请求:服务器已请求客户端提供凭据(post certificateigningrequests.certificates.k8s.io )“
配置文件如下:
- experimental-bootstrap-kubeconfig = / etc / kubernetes / bootstrap.kubeconfig --kubeconfig = / etc / kubernetes / kubelet.kubeconfig --require-kubeconfig --cert-dir = / etc / kubernetes / ssl - 群集域= cluster.local。 --hairpin-mode promiscuous-bridge --serialize-image-pulls = false“
如果我对上面的一行发表评论,那么一切正常,但我想使用SSL身份验证,那么我该怎么办?
答案 0 :(得分:0)
可能缺少一些额外的参数。这是使用证书签名请求(https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/06-kubernetes-worker.md)的启动命令的示例:
ExecStart=/usr/bin/kubelet \\
--api-servers=${API_SERVERS} \\
--allow-privileged=true \\
--cluster-dns=10.32.0.10 \\
--cluster-domain=cluster.local \\
--container-runtime=docker \\
--experimental-bootstrap-kubeconfig=/var/lib/kubelet/bootstrap.kubeconfig \\
--network-plugin=kubenet \\
--kubeconfig=/var/lib/kubelet/kubeconfig \\
--serialize-image-pulls=false \\
--register-node=true \\
--tls-cert-file=/var/lib/kubelet/kubelet-client.crt \\
--tls-private-key-file=/var/lib/kubelet/kubelet-client.key \\
--cert-dir=/var/lib/kubelet \\
--v=2
您可以尝试添加register-node
或tls-cert-file和tls-cert-key-file等标志(我的意思是它会生成)
但是,当我尝试使证书签名请求完全正常工作时,我发现仍然存在一些问题,因此我建议您使用群集CA手动创建证书。