当前位置: 首页 > 知识库问答 >
问题:

负载平衡器和Kubernetes服务的外部IPs类型之间有什么区别

蓟和煦
2023-03-14

我使用的是Kubernetes服务,但我对服务中的外部IP的参数有点困惑:

如果有路由到一个或多个群集节点的外部IP,则可以在这些外部IP上公开Kubernetes服务。通过服务端口上的外部IP(作为目标IP)进入集群的流量将路由到其中一个服务endpoint。外部IP不由Kubernetes管理,由集群管理员负责。

我不确定负载均衡器类型服务和使用外部IP的服务之间的区别。

我可以使用负载平衡器类型的服务,然后该服务可以由云提供商进行负载平衡。

但是当我使用带有外部IP参数的ClusterIP类型时,我也可以获得负载平衡能力。

那么有什么区别呢?为什么有这个外部IPs参数?

共有1个答案

戈华茂
2023-03-14

您是对的,它们都是对外公开服务的方式,它们都将到达所讨论的服务连接的所有pod,但允许它的基础架构是不同的。

对于LoadBalancer类型,在支持外部负载平衡器的云提供程序上,将为您提供一个负载平衡器。这与简单地将IP地址附加到节点有所不同。在AWS中,提供ELB和连接EIP之间存在差异。这些将意味着与例如安全组控制、加密流量终止等的不同。

另一个重要的区别是,如果您处于受支持的云环境中,负载平衡器由Kubernetes自动配置,而外部IP则由您手动配置,这可能意味着或多或少的灵活性,具体取决于您的设置。请参阅文档了解更多信息。

 类似资料:
  • 当我将服务与ClusterIP类型和2个POD一起使用时,流量分布在2个POD上。 我找到了另一种服务类型LoadBalancer。这两种服务的区别是什么?LoadBalancer与ClusterIP有何不同? 谢谢

  • 我正在DigitalOcean上使用CoreOs和库伯内特斯构建一个容器集群,我已经看到,为了向世界公开Pod,您必须使用Type: LoadBalancer创建一个服务。我认为这是最佳解决方案,因此您不需要在nginx或haagent等kubernetes之外添加外部负载均衡器。我想知道是否可以使用DO的浮动IP创建它。

  • 试图自学如何使用库伯内特斯,但有一些问题。 我的下一步是尝试使用LoadBalancer类型的服务来访问nginx。 我建立了一个新的集群并部署了nginx映像。 然后,我为LoadBalancer设置服务 设置完成后,我尝试使用LoadBalancer入口(我在描述LoadBalancer服务时发现)访问nginx。我收到一个此页面无法工作的错误。 不太确定我哪里出错了。 kubectl获得sv

  • 我必须手动在MS Azure中创建Kubernetes群集,而不是使用AKS。因此: > 我在一个可用性集中创建了2个VM:一个用于k8s master,第二个用于k8s节点。 我创建了外部负载均衡器并将2个VM添加到后端池。 我使用kubes祈祷创建了k8s集群。 我创建了部署和负载均衡器服务: 但LoadBalancer服务外部IP始终处于挂起状态: 此外,telnet azure\u loa

  • 我已经在AKS上部署了我的kubernetes应用程序,它使用内部负载均衡器,而没有单独的入口控制器。 目前该服务可以使用超文本传输协议访问,我想保护该服务。如何启用https以及应在何处安装证书?

  • 我安装了一个kubernetes集群。我想为我的一个微服务使用外部数据库(在我的集群之外),但这个外部数据库被设置为集群,没有自己的负载均衡器。 有没有办法创建一个内部负载平衡器服务,让kubernetes始终将微服务定向到正在运行的实例? 我看到您可以设置loadbalancer类型的服务,我如何使用它?我尝试创建它,但我看到loadbalancer服务是用NodePort创建的。它可以在没有节