智能接入网关SAG(Smart Access Gateway)vCPE是智能接入网关软件镜像版,通过将SAG vCPE镜像部署在您网络的宿主机中,使宿主机作为一个CPE(Customer-premises
equipment)设备为您提供上云服务。本文为您介绍如何通过SAG vCPE将已经部署在用户云下网络环境中的K8s集群接入阿里云ACK,实现云上云下网络互通。
示例场景
某企业在自己的专有IDC环境部署了K8s集群,在阿里云平台某地域部署了ACK。该企业计划使用SAG vCPE产品将云上ACK和云下的K8s服务连通,实现资源互访。
您可以在IDC内的一台实例(物理机或者虚拟机)中部署SAG vCPE镜像,使该实例作为一台SAG vCPE设备连接阿里云。SAG vCPE设备连接至阿里云后,可通过阿里云云连接网和云企业网实现IDC内资源与阿里云VPC内资源的互访。本文场景示例图如下所示。

从上图可以得出云上和云下的网络情况如下表所示。
类型 |
私网网段(VPC网段) |
容器网段 |
阿里云云上ACK集群 |
172.16.0.0/12 |
10.77.0.0/16 |
IDC中K8s集群 |
192.168.0.0/16 |
10.18.0.0/16 |
部署流程

- 创建SAG vCEP实例:在智能接入网关管理控制台创建SAG vCPE实例,创建后您可以通过SAG vCPE实例管理SAG vCPE设备。
- 部署SAG vCEP镜像:在IDC机房中选择一台机器,部署SAG vCPE镜像,该机器可作为SAG vCPE设备连接IDC网络至阿里云。
- 配置阿里云侧网络:在智能接入网关管理控制台对SAG vCPE设备进行网络配置,以便SAG vCPE设备能正常接入阿里云。
- 配置IDC侧网络:在IDC中进行网络配置,实现IDC和阿里云ACK资源互通。
- 测试连通性:分别测试云上云下主机间的网络连通性、云上云下容器Pod间的网络连通性。
步骤一:创建SAG vCEP实例
您需要在智能接入网关管理控制台创建SAG vCPE实例,创建后您可以通过SAG vCPE实例管理SAG vCPE设备。
- 登录智能接入网关管理控制台。
- 在智能接入网关页面,选择。
- 在购买页面,完成以下配置,然后单击立即购买并完成支付。
配置 |
说明 |
本文示例 |
区域 |
选择SAG vCPE实例所属的区域。
|
中国内地 |
实例名称 |
输入SAG vCPE实例的名称。
实例名称可为空。
长度为2~128个字符,以大小写字母或中文开头,可包含数字,半角句号(.),下划线(_)或短划线(-)。
|
Demo |
实例类型 |
选择智能接入网关vCPE的实例类型。 |
SAG-vCPE |
版本 |
选择智能接入网关vCPE的版本。 |
基础版 |
使用方式 |
选择SAG vCPE的使用方式。默认为双机。
双机方式下一个SAG vCPE实例中默认可以连接两台SAG vCPE设备。您可以配置两台SAG vCPE设备为主备模式,共同将本端网络接入阿里云,提高您网络的可用性。本文中只使用主设备。
|
双机 |
带宽峰值 |
网络通信的带宽峰值。单位:Mbps。 |
50 Mbps |
购买数量 |
选择需要创建的SAG vCPE实例的数量。 |
1 |
购买时长 |
选择购买时长。
您可以选中下方的到期自动续费进行自动续费。
|
1个月 |
资源组 |
选择SAG vCPE实例所属的资源组。 |
无 |
- 返回智能接入网关管理控制台,在顶部菜单栏,选择已创建实例的区域。
- 在左侧导航栏,选择智能接入网关。
- 在智能接入网关页面,单击已创建的实例ID。
- 在实例详情页面,单击设备管理页签,查看并记录当前SAG vCPE主设备的序列号和密钥,用于后续SAG vCPE实例和SAG vCPE设备的绑定。
步骤二:部署SAG vCEP镜像
为实现IDC和阿里云ACK集群的网络互通,您需要在IDC机房中选择一台机器,用于部署SAG vCPE镜像。部署完成后,该机器可作为SAG vCPE设备为您提供服务,连接IDC网络至阿里云。
- 在IDC环境中选择一台机器。
为了保证SAG vCEP镜像可以正常运行,选择的机器需要满足以下条件:
- 支持安装以下类型的操作系统:
- (推荐)64位,CentOS 7.6或以上规格。
- 64位,Ubuntu 18.04或以上规格。
- 支持安装3.10.0-957.21.3.el7.x86_64或以上规格的内核版本。
- 有单独的可连接公网的网卡。
- 支持远程登录。
- 未运行业务系统。
- 登录IDC机器,执行以下命令,下载脚本至实例的/root目录下。
说明
- 您可以将脚本下载至自定义路径内,请注意后续执行脚本时,路径需修改为您的自定义路径。
- 下载脚本后,请勿修改脚本内容以及脚本名称。
根据您的宿主机是否部署在中国内地区域,选择不同的下载脚本命令。
- 执行以下命令,为脚本赋予可执行权限。
chmod +x /root/sag_vcpe_v2.3.0_deployment.sh
- 执行脚本。
/root/sag_vcpe_v2.3.0_deployment.sh -n sag**** -k X8==**** -t idc -w eth0
部分参数说明如下表。关于脚本参数的更多信息,请参见脚本参数说明。
参数 |
描述 |
-n |
SAG vCPE设备的序列号。 |
-k |
SAG vCPE设备的密钥。 |
-t |
安装SAG vCPE镜像的宿主机所在的平台。取值:
aliyun (默认值):表示SAG vCPE镜像部署在阿里云云服务器ECS(Elastic Compute Service)中。
aws :表示SAG vCPE镜像部署在AWS EC2中。
ens :表示SAG vCPE镜像部署在阿里云边缘节点服务ENS(Edge Node Service)的实例中。
- 如果您的SAG vCPE镜像部署在本地网络的服务器中,则本参数的取值可为
aliyun 、aws 、ens 之外的任意英文字符。
|
-w |
WAN口的网卡名称。您可以通过ifconfig 命令查看宿主机的网卡名称。
|
执行脚本时,系统会自动检测部署环境是否满足需求:
- 如果部署环境相关的组件安装不完整,系统会出现如下图的提示。您可以输入yes,系统将自动帮您安装相关组件。安装组件完成后,开始部署SAG vCPE镜像。

