不要吹灭你的灵感和你的想象力; 不要成为你的模型的奴隶。 ——文森特・梵高
k8s网络模型的实现,致力于解决一下场景:
- 紧密耦合的容器到容器之间的通信
- 抽象的Pod 到Pod之间的通信
- Pod到Service之间的通信
- 集群外部和内部组件之间的通信
同一个Pod内的容器之间的通信
- 同一个Pod内的容器共享IP, 端口不同,可以直接通过localhost通信
- 可以直接使用IPC进行通信(例如消息队列或者管道)
不同Pod内的容器通信
同一个Node上的Pod之间通信
-
他们网段是一样的,都是从Docker0上分配的,同一个网桥,可以直接通信
-
对于pod发送的非本地数据,都会通过Docker 0 路由中转到宿主机中