yuanyp8 【描述】 k8s在证书失效前一个月已经通过库beadm更新完毕,如下图: 目前,通过kubectl命令执行get nodes get pods 等均无异常,如下图: 【异常问题】 (1)流水线异常:该环境的流水线执行者都是通过oauth对接的ldap用户数据,流水线执行过程中总报401错误,怀疑与kubesphere里面的用户资源的kubeconfig有关,报错如下图 (2)查看pod偶发异常,有的容器可以查看日志,有的就会报如下错误: (3) metrics-server 组件报错,不知道是和kubelet交互还是apiserver交互出现问题,如下图: ,查看metrics-server的yaml清单发现相对应的sa里涉及到了metrics-server-xxx的secret,该secret里有个token不知道是依据什么生成的。 (4)kubectl top nodes 偶发性报错,不知道和上面的错误有无关系,报错如下:
Jeff yuanyp8 流水线的401问题,你可以尝试把devops工程里的 kubeconfig 凭证删除然后重新创建一个同名的凭证。这个问题我们没有遇到过,你替换证书的时候是怎么操作的,是不是更新了ca证书?
jackerCao 使用kubeadm certs renew 命令手动更新证书后,执行完此命令之后你需要重启控制面 Pods,如果不重启会导致其他依赖证书的服务(比如:mertric-server),会有使用老证书的情况。
jackerCao 直接升级一个小版本能 确认升级后的版本非常重要,kubectrl get nodes看到的版本只是kubelet的版本 api-server的版本可以进去容器查看 ###检查kube-apiserver版本 ###获取 kube-apiserver CONTAINER ID docker ps | grep kube-apiserver docker exec -it 94f10d2957fa sh ## 进入容器后执行 kube-apiserver –version 获取版本