根据Cloud NAT上的GCP文档,
常规(非私有)GKE群集为每个节点分配一个外部IP地址,因此此类群集无法使用Cloud NAT从节点的主接口发送数据包。如果Pod发送的源IP地址设置为Pod IP,则它们仍可以使用Cloud NAT
问题:在将数据包发送到某些外部服务时,如何配置Pod将源IP设置为Pod IP?
答案 0 :(得分:0)
Cloud NAT用于允许仅具有内部IP地址的GCE实例或GKE群集访问Internet上的公共资源。如果要使用Cloud NAT,则需要遵循guidelines from the public docs,也可以遵循build your own NAT gateway using a GCE Instance,这不需要使用私有集群。
答案 1 :(得分:0)
穆罕默德的答案大部分是准确的,这是GCP支持的方法。虽然有一个附加内容可以解决引用的文字。
this issue,当在节点之间或集群外部路由通信时。只要Pod路由到Masq范围内的流量,就会发生SNAT,并且Pod使用节点的外部(或内部)IP地址。您需要通过扩展非质量范围以包括所有IP(0.0.0.0/0)来禁用SNAT。您可以使用GKE uses ip masquerade and SNAT进行安装,如果没有安装,则可以安装。