Interpod通讯

Interpod Communication

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

如果 Pods 中的一个 post 已打开,我们希望将此 post 发送给所有其他 pods。 问题是:我们如何/在哪里可以找到另一个 Pods 的 IP?

您可以使用下面的方法找到 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>