使用负载均衡器实现跨地域的高可用网络服务
本节描述如何灵活运用 VPC、边界路由器、路由表、负载均衡器,搭建使用不同区域的云服务器作为后端的负载均衡服务,从而实现多地域的高可用网络服务。
场景示例
在济南1区创建两个VPC 网络,在济南2区创建一个VPC网络,并在三个 VPC 网络下分别创建一台云服务器,通过边界路由器及 SD-WAN 网关,将这三个不同 VPC 下的云服务器互联,并添加到同一个负载均衡器的后端服务器中。
资源规划
区域 | 资源名称 | 资源类型 | 规划网段/IP/说明 |
---|---|---|---|
济南1区 |
济南演示VPC1 |
VPC 网络 |
172.16.0.0/16 |
济南1区 |
济南演示VPC2 |
VPC 网络 |
172.17.0.0/16 |
济南1区 |
济南演示vxnet1 |
私有网络 |
172.16.1.0/24 |
济南1区 |
济南演示vxnet2 |
私有网络 |
172.17.1.0/24 |
济南1区 |
济南演示主机1 |
云服务器 |
172.16.1.2 |
济南1区 |
济南演示主机2 |
云服务器 |
172.17.1.2 |
济南1区 |
济南边界路由器1 |
边界路由器 |
关联济南演示vxnet1及济南演示vxnet2 |
济南1区 |
演示公网 IP |
公网 IP |
139.198.18.135 |
济南1区 |
跨Region负载均衡 |
负载均衡器 |
绑定公网 IP及济南演示vxnet1 |
济南1区 |
济南网关 |
SD-WAN 网关接入点 |
关联边界路由器1 |
济南2区 |
济南演示VPC1 |
VPC 网络 |
192.168.0.0/16 |
济南2区 |
济南演示vxnet1 |
私有网络 |
192.168.211.0/24 |
济南2区 |
济南演示主机1 |
云服务器 |
192.168.211.2 |
济南2区 |
济南边界路由器1 |
边界路由器 |
关联济南演示vxnet1 |
济南2区 |
济南网关 |
SD-WAN 网关接入点 |
关联济南边界路由器1 |
步骤一:利用边界路由器打通同区域 VPC
边界路由器可以连接多种不同的网络场景,本步骤中主要使用边界路由器连接同区域下不同 VPC 网络。
网络架构如图所示:
-
在济南1区,创建两个 VPC 网络。
-
在菜单栏,选择产品与服务 > 网络 > VPC 网络,进入VPC 网络页面。
-
点击创建 VPC 网络,创建出 2 个 CIDR 不同的 VPC 网络。
本操作中,分别创建了:
济南演示VPC1:VPC 地址范围为 172.16.0.0/16,初始私有网络为“济南演示 vxnet1”,私有网络地址段为 172.16.1.0/24。
济南演示VPC2:VPC 地址范围为 172.17.0.0/16,初始私有网络为“济南演示 vxnet2”,私有网络地址段为 172.17.1.0/24。
-
-
在私有网络“济南演示 vxnet1”及“济南演示 vxnet2”中,分别创建一台云服务器。
-
在私有网络“济南演示 vxnet1”下,创建云服务器“济南演示主机1”。
服务器配置:镜像选择 CentOS 7.5 64 bit,指定对应的 IP 地址为 172.16.1.2。
-
在私有网络“济南演示 vxnet2”下,创建云服务器“济南演示主机2”。
服务器配置:镜像选择 CentOS 7.5 64 bit,指定对应的 IP 地址为 172.17.1.2。
-
-
创建和配置边界路由器。
-
在菜单栏,选择产品与服务 > 网络 > 边界路由器,进入边界路由器页面。
-
点击创建,创建边界路由器, 命名为“北京边界路由器1”。
-
点击边界路由器 ID,进入边界路由器页面,点击关联 VPC 私有网络。
-
选择私有网络“济南演示vxnet1”和“济南演示vxnet2”,点击提交。
-
-
配置内网路由策略,VPC1 与 VPC2 互指路由。
-
在边界路由器详情页,点击“济南演示vxnet1”路由设置,进入VPC1的管理配置 > 内网路由策略页面。
-
点击添加规则,下一跳选择“北京边界路由器1”,目标网络填写 “172.17.1.0/24”,点击提交。
-
点击右上角应用修改,将规则修改同步到管理后台。
-
按照同样方法,进入 VPC “济南演示VPC2” 详情页面,添加规则下一跳选择“北京边界路由器1”,目标网络填写 “172.16.1.0/24”,点击提交 > 应用修改。
-
-
分别登录VPC1与VPC2下的两台云服务器,验证网络连通性,可以看到云服务器间已经能够互通。
-
登录“济南演示云服务器1”,执行命令 ip a,查看本机网络信息;执行 ping 172.17.1.2。
-
登录“济南演示云服务器2”,执行命令 ip a,查看本机网络信息;执行 ping 172.16.1.2。
-
步骤二:利用 SD-WAN 网关打通不同区域 VPC
使用边界路由器及 SD-WAN 服务实现不同区域下的 VPC 私有网络云服务器网络互通,网络架构如下:
-
切换至“济南2区”,创建一个 VPC 网络。
-
在菜单栏,选择产品与服务 > 网络 > VPC 网络。
-
点击创建 VPC 网络,创建“济南演示VPC1”。
VPC 地址范围为 192.168.0.0/16,初始私有网络为“济南演示vxnet1”,私有网络地址段为 192.168.211.0/24。
-
-
在私有网络“济南演示vxnet1”中,创建一台云服务器“济南演示主机1”。
云服务器配置:镜像选择 CentOS 7.5 64 bit,指定对应的 IP 地址为 192.168.211.2。
-
登录“济南演示主机1”,分别 ping “济南演示主机1”及“济南演示主机2”,验证网络隔离。
-
创建和配置边界路由器。
-
在菜单栏,选择产品与服务 > 网络 > 边界路由器,进入边界路由器页面。
-
点击创建,创建边界路由器, 命名为“济南边界路由器1”。
-
进入边界路由器详情页面,点击关联 VPC 私有网络。
-
选择私有网络“济南演示vxnet1” ,点击提交。
-
-
创建SD-WAN网关。
-
在菜单栏,选择产品与服务 > SD-WAN > 网关。
-
点击创建接入点(若未创建企业云网,请先在企业云网页面进行创建)。
-
选择可用区“济南 1 区” 后,选择计费模式,点击提交 > 确认。
-
再次点击创建接入点,选择可用区“济南 2 区” ,选择计费模式,点击提交 > 确认。
-
-
为济南 VPC1 配置内网路由策略,路由指向北京 VPC1 与 VPC2。
-
进入“济南演示VPC1”详情页,点击管理配置 > 内网路由策略 > 添加规则,添加内网路由策略。
-
下一跳选择“济南边界路由器1”,目标网络“172.16.1.0/24” 及目标网络“172.17.1.0/24” ,点击提交。
-
点击应用修改。
-
-
为济南 VPC1 和 VPC2 配置内网路由策略,路由指向济南 VPC1。
-
在“济南 1 区” 区域,进入“济南演示VPC1”详情页,点击管理配置 > 内网路由策略 > 添加规则,添加内网路由策略。
-
设置下一跳为“济南边界路由器1”,目标网络为“192.168.211.0/24”,点击提交 > 应用修改。
-
在“济南 1 区” 区域,进入“济南演示VPC2”详情页,点击管理配置 > 内网路由策略 > 添加规则,添加内网路由策略。
-
设置下一跳为“济南边界路由器1”,目标网络为“192.168.211.0/24”,点击提交 > 应用修改。
-
-
验证济南VPC1、济南VPC2、济南VPC1之间的网络通信。
-
登录“济南演示主机1”,验证与“济南演示主机1” 和“济南演示主机2” 的通信。
-
登录“济南演示主机1”,验证与“济南演示主机1” 的通信。
-
登录“济南演示主机2”,验证与“济南演示主机1” 的通信。
-
步骤三:搭建跨区域的高可用负载均衡服务
在“济南演示VPC1”中创建 LB,根据上文中的网络架构,负载均衡VIP地址与 VM1/VM2/VM3 都已经处于三层可达状态,所以可以添加三个云服务器作为后端服务器,网络架构如图所示:
-
申请公网 IP。
-
在济南 1 区,选产品与服务 > 网络 >公网 IP,进入公网 IP页面。
-
点击申请,提示备案相关信息,点击 继续申请公网IP,填写公网 IP 参数,名称设置为“演示公网 IP”,然后点击提交。
-
查看申请的公网 IP为:139.198.18.135 (以系统实际分配 IP 为准)
-
-
创建负载均衡器,添加云服务器“济南演示主机1”和“济南演示主机2”为后端。
-
在济南 1 区,选产品与服务 > 网络 >负载均衡器,进入负载均衡器页面。
-
点击创建,创建负载均衡器。
负载均衡器配置:点击添加公网IPv4 选择“演示公网IP”,并选择私有网络“济南演示vxnet1”,命名负载均衡器为“跨Region负载均衡”。
-
点击进入负载均衡器详情页,点击创建监听器,创建一个 HTTP 监听器。
-
设置名称“网站负载均衡” ,协议选择“HTTP” ,端口“80”,点击提交。
-
点击添加后端,在弹出的窗口中,选择私有网络“济南演示vxnet1”、云服务器“济南演示主机1”,端口 80,点击提交。
-
再次点击添加后端,在弹出的窗口中,选择私有网络“济南演示vxnet2”、云服务器“济南演示主机2”,端口 80,点击提交。
-
-
负载均衡器添加云服务器“济南演示主机1”为后端。
-
点击添加后端,网络类型选择“IP”,输入“济南演示主机1”的 IP 地址“192.168.211.2”,端口 80,点击提交。
-
点击应用修改,使负载均衡器配置生效。
-
-
为负载均衡器添加路由表。
-
在济南 1 区,在页面左侧导航树,选择网络 > 路由表。
-
点击创建,创建路由表,关联资源类型选择负载均衡器,点击提交。
-
右键点击路由表,选择负载均衡器>绑定,将路由表绑定到之前创建的负载均衡器,并点击应用修改。
-
点击路由表 ID,进入路由表详情页,点击添加路由,设置名称为“跨Region路由”,目标网络为“192.168.211.0/24”,下一跳“172.16.1.254”,点击提交。
-
点击 添加路由,设置名称为“跨VPC路由”,目标网络“172.17.1.0/24”,下一跳“172.16.1.254”,点击提交。
-
点击应用修改。
-
步骤四:验证负载均衡服务
为三台云服务器“济南演示主机1”、“济南演示主机2”、“济南演示主机1”部署 httpd 服务。
-
登录云服务器,运行以下命令安装 httpd 服务。
yum install –y httpd
-
安装完成后,运行以下命令,启动 httpd 服务。
service httpd start chkconfig httpd on
-
在/var/www/html下,输入命令
vi index.html
,新建 index.html 并编辑。 分别将“济南演示主机1”、“济南演示主机2” 、“济南演示主机1” 填入到相应云服务器的 index.html 文件。<h1 style="text-align:center;"> <span style="color:#60D978;">济南演示主机1</span> </h1> <p style="text-align:center;"> 山河云@QingCloud </p>
-
使用浏览器访问负载均衡器绑定的公网 EIP 地址
139.198.18.135
,查看网页效果,利用浏览器刷新按钮查看轮询的云服务器切换效果,分别显示效果如下。至此跨 Region 的负载均衡器就搭建完毕了。