kube版本:1.22
在k8s群集中运行了一个使用nodeport 30003的svc
systemctl stop kube-proxy
在minion A,ss -antpl |中grep 30003你会发现端口30003是免费的
telnet $A_IP 30003
成功(或nc $A_IP 30003
)iptable -F -t nat
in minion A telnet $A_IP 30003
失败所以我认为当kube-proxy异常退出时应该清理iptables吗?
答案 0 :(得分:0)
如果您正在运行使用kube-proxy进行服务IP到端点映射的集群,那么预计kube-proxy将在监控进程退出后立即重新启动(例如systemd,monit,supervisord等) 。实际上,在Kubernetes的更高版本中,kube-proxy作为特权容器运行,而kubelet确保它保持运行。由于预计会快速重启,清理iptables只会导致每次重启kube-proxy时不必要地修改它们。
如果您不希望kube-proxy为您管理iptables,那么您可以决定不在群集中运行它,或者在停止后手动清理iptables规则。