繁体   English   中英

不同 kubernates 集群上的 pod 是如何通信的?

[英]How pods on different kubernates clusters can communicate?

案例 1:假设有一个 pod 在本地运行(运行一些工作负载/应用程序)在 device1 上,另一个 pod 在运行在 AWS EKS 实例上的 EC2 实例中运行。 两个人怎么沟通

案例 2:假设有一个 pod 在本地运行(运行一些工作负载/应用程序)在一个设备 1 和另一个设备 2 上。 两个人怎么沟通?

Pod 可以使用 minikube 甚至直接使用 kubectl 命令在本地运行。

问题:我知道同一集群内的 Pod 可以通过直接寻址其 IP 地址与另一个 Pod 通信,但是不同集群上的 Pod 如何通信以及它们可以使用哪些协议? 。请在这件事上给予我帮助 。 在此处输入图像描述

如果 Pod 通过以下方式公开暴露,则它们可以相互通信

  1. 外部 IP 例如https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/
  2. 用户服务公开你的 pod https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/

如果您需要 pod 使用内部网络使用私有 ip 进行通信,您可以考虑使用 VPC 对等互连(连接设备 1、设备 2 和云/AWS VPC 的所有 3 个网络)。 这将需要一些网络知识来设置。

如果您正在寻找简单的选项和设置,您可以公开公开该服务。

您可以使用外部 IP (服务类型负载均衡器)或使用入口控制器(nginx、kong、traefik)来公开服务。

对于多集群通信和服务发现,您可以使用IstiolinkerD等服务网格:
https://istio.io/latest/blog/2020/multi-cluster-mesh-automation/

LinkerD多集群东西向设置: https ://linkerd.io/2.11/features/multicluster/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM