k8s-apiserver 应急方案

网友投稿 345 2022-09-12

k8s-apiserver 应急方案

​​k8s-apiserver 简介​​

Kubernetes API 服务器验证并配置 API 对象的数据, 这些对象包括 pods、services、replicationcontrollers 等。 API 服务器为 REST 操作提供服务,并为集群的共享状态提供前端, 所有其他组件都通过该前端进行交互。

故障案例

~]# kubectl get all The connection to the server 192.168.213.129:6443 was refused - did you specify the right host or port?

故障分析

kubectl 连接不上 192.168.213.129:6443 ,6443 端口就是 apiserver 监听端口,使用暴露端口的方式为 hostnetwork。此时原本调度在节点或 master 的服务不会受影响,但是新服务将不在调度

第一种情况: 使用命令: ]# netstat -natp| grep 6443 | grep LISTEN 未发现监听端口 ================================================================================================= 第二种情况: 使用命令: ]# netstat -natp| grep 6443 | grep LISTEN tcp6 0 0 :::6443 :::* LISTEN 59889/kube-apiserve

故障解决尝试:

journalctl -fu kubelet 查看日志我们可以对apiserver 进行重启,apiserver的yaml 文件目录为:/etc/kubernetes/manifests/kube-apiserver.yaml,可以对上述目录进行 mv 移动的操作,它属于静态pod ,这样就可以重启。使用其他主机探测端口 6443 是否通,使用命令 telnet 192.168.213.129 6443 命令如果端口 6443 是通的,那么可以重启kubelet。命令为: systemctl restart kubelet.service如果上述命令端口正常,此时可以使用命令tcpdump 抓包,查看 kubelet 给 apiserver 的流量走向,再次定位原因。检查 etcd 是否启动正常 docker ps -a | grep etcd ,确认是否为 up 状态,如果不是,请解决 etcd 问题如果时间有限,可以先剔除此节点,之后再模拟故障,找出原因。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:倒计时100天,东京奥运会还有三大挑战!
下一篇:跟k8s工作负载Deployments的缘起缘灭
相关文章

 发表评论

暂时没有评论,来抢沙发吧~