- 如果检测到部署环境已经满足需求,则会直接开始部署SAG vCPE镜像,镜像部署完成后系统会出现如下图的提示。

- 部署完成后,执行
docker ps
命令,查看系统中是否已有以下两个容器。
- 如果系统已包含vsag-core和vsag-manager-base两个容器,则证明部署成功。
- 如果系统未包含上述两个容器,则说明部署失败,请提交工单处理。
步骤三:配置阿里云侧网络
SAG vCPE镜像部署完成后,您还需要在智能接入网关管理控制台对SAG vCPE设备进行网络配置,以便SAG vCPE设备能正常接入阿里云。
- 配置线下路由同步方式。
- 登录智能接入网关管理控制台,在顶部菜单栏,选择目标区域。
- 在智能接入网关页面,找到目标实例,在操作列单击网络配置。
- 在网络配置页签的线下路由同步方式区域,单击添加静态路由。
- 在添加静态路由对话框中,输入IDC所在的私网网段,然后单击确定。
- 再次单击添加静态路由,在添加静态路由对话框中,输入IDC中的K8s集群容器网段,然后单击确定。
两个网段都添加完成后,界面如下图所示。

- 绑定云连接网。
云连接网是SAG的重要组成部分,SAG通过云连接网将您的网络接入阿里云。
- 创建云连接网。具体操作,请参见创建云连接网。
说明 云连接网所在区域需和SAG vCPE实例所在区域相同。
- 在智能接入网关管理控制台的左侧导航栏,选择智能接入网关。
- 在智能接入网关页面,找到目标实例,在操作列单击网络配置。
- 在网络配置页签,选择绑定网络详情。
- 在已绑定同账号实例区域下,单击添加网络,选择已创建的云连接网实例,然后单击确定。
- 单击设备管理页签,查看SAG vCPE设备的VPN状态和管控状态。
在您绑定云连接网后,SAG vCPE设备的VPN状态和管控状态均为正常,则表示SAG vCPE设备已接入阿里云。

