【发布时间】:2018-04-23 23:22:44
【问题描述】:
我有 1 个主节点和 2 个工作节点。在 1 个节点上运行 1 个服务,并且在另一个节点上运行类似的服务。它们都是 NodePort 类型。如何将来自第一个服务的 pod 的 http 请求转发到第二个服务的 pod?
我已经尝试在第一个工作节点上使用这些 iptable 规则:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport <nodeport-of-service1> -j DNAT --to <public IP of worker2>:<nodeport-of-service2>
iptables -t nat -A POSTROUTING -p tcp -d <public IP of worker2> --dport <nodeport of service2> -j MASQUERADE
但它似乎不起作用。 eth0 是 worker-1 上的 WAN 接口。
知道如何做到这一点吗?
【问题讨论】:
-
stackoverflow.com/a/48104579/6309 可能会提供一些线索。
标签: kubernetes portforwarding network-traffic