我们在 VPC 网络 net 的子网 subA 内有一个 Google 管理的 Kubernetes 集群,并且我们还有一个子网 subB 不同区域作为该 VPC 的一部分。Kubernetes 集群启用了 VPC 别名,因此服务范围和 pod 范围实际上也是 VPC 的子网(相同的本地空间 10.0.0.0/8)。
我们希望在 subA 上托管一个 kubernetes 服务(带有内部负载均衡器),并让 subB 可以访问。我们已设法使用防火墙规则使 subA 和 subB 上的实例可以相互访问,但这些规则仅针对网络(而不是子网)、服务帐户或标签,因此不能用于负载均衡器。
有什么线索吗?
答案1
正如您所说,subA 和 SubB 子网是同一 VPC 网络的一部分,因此无需应用防火墙规则来管理两个子网之间的 VPC 网络内部流量。防火墙仅处理从其他网络进入(入口)VPC 网络的流量以及最终从 VPC 网络传出的流量(出口)。
查看负载均衡器的描述(kubectl describe svc)会很有趣,以检查它是否通向正确的端点,以确保 pod 将响应对负载均衡器的请求。