Kubernetes运维:Kube-Proxy IPVS 模式下 VIP 访问 127.0.0.1:NodePort 失效
文章目录
背景
当使用 Kube-Proxy ipvs 模式时,在 kubernetes 节点上无法使用 127.0.0.1:NodePort 访问服务,而在 Kube-Proxy iptables 模式时该问题并不存在。
按照官方 issues/67730 的分析,原因是:内核 crosses_local_route_boundary 函数进行路由合法性检查失败,数据包被丢弃。
解决方案
如果有使用 127.0.0.1 访问 NodePort 的需求可以使用 iptables 模式。kube-proxy 配置 iptables 模式时,会自动开启内核的 route_localnet 参数:
|
|
开启上述配置后,linux 将支持 127.0.0.1 地址的路由,并正常进行 NAT 地址转换。
参考
文章作者 yoaz
上次更新 2022-07-01
许可协议 MIT