kubectl logs查看容器日志报错“ x509: certificate signed by unknown authority”

如下图所示,通过二进制部署K8S后,发现查看容器日志报错,详细如下图所示:
在这里插入图片描述
这个是由于kubelet的启动参数中没有添加相关参数导致的,包含如下两个参数:
rotateCertificates: true
serverTLSBootstrap: true

serverTLSBootstrap用来启用服务器证书引导。系统不再使用自签名的服务证书, kubelet 会调用certificates.k8s.io API 来请求证书。 需要有一个批复人来批准证书签名请求(CSR)。 设置此字段时,RotateKubeletServerCertificate特性必须被启用。
默认值:false
rotateCertificates用来启用客户端证书轮换。kubelet 会调用 certificates.k8s.io API 来请求新的证书。需要有一个批复人批准证书签名请求。
默认值:false

把以上两个参数添加至kubelet-config.yml中,如下图所示:
kubectl logs查看容器日志报错“ x509: certificate signed by unknown authority”_第1张图片
在所有的包含kuelet的节点上,都添加以上两个参数
然后重载以及重启kubelet
systemctl daemon-reload
systemctl restart kubelet
但是,重启后依然报错,如下图所示:
在这里插入图片描述
通过查看csr
kubectl get csr,发现有pending的,允许其通过即可:
kubectl certificate approve csr-sxv92
kubectl logs查看容器日志报错“ x509: certificate signed by unknown authority”_第2张图片

然后就可以正常查看pods的日志了

你可能感兴趣的:(kubernetes,linux,容器)