- 配置云企业网。
您需要通过以下操作将SAG vCPE实例连接到云企业网,并在云企业网中加载已创建的VPC实例。操作完成后,SAG vCPE实例和阿里云上VPC实例可学习到对方的路由,SAG
vCPE设备可与阿里云VPC内的资源互通。
- 在智能接入网关管理控制台的左侧导航栏,选择云连接网。
- 在云连接网页面,找到目标云连接网实例,在操作列单击绑定云企业网。
- 在绑定云企业网面板,选择要绑定的云企业网实例,然后单击确定。
您可以通过以下两种方式选择目标云企业网实例,本文选择新建CEN。
- 选择现有CEN:如果您已经创建了云企业网,可以在下拉列表中,选择已创建的云企业网实例进行绑定。
- 新建CEN:如果您未创建过云企业网,您可以在下方文本框中,输入云企业网实例名称,系统会为您新建云企业网实例并自动进行绑定。
说明 云企业网实例名称长度为2~100个字符,以大小写字母或中文开头,可包含数字、下划线(_)或短划线(-)。
- 将已经创建的阿里云VPC实例,绑定到此云企业网中。具体操作,请参见加载网络实例。
最终VPC和云连接网加载到云企业网后,如下图所示。

步骤四:配置IDC侧网络
为实现IDC和阿里云资源互通,您还需要在IDC中进行网络配置,配置需要的具体命令请咨询IDC网络管理员。
- 配置IDC静态路由示例。
在IDC网络配置路由,将要访问的阿里云ACK集群网段(如果需要访问云上的容器网段,也需要添加)下一跳指向安装了SAG vCEP的机器IP地址,由该实例完成和阿里云云上服务的互通。
ip route add 10.77.0.0/16 via 192.168.11.210
说明 静态路由示例仅供参考,不同厂商的不同设备可能会不同。
- 配置IDC环境的防火墙。
允许阿里云ACK集群和IDC在私网网段可相互通信。
步骤五:测试连通性
- 测试主机连通性。
- 登录阿里云VPC内的一个ECS实例。具体操作,请参见连接方式概述。
- 执行
ping
命令,访问云下IDC环境中的某台主机实例,验证云上和云下主机网络是否正常。
经验证,阿里云VPC中的资源与云下IDC中的资源可正常通信,如下图所示。

- 测试容器Pod网络连通性。
- 分别在阿里云云上的ACK集群和云下IDC的K8s集群部署测试容器,YAML示例如下。
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: nginx:1.7.9 #替换成您实际的<image_name:tags>。
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"
- 进入到ACK集群容器内,执行
Ping
命令,访问云下IDC的K8s集群中容器Pod的IP,验证云上ACK和云下K8s的Pod网络是否正常。
经验证,阿里云ACK集群中的Pod与云下IDC中K8s集群的Pod可正常通信,如下图所示。

总结
通过SAG vCEP结合云连接网络以及云企业网,您可以快速地完成云上和云下环境的快速组网,实现云上云下的网络互通。在这个过程中,为了降低可能的隐患,建议您提前做好网络规划,避免在生产环境中,由于网络冲突而带来的影响。