解决 kubernetes(k8s)创建Dashboard失败,Dashboard的pod状态为CrashLoopBackOff

一、背景。

 今天在做云原生开发,发现Dashboard的pod状态为CrashLoopBackOff ,记录一下问题。

解决 kubernetes(k8s)创建Dashboard失败,Dashboard的pod状态为CrashLoopBackOff 

二、解决方法。

1.首先执行: kubectl get pod -A

 kubectl get pod -A

2. 查询错误日志: kubectl logs -f -n kubernetes-dashboard kubernetes-dashboard-658485d5c7-t7fw7

 kubectl logs -f -n kubernetes-dashboard kubernetes-dashboard-658485d5c7-t7fw7

 3.发现上图报错问题:dial tcp ip: i/o timeout

4.执行:iptables -L -n --line-numbers | grep dashboard,发现是ipatables规则问题.

iptables -L -n --line-numbers | grep dashboard

5.根据上图可以很明显看到,dashboard的数据包直接被REJECT(拒绝)了,找到原因就好办了,设置成允许(ACCEPT)就行。

6.把现有的防火墙规则保存下:iptables-save > iptables.rules

iptables-save > iptables.rules

 7.执行以下命令以确保默认策略为ACCEPT。

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

8:执行命令: iptables -F

iptables -F

9.把创建的dashboard pod删掉并重启下docker,再次创建dashboard,创建成功。

 kubectl delete deployment kubernetes-dashboard --namespace=kubernetes-dashboard

 kubectl delete deployment dashboard-metrics-scraper --namespace=kubernetes-dashboard

10.问题解决。

三、总结。

极客精神 业务强才是真的强 

猜你喜欢

转载自blog.csdn.net/weixin_42188778/article/details/126935301