华为云UCS-附着集群接入失败怎么办?:排查项三:集群kube-apiserver状态
排查项三:集群kube-apiserver状态
集群接入U CS 时,可能出现如图2所示的异常信息,错误显示“please check the health status of kube apiserver: ...”。
如出现以上信息,说明proxy-agent无法和集群apiserver进行正常通信,由于不同用户待接入集群的网络环境配置不同,这里无法提供统一的解决方案,需要您自行解决集群网络问题后进行重试。
- 登录UCS控制台,在左侧导航栏选择“容器舰队”页面。
- 登录目标集群Master节点,查看apiserver地址。
kubectl get po `kubectl get po -nkube-system | grep kube-apiserver | awk {'print $1'}` -nkube-system -oyaml | grep advertise-address.endpoint
- 查看集群的KubeConfig文件中“clusters.cluster.server”字段是否与2中查询的集群apiserver地址一致。
如不一致,可能是集群提供商做了apiserver的地址转换,请替换KubeConfig文件中的集群apiserver地址后,在UCS控制台重新注册集群,并重新部署proxy-agent。
若KubeConfig文件中“clusters.cluster.server”字段为“https://kubernetes.default.svc.cluster.local:443”可无需替换,该 域名 为kubernetes服务(即apiserver的ClusterIP)的本地域名。
- 检查proxy-agent的Pod是否可以访问待接入集群的apiserver。
参考命令:
kubectl exec -ti proxy-agent-*** -n kube-system /bin/bash# 访问集群的kube-apiservercurl -kv https://*.*.*.*:*/readyz
如无法正常访问,请解决集群网络问题后,在UCS控制台重新注册集群,并重新部署proxy-agent。