Kubernetes核心概念理解—容器通信
在Kubernetes中容器间的通信分两种情况:
同节点内Pod间通信
•
在容器启动前,会为容器创建一个虚拟
Ethernet
接口对,这个接口对类似于管道的两端,其中一端在主机命名空间中,另外一端在容器命名空间中,并命名为
eth0
。
•
在主机命名空间的接口会绑定到网桥。网桥的地址段会取
IP
赋值给容器的
eth0
接口。
不同节点上Pod间通信
•
跨整个集群的
Pod
的
IP
地址必须是唯一的,所有跨节点的网桥必须使用不重叠的网络地址段,以防止不同节点上的
Pod
拿到同一
IP
地址,即确保没有
IP
地址冲突
•
当报文从
A
节点上的容器发送到
B
节点上的容器时,报文会先通过
veth
接口对到网桥,再由网桥到
A
节点的物理适配器,再通过网线传输到
B
节点的物理适配器,再通过
B
的网桥,经过接口对到达目标容器。