CentOS7 CrashLoopBackOff kube-proxy 启动报错 Failed to execute iptables-restore: exit status 1

  • Post author:
  • Post category:其他


问题一:kubectl get pods -o wide  查看deployments,显示pods 但是没有集群IP?

如下:

NAME                                 READY     STATUS    RESTARTS   AGE       IP              NODE

kubernates-bootcamp-7fddcf7f-b9s7l   1/1       Running   14         8h        <none>   192.168.2.108

如果创建pods、deploy,会反复出现CrashLoopBackOff 、Running等状态。 出现这种情况是因为  kube-proxy没配置好。参考下面。

问题二: kube-proxy  启动报错 Failed to execute iptables-restore: exit status 1?

这个问题已有相关文章阐述,但解决方式是 yum remove iptables ,这种方式太暴力,依赖iptables的相关组件太多(包括Docker),执行上述命令后,都会被卸载掉(可以参考:

https://cloud.tencent.com/developer/article/1362616

)。经多次测试,非常不可取。

本人使用rpm命令方式回滚iptables版本,仅重装iptables和iptables-services即可,缺少的包可以去 ,具体操作如下:

更换iptables的版本号降低到iptables-1.4.21-24.1.el7_5.x86,去

http://rpm.pbone.net/

下载下面两个包:

iptables-1.4.21-24.1.el7_5.x86_64.rpm

iptables-services-1.4.21-24.1.el7_5.x86_64.rpm

然后非依赖移除iptables与iptables-services,命令参考如下:

rpm -e –nodeps  iptables-1.4.21-33.el7.x86_64

rpm -e –nodeps iptables-services-1.4.21-33.el7.x86_64

再安装上述下载的两个新包:

rpm -ivh iptables-1.4.21-24.1.el7_5.x86_64.rpm

rpm -ivh iptables-services-1.4.21-24.1.el7_5.x86_64.rpm

(也可以将两个包放在同一目录下,执行 rpm -ivh iptables-*.rpm)

重启kube-proxy服务既可以。



版权声明:本文为TankRuning原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。