Kubernetes网络一年发展动态与未来趋势

来源:名资汇网 2018-09-07 19:09:17
分享到:

应用上云,怎能没有容器!关注容器魔方

本文根据华为工程师DJ在Cloud Native Days成都站上的演讲整理:

Kubernetes网络一年发展动态与未来趋势

K8S

Kubernetes网络模型与CNI

谈到K8S的网络模型,就不能不提它著名的“单Pod单IP”模型,即每个Pod都有一个独立的IP,Pod内所有容器共享网络namespace(同一个网络协议栈和IP)。“单Pod单IP”网络模型为我们勾勒了一个K8S扁平网络的蓝图,在这个网络世界里:容器之间直接通信,不需要额外的NAT(网络地址转换);Node与容器之间,同样不需要额外的NAT;在其他容器和容器自身看到的IP也一样的。扁平化网络的优点在于:没有NAT的性能损耗,可追溯源地址进而为后面的网络策略做铺垫,易排错等。

总体而言,如果集群内要访问Pod,走Service,至于集群外要访问Pod,走的是Ingress。Service和Ingress是K8S专门的抽象出来的和服务发现相关的概念,后面会做详细讨论。

类似于CRI之于K8S的runtime,K8S使用CNI(container network interface)作为Pod网络配置的标准接口。需要注意的是,CNI并不支持docker网络,也就是说docker0网桥会被CNI的各类插件“视而不见”。

Kubernetes网络一年发展动态与未来趋势

图1

上图描绘了当用户在K8S里创建了一个Pod后,CRI和CNI协同创建所有容器并为他们初始化网络栈的全过程。

标签