最近更新时间:2024-01-05 09:58:04
金山云容器服务提供了全局路由网络模型:Calico,本文详细描述了该种网络模型,为您在创建集群选择网络模型提供参考。
Calico:vpc-route-controller(vpc路由控制器)和calico-cni结合而成。
vpc-route-controller负责集群内每个节点上容器网段的vpc路由管理,监听Node的状态变化:
1)当Node新加入集群时,为新增Node创建Vpc主机路由;
2)当Node从集群中移除时,删除Node的Vpc主机路由记录。
另外,默认每隔5分钟,检测集群内的所有Node相关路由记录。若不存在,则重新创建。
calico-cni负责Pod的网络配置和删除。相较于Flannel,由于节点上少了一层Bridge,性能更佳。
KCE Calico是基于社区版本结合金山云VPC的CNI插件,对比Flannel减少一层网桥路由,性能和稳定性更高。同时支持以addons形式安装网络策略插件(Networkpolicy)来定义容器间访问策略。
Calico网络模型中Pod CIDR独立于VPC网段,Pod CIDR会按照掩码分配到集群节点上,节点上的Pod会从分配给节点上的网段分配IP地址,出向流量从源Pod发出经Calico route转发至节点eth0,通过 VPC 路由将跨Node的目的Pod互相连接,Calico网络模式拓扑如下图所示:
Calico网络模式下安装网络策略(Networkpolicy):在KCE集群中使用Networkpolicy(网络策略)
Calico是一种高性能高可靠的路由网络插件,它为每个Pod分配一个全局唯一的IP地址,并使用BGP协议来建立节点之间的路由信息,使得Pod之间可以直接通过IP路由进行通信。
Calico的优点是性能高效,因为没有封装和解封装的开销,而且支持网络策略功能,可以对Pod之间的流量进行细粒度的控制和过滤。
Calico的缺点是安装部署较复杂,需要配置BGP协议和Etcd数据存储,并且在大规模的集群中可能需要使用路由反射器来减少BGP连接数。
纯净模式