我是 GKE 和 K8S 的新手,所以请坦白我和我的愚蠢。我目前有一个 GKE 集群,它在默认节点池中有两个节点,并且集群通过 LoadBalancer 类型的服务公开。
这些节点的任务是通过 HTTP 调用 Compute Engine 实例。我在 GCP 中设置了防火墙规则,以拒绝 GCE 实例的入口流量,但来自 GKE 集群的流量除外。
问题是流量不是来自 LoadBalancer 的服务 IP,而是来自节点本身,因此将服务的 IP 列入白名单没有效果,我必须将节点的 IP 列入白名单,而不是集群。这并不理想,因为每次创建新节点时,我都必须更改防火墙规则。我了解到,一旦您在集群中设置了服务,所有流量都会被定向到服务的 IP,那么为什么会发生这种情况?我究竟做错了什么?如果您需要更多详细信息,请告诉我,并提前致谢。
服务的 YAML: