【问题标题】:Interpod Communication间通讯
【发布时间】:2020-08-06 10:56:22
【问题描述】:

我们在 GoogleCloud Kubernetes 中有以下内容: 3 个 REST API Pod,它们接受 POST 并将它们发送到通过 Websocket 连接的客户端。

如果其中一个 Pod 已发布,我们希望将此帖子发送到所有其他 Pod。 问题是:我们如何/在哪里可以找到其他 Pod 的 IP?

【问题讨论】:

  • 一般需要在每个pod前面设置一个Service,然后连接到Service's DNS nameservice-name.namespace-name.svc.cluster.local

标签: kubernetes gcloud


【解决方案1】:

您可以使用下面的方法找到 pod IP 并尝试点击该 IP,但建议您公开一个服务来执行此操作。

kubectl get po -n test -o wide 
NAME   READY   STATUS             RESTARTS   AGE   IP           NODE      NOMINATED NODE   READINESS GATES
pod1   1/1     Running            0          98m   10.42.0.16   worker3   <none>   <none>        
pod6   1/1     Running            0          87m   10.44.0.26   worker1   <none>   <none>        

公开服务:

kubectl expose pod/pod1 -n test --name=svc --port=80 --target-port=80


kubectl run bb --image=busybox -n test -it --rm -- sh
If you don't see a command prompt, try pressing enter.
wget -O- svc:80
Connecting to svc:80 (10.101.174.245:80)
writing to stdout
<html><body><h1>It works!</h1></body></html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-09
    • 1970-01-01
    • 1970-01-01
    • 2021-03-08
    • 2011-10-17
    • 2014-03-26
    • 2019-04-06
    相关资源
    最近更新 更多