Flannel是社区提供的一款简单稳定的CNI插件。Flannel网络基于阿里云VPC的自定义路由能力,来实现跨节点的Pod直接与VPC的互相访问。本文介绍如何使用阿里云容器服务Kubernetes版ACK集群的Flannel网络插件。
背景信息
Flannel网络模式中Pod的网段独立于VPC的网段。Pod网段会按照掩码(节点IP数量)均匀划分给每个集群中的节点,每个节点上的Pod会从节点上划分的网段中分配IP地址。
注意事项
采用Flannel网络模式的集群所在VPC的默认路由表由Cloud Controller Manager管理,非必要请勿修改此路由表。关于Cloud Controller Manager,请参见Cloud Controller Manager。
采用Flannel网络模式的集群在默认情况下不支持VPC下同时存在多张路由表。如果集群VPC下存在多张路由表,请参考使用VPC的多路由表功能进行配置。在使用阿里云NAT边界防火墙服务时,请在防火墙创建完成后在多路由表列表中添加VPC系统路由表,否则可能会影响集群节点扩容。
如果同一张路由表中存在冲突路由条目时,Cloud Controller Manager会自动删除冲突条目。
操作步骤
在创建集群页面中,网络插件选择Flannel。相关参数说明如下,更多信息,请参见创建ACK托管集群、创建ACK专有集群。
参数名称 | 参数说明 |
专有网络 | 选择您的专有网络VPC,创建后集群将位于该VPC下。 |
虚拟交换机 | 选择您的虚拟交换机vSwitch,创建后集群节点将位于该vSwitch下。 |
节点 Pod 数量 | 每个节点上最大可支持创建的Pod数量。 |
Pod网络CIDR | 集群可供分配的容器网络IP段,请参见专有网络VPC网段和Kubernetes网段关系。 |
Service CIDR | Service地址段,请参见专有网络VPC网段和Kubernetes网段关系。 |