【问题标题】:Can I have a single service created to expose as both cluster IP and NodePort?我可以创建一个服务以同时作为集群 IP 和 NodePort 公开吗?
【发布时间】:2018-07-22 22:30:39
【问题描述】:

我在 minikube 上运行了 2 个 pod。 Pod A 必须 expose 2 ports 8081 和 9092 到 Pod B inside the k8 clusteroutside k8 cluster 以便 Pod B 可以访问它们,并且集群外部我的消费者也可以访问它们。所以我的问题是 should 我有 @为每个端口创建 987654325@? 一个公开为集群 ip,一个公开为节点端口?或者有没有办法创建一个服务来将其公开为集群 IP 和 NodePort?

另外,如果我必须将我的节点端口公开为特定端口,指定nodePort 是否会与集群 ip 混淆?

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    当你选择NodePort服务类型时,kubernetes除了拥有集群IP外,还会在集群的每个节点上的一个端口(每个节点上的相同端口)上暴露服务。因此,选择 NodePort 可以获得两个:ClusterIP 和每个节点上的端口。 正如in the docs所说的

    请注意,此服务将以 :spec.ports[].nodePort 和 spec.clusterIP:spec.ports[].port 的形式显示。

    【讨论】:

      猜你喜欢
      • 2021-05-06
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多