Kubernetes:在内部和外部公开多种服务

时间:2020-10-14 07:38:10

标签: kubernetes azure-aks

我在集群中使用AKS

场景: 我们有多个API(例如在端口101、102、103上可访问的svc1,svc2和svc3)。 这些API链接需要公开给客户端,并在应用程序内部使用。

问题: 我想将此暴露给相同端口上的外部和内部负载平衡器。 另外,当我在内部访问该服务时,我希望它们可以通过服务名称进行访问(例如:svc1:101)

2 个答案:

答案 0 :(得分:1)

在Kubernetes中:

  • 如果您想仅在内部公开,请使用 ClusterIP 服务类型
  • 如果要同时在内部和外部公开,请使用 LoadBalancer (或 NodePort )服务类型。

请检查Kubernetes: Service Types以获得更多详细信息。

答案 1 :(得分:0)

好吧,我无需使用NodePort / ClusterIP就能解决此问题。

解决方案非常简单,但似乎没有记录。

我们要做的就是拥有多个标签,其中1个标签与外部负载均衡器相同,而其他标签具有相同的匹配服务。

这会将您的副本集映射到服务和外部负载均衡器。

详细答案-https://www.linkedin.com/pulse/exposing-multiple-portsservices-same-load-balancer-sunil-agarwal