当您在GKE集群上创建部署时,有两种可能公开它:
-
使用带有类型LoadBalancer的服务并公开它-这将
创建TCP负载平衡器
-
将服务创建为节点报表或群集
IP并将其作为
Ingress
-这将创建HTTP负载平衡器
如果您可以在负载平衡器中看到这两个类型,这意味着您可能已经创建了一个服务类型的负载平衡器,然后将其公开为入口。您正在打开同一个部署,通过服务和入口从两个不同的IP进行访问。要确认此操作,请尝试:
$ kubectl get ingress
$ kubectl get svc
您将从这两个命令中获得2个IP,它们都将显示同一页。
更好的配置方法是使用服务类型
NodePort
,并将该服务作为入口公开。这尤其有用,因为您可以使用相同的入口来公开更多的服务。
这样可以节省暴露的IP数量(并且不使用多个负载均衡器来节省资金)。