IPv6 负载均衡快速入门
最近更新时间: 2025-01-15 17:01:00
负载均衡支持 IPv4、IPv6 和 IPv6 NAT64 三个 IP 版本,IPv6 负载均衡支持 TCP/UDP/HTTP/HTTPS 协议,提供基于域名和 URL 路径的灵活转发能力。本文将引导您如何快速使用 IPv6 负载均衡。
前提条件
- 负载均衡只负责转发流量,不具备处理请求的能力。因此,您需要首先搭建处理用户请求的云服务器实例,并完成云服务器的 IPv6 配置。有关如何创建云服务器实例并启用 IPv6,请参见 快速搭建 IPv6 私有网络。
- 本文以 HTTP 转发为例,云服务器上必须部署相应的 Web 服务器(如 Apache、Nginx、IIS 等),同时 Web 服务使用的端口需要监听 IPv6。
使用说明
- IPv6 负载均衡支持获取客户端 IPv6 源地址。
- 四层 IPv6 负载均衡支持直接获取客户端 IPv6 源地址。
- 七层 IPv6 负载均衡支持通过 HTTP 的 X-Forwarded-For 头域获取客户端 IPv6 源地址。
- 当前 IPv6 负载均衡是纯公网负载均衡,相同 VPC 的客户端无法通过内网访问该 IPv6 负载均衡。
步骤1:搭建云服务器并配置 IPv6
登录腾讯云金融专区官网,选择云产品 > 云计算与网络 > 云服务器,登录云服务器控制台完成 IPv6 的基础配置,详细操作请参见 快速搭建 IPv6 私有网络。
在云服务器中,依次执行如下命令,部署并重启 Nginx 服务。
yum install nginx service nginx restart
查看部署在云服务器上的 Nginx 服务是否已经监听 IPv6。
执行如下命令进行查看。
netstat -tupln
执行如下命令,打开 Nginx 配置文件进行查看。
vim /etc/nginx/nginx.conf
步骤2:创建 IPv6 负载均衡实例
- 登录腾讯云金融专区官网,选择云产品 > 云计算与网络 > 负载均衡,登录负载均衡控制台。
- 在LB实例列表界面,单击新建进入负载均衡 LB实例购买界面。
- 在负载均衡 LB 实例购买界面,设置网络类型为公网,可用区类型为单可用区,IP 版本为 IPv6,网络请务必选择已经获取IPv6 CIDR的私有网络和子网,所属运营商为外网CAP。实例名和购买数量您选择默认或按需配置均可。然后单击确认开通。
- 在 LB 实例列表即可看到新建的实例。
步骤3:创建 IPv6 负载均衡监听器
配置 HTTP 监听协议和端口
- 在 LB 实例列表界面,选择已创建的负载均衡实例,单击实例ID,进入负载均衡详情页。
- 在基本信息模块,可以单击名称后的修改图标修改实例名称。
- 在监听器管理中的 HTTP/HTTPS 监听器下,单击新建,新建负载均衡监听器。
- 在弹出的对话框中,配置以下参数,完成后单击确定。
参数 | 说明 |
---|---|
名称 | 监听器名称。本示例中可自定义为“Listener1”。 |
监听器协议 | 监听器的协议和监听端口。
|
默认域名 | 可选择开启或关闭。
|
配置监听器的转发规则
- 在监听器管理中,选中刚才新建的监听器 IPv6test,单击+,弹出创建HTTP/HTTPS转发规则对话框。
- 在弹出的转发规则对话框中,设置域名、URL 路径和均衡方式等基本配置信息,单击下一步:健康检查。
- 域名:您的后端服务所使用的域名,本例使用
www.qcloudtest.com
。域名支通配符,详情请参见 配置说明。 - URL 路径:您的后端服务的访问路径,本例使用
/image/
。 - 均衡方式选择【按权重轮询】。
- 域名:您的后端服务所使用的域名,本例使用
- 配置健康检查:开启健康检查,检查域名使用默认的转发域名和转发路径,单击下一步:会话保持。
- 会话保持:开启会话保持并配置保持时间,单击提交。
有关负载均衡监听器的更多内容,请参见 负载均衡监听器概述。
说明:
- 一个监听器(即监听协议:端口)可以配置多个域名,一个域名下可以配置多条 URL 路径,选中监听器或域名,单击【+】即可创建新的规则。
- 会话保持:如果用户关闭会话保持功能,选择轮询的方式进行调度,则请求依次分配到不同后端服务器上;如果用户开启会话保持功能,或关闭会话保持功能但选择 ip_hash 的调度方式,则请求持续分配到同一台后端服务器上去。
绑定云服务器
- 在监听器管理界面,选中并展开刚才创建的监听器,选中域名、选中 URL 路径,右侧区域框为URL路径已绑定的云服务器 IPv6 信息列表,新增绑定请单击绑定。
- 在弹出的绑定RS对话框中,勾选需要绑定的弹性网卡,并设置云服务器的 Nginx 服务默认端口为80,设置权重(默认值10),单击确定。
说明:
CLB绑定的ENI时,ENI必须绑定在CVM上;没有绑定CVM的ENI不能被CLB绑定。
- 成功绑定云服务器后:
- 请确认端口状态是否为健康,如果为健康,请进行 步骤4:测试 IPv6 负载均衡。
- 如果端口状态为异常,请确定监听器是否绑定了正确的云服务器的 Nginx 服务端口,同时登录云服务器检查端口已经正常监听 IPv6,可参见 步骤1中的第3步 进行查看。
步骤4:测试 IPv6 负载均衡
配置完成 IPv6 负载均衡后,可以验证该架构是否生效,即验证通过一个 CLB 实例下不同的域名 + URL 访问不同的后端云服务器,也即验证内容路由(content-based routing) 的功能是否可用。
使用具有 IPv6 公网能力的客户端,访问域名或者负载均衡的 IPv6 地址,如果能够正常访问云服务器的 Web 服务,则表明 IPv6 负载均衡工作正常,示例步骤如下:
- 在 Windows 系统中,进入
C:\Windows\System32\drivers\etc
目录,修改 hosts 文件,将域名映射到 CLB 实例的 VIP 上。
- 为了验证 hosts 是否配置成功,可以运行 cmd,用 ping 命令探测一下该域名是否成功绑定了 VIP,如有数据包,则证明绑定成功。
- 在浏览器中输入访问路径
http://www.example.com/image/
,测试负载均衡服务。如下图所示,则表示本次请求被 CLB 转发到了 rs-1 这台 CVM 上,CVM 正常处理请求并返回。
- 此监听器的轮询算法是“按权重轮询”,且两台 CVM 的权重都是“10”,刷新浏览器,再次发送请求,可以看到本次请求被 CLB 转发到了 rs-2 这台 CVM 上。
!
image/
后/
必须保留,代表 image 是默认的目录,而不是名为 image 的文件。