k8s 各类网络方案 - 天天5分钟玩转 Docker 容器技术(170)

网络模型有了,如何实现呢?网络

为了保证网络方案的标准化、扩展性和灵活性,Kubernetes 采用了 Container Networking Interface(CNI)规范。运维

CNI 是由 CoreOS 提出的容器网络规范,它使用了插件(Plugin)模型建立容器的网络栈。性能

CNI 的优势是支持多种容器 runtime,不单单是 Docker。CNI 的插件模型支持不一样组织和公司开发的第三方插件,这对运维人员来讲颇有吸引力,能够灵活选择适合的网络方案。插件

目前已有多种支持 Kubernetes 的网络方案,好比 Flannel、Calico、Canal、Weave Net 等。由于它们都实现了 CNI 规范,用户不管选择哪一种方案,获得的网络模型都同样,即每一个 Pod 都有独立的 IP,能够直接通讯。区别在于不一样方案的底层实现不一样,有的采用基于 VxLAN 的 Overlay 实现,有的则是 Underlay,性能上有区别。再有就是是否支持 Network Policy。3d

相关文章
相关标签/搜索