K8S问题记录

服务器宕机导致K8S集群异常,部分nginx服务的pod启动失败

K8S版本:v1.12.5

问题1 nginx pod 启动失败,故障现象如下

nginx Pod 启动以后马上报错:

yaml 复制代码
[root@jd-training-cpu-01 ~]# kubectl logs -n paisystem easydl-fe-nginx-79b94ff444-5swq9 -f
2024/04/11 12:42:05 [emerg] 6#6: host not found in upstream "easydl-gateway.paisystem:8099" in /etc/nginx/vhost/quickai.conf:2
nginx: [emerg] host not found in upstream "easydl-gateway.paisystem" in /etc/nginx/vhost/quickai.conf:2

提示 nginx 配置文件有问题,其实是这个 域名 easydl-gateway.paisystem ping不通了,后来发现是这个pod 和另外几个没起来的pod 正好部署在刚刚宕机的那个服务器上并且这个几个Pod还是需要在启动nginx的时候访问upstream里面的地址是否能通,不通就启动失败。

解决方法

因为宕机的那个节点iptables出问题了,导致部署到部署在那个节点上的服务出现问题,解决方法 清空iptables规则并重启docker服务,然后等docker正常以后再重启那几个pod问题解决

yaml 复制代码
# 清空iptables规则
iptables -F

# 重启docker服务(docker服务重启会重新添加K8S集群用到的iptables规则)
systemctl restart docker

# 等docker服务正常以后,再次重启有问题的几个Pod服务即可正常
相关推荐
刘胡子大叔13 分钟前
备份包只有 1.5K?
linux·服务器·网络
无足鸟ICT19 分钟前
【RHCA+】RPM包验证和数字证书
linux·运维·服务器
erzong23124 分钟前
Linux操作系统:线程概念与控制
linux·算法
星恒随风29 分钟前
Linux线程概念详解:从分页存储、页表、MMU与TLB,深入理解线程和进程的区别与联系
linux·运维·笔记·学习·状态模式
小范的技术工坊34 分钟前
Linux应用开发(文件IO)
linux·stm32·单片机
小范的技术工坊1 小时前
Linux应用开发(文件属性)
linux·运维·服务器
wuminyu1 小时前
JMM学习总结:深入理解happens-before关系
java·linux·c语言·jvm·c++
姜鱼问生2 小时前
每次开机手动检查 6 样东西?我写了个 2 秒自检脚本
运维·网络·nginx·docker·容器
wangqiaowq2 小时前
PostgresSQL server Docker 安装部署
运维·docker·容器
程序员阿明2 小时前
docker搭建视频流服务go2rtc,webRTC
docker·容器·webrtc