【问题标题】:Kubernetes -- connect to multiple Endpoints on same NodePortKubernetes -- 连接到同一个 NodePort 上的多个 Endpoints
【发布时间】:2020-09-26 19:59:44
【问题描述】:

有没有办法让我设置 >1 个 Pod,每个 Pod 都在其 TargetPort 上侦听,为在指定 NodePort(例如 30000)上服务的所有 Pod 提供一个服务,并连接到同一 Pod 的两个端点节点端口?

我正在 docker-desktop 上使用 2 个提供数据的 pod 进行测试。我可以连接到 localholdt:30000 上的第一个 pod(服务上的 NodePort 为 30000),但是当我尝试连接第二个客户端时,它挂起。我以为 Service 会自动将第二个客户端连接到第二个 pod 的端点,但事实并非如此。

我的服务describe 是:

Name:                     replica1-gsewz
Namespace:                default
Labels:                   app=cnpquery
                          app.group.com/partitionreplica=replica1
                          app.group.com/serviceMetatag=podselector1
Annotations:              <none>
Selector:                 app.group.com/serviceMetatag=podselector1
Type:                     NodePort
IP:                       10.98.212.171
LoadBalancer Ingress:     localhost
Port:                     http  5000/TCP
TargetPort:               5000/TCP
NodePort:                 http  30000/TCP
Endpoints:                10.1.0.92:5000,10.1.0.93:5000
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

编辑:

设置如下:

  • pod 上部署了服务器应用程序。服务器应用侦听 pod 的 5000 端口。
  • 服务 afaik 将节点端口 30000 上的所有请求转发到 pod 端口 5000
  • 我在 docker 桌面上,所以我使用 docker 的代理连接到我本地机器上的 30000 端口,即 http://localhost:30000
  • 在我的本地计算机上,我有一台客户端计算机,它向端口 30000 发送内容,并从 pod 的服务器获取响应。
  • 此设置适用于单个 pod(即我可以在节点:30000--5000:端口连接上发送和接收消息
  • 但是当我启动第二个 pod 并尝试在 localhost:30000 上连接到它时,它挂起

【问题讨论】:

  • 是的,通常它应该使用NodePort svc 工作。但是,您的意思是:I can connect to the first pod ... when I try to connect a second client, it hangs] Please provide more information with commands` 您要做什么。您如何尝试连接到不同的 pod?这些 pod 是否由同一个部署管理?或者您正在尝试使用相同的服务启动两个不同的 pod?你是如何为 svc 类型的 NodePort 设置 LoadBalancer Ingress: localhost 的。应用yaml文件会很好
  • @Hanx 添加编辑

标签: kubernetes kubernetes-ingress


【解决方案1】:

您可以使用 ingress 进行负载平衡,并在规则部分的 ingress 定义中配置您的路径 射频 https://kubernetes.io/docs/concepts/services-networking/ingress/

【讨论】:

    猜你喜欢
    • 2021-12-07
    • 2020-07-08
    • 2020-11-06
    • 2019-05-16
    • 1970-01-01
    • 2011-06-15
    • 2022-01-18
    • 1970-01-01
    相关资源
    最近更新 更多