混合集群是通过阿里云注册集群接入本地数据中心自建Kubernetes集群的容器集群,它可以为自建Kubernetes扩容云上ECS节点,同时也可以管理云上云下计算资源。本文介绍混合集群的网络模式及如何实现云上云下网络互联互通。
混合集群的网络模式
自建Kubernetes集群扩容云上ECS,形成云上云下网络互通的混合集群,首先需要解决的问题就是混合集群的组网模式。本地数据中心自建部分,根据业务需求规划进行选择。
如果您的自建Kubernetes集群规模为中小型(比如节点规模小于100台),且对网络性能没有很高要求的情况下,可选择如下网络模式。
Flannel VXLAN模式
Calico IPIP模式
Cilium VXLAN模式
如果您的自建Kubernetes集群规模为大型或者规划为大型集群,且对网络性能要求较高,可选择如下网络模式。
Calico路由反射模式
Cilium BGP路由模式
通常自建集群使用Calico路由模式场景较多,本文以IDC自建集群使用Calico路由模式的场景为例进行说明。关于云上容器网络插件的使用,通常建议使用对应云平台定制化的网络组件,阿里云容器平台统一使用Terway网络组件进行容器网络的管理。混合集群组网模式如下图所示。
您在本地数据中心内的私网网段为192.168.0.0/24,容器网络网段为10.100.0.0/16,采用Calico网络插件的路由反射模式;云上专有网络网段为10.0.0.0/8,计算节点虚拟交换机网段为10.10.24.0/24,容器Pod虚拟交换机网段为10.10.25.0/24,采用Terway网络插件的共享模式。
在混合集群中,您需要确保云下的Calico网络插件只运行在云下,云上的Terway网络插件只运行在云上。更多信息,请参见部署和配置Terway网络插件。
搭建混合网络的关键是打通云上云下的网络连通性,主要包括:
云下网络与云上VPC网络互联互通。
云下容器网络与云上容器网络互联互通。
云上云下网络互联互通
在云原生场景下,云上云下网络互联互通既包括集群计算节点之间的互联互通,也包括容器Pods之间的互联互通。网络互联互通示意如下图所示。
实现云上云下网络互联互通的大致步骤流程如下。具体操作,请参见本地IDC通过专线访问云服务器ECS。
将云下网络通过物理专线接入阿里云。
阿里云提供的专线接入方案,请参见物理专线连接。
创建专线连接本地数据中心边缘网络设备与云上网关设备边界路由器。
将云上边界路由器与云上专有网络VPC加入同一个云企业网。
配置云上边界路由器和本地数据中心BGP网络。
云上云下连通性测试。
配置云下网络到云上云产品内网IP地址段的路由。具体操作如下。
ACR:ACK组件内网镜像地址与路由网段对照表。
Prometheus:Prometheus内网域名与路由网段对照表。
OSS:OSS内网域名与VIP网段对照表。