我们在kubernatees中使用GKE,并且我们为所有私有ip使用10.0.0.0/8cidr范围,这些ip也与我们的本地和AWS网络共享。
来自K8集群的out Pod和服务IP来自非rfs240.0.120.0/24cidr范围。这就是问题所在,当我们尝试连接任何GCP或AWS资源时,它无法连接,需要伪装。
然而,伪装文档说,如果目的IP来自cidr10.0.0.0/8,则不会伪装
链接我也指
- https://github.com/kubernetes-sigs/ip-masq-agent#agent-flags
- https://cloud.google.com/kubernetes-engine/docs/concepts/ip-masquerade-agent
- https://cloud.google.com/kubernetes-engine/docs/concepts/ip-masquerade-agent#default-non-masq-dests
我不知道该怎么做,ConfigMap中没有添加masqueradeCIDR的部分,只有添加nonMasqueradeCIDR的部分
2条答案
按热度按时间ghhkc1vu1#
ConfigMao for ip-masq列出了您不想伪装的CIDR。如果不指定ConfigMap,则默认情况下将
10.0.0.0/8
包含在非伪装列表中。您需要按照文档创建ConfigMap,并且您需要最低限度地将用于您的pod/服务(240.)的范围添加到非伪装列表中。您需要确保
10.0.0.0/8
不在ConfigMap中。vzgqcmou2#
您可以尝试启用IP伪装。首先,您要确定运行GKE集群的网络。然后在该网络中识别与您的GKE集群关联的子网。使用以下命令在子网上启用IP伪装。确保将[SUBNET_NAME]替换为GKE群集的子网名称。