📜  Kubernetes – 集群 IP 与节点端口

📅  最后修改于: 2022-05-13 01:57:09.781000             🧑  作者: Mango

Kubernetes – 集群 IP 与节点端口

ClusterIP 提供负载均衡的 IP 地址。一个或多个匹配标签选择器的 pod 可以将流量转发到 IP 地址。 ClusterIP服务必须定义一个或多个端口来侦听目标端口,以将 TCP/UDP 流量转发到容器

集群 IP:

  • 这是默认服务类型,通过使服务仅在集群内可访问,在集群内部 IP 上公开服务。
  • 集群服务是默认的 Kubernetes 服务。它为您提供集群的服务,集群内的其他应用程序可以访问该服务。
  • 没有外部过程。

何时使用集群 IP?

  • 在一些场景中,您会使用 Kubernetes 代理来访问您的服务。
  • 调试您的服务,或出于某种原因直接从您的笔记本电脑连接到它们
  • 允许内部流量、显示内部仪表板等。
  • 因为此方法要求您以经过身份验证的用户身份运行kubectl ,所以您不应该使用它来将您的服务公开到 Internet 或将其用于生产服务。

节点端口:

这会在静态端口上公开每个节点 IP 上的服务。因为 NodePort 服务将路由到的 ClusterIP 服务是自动创建的。我们可以联系集群外的 NodePort 服务。

  • Nodeport 服务是将外部流量直接传输到您的服务的最原始方式。
  • 同理,NodePort 在所有节点(VM)上打开一个特定端口,发送到该端口的任何流量都会转发到服务。

何时使用节点端口?

  • 这种方法有很多缺点
  • 每个端口只能有一项服务
  • 您只能使用端口 30,000-32,767
  • 如果您的节点/虚拟机 IP 地址发生变化,您需要处理
  • 由于这些原因,我不建议在生产中使用这种方法来直接公开您的服务。如果您运行的服务不必始终可用,或者您对成本非常敏感,那么此方法将适合您。这种应用程序的一个很好的例子是演示应用程序或临时的东西。