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 小时前
运行你的第一个Docker容器
后端·docker·容器
Web3探索者1 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo1 天前
Linux系统中网线与USB网络共享冲突
linux
Java之美2 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
程序员老赵2 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
Sokach10153 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao3 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3105 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode5 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