elb
共享型负载均衡快速入门(基础版)
更新时间:2021/02/24 GMT+08:00
操作场景
假如您有一个Web应用,由于业务量比较大,需要使用两个弹性云服务器(简称ECS)进行业务负载分担。
共享型负载均衡,可以将访问流量根据流量分配策略分发到后端多台服务器,实现业务的负载分担。同时消除了单点故障,提升了业务的可用性。
前提条件
- 后端服务器的安全组已经开通了业务需要使用的端口(也可以先开通所有端口,业务部署完成后再限制不使用的端口)。具体操作可参见“后端服务器配置安全组”。
- 由于弹性负载均衡通过“100.125.0.0/16”网段的IP与后端服务器互访,为了保证健康检查功能正常使用,后端服务器的安全组必须开通“100.125.0.0/16”网段。
创建弹性云服务器
负载均衡只负责流量转发,不具备处理请求的能力。因此,需要通过ECS实例处理用户的请求。
在当前场景中,弹性云服务器需要创建并绑定弹性公网IP (简称EIP)。ECS绑定EIP仅作为本次示例中配置ECS后端业务所需,用户实际使用时,需要根据自身业务规划确定ELB是否绑定EIP,具体原则请参见公网和私网负载均衡器。
搭建后端服务
在ECS实例上部署Nginx,编辑HTML页面,使访问ECS01时返回一个标题为“Welcome to ELB test page one!”的页面,访问ECS02时返回一个标题为“Welcome to ELB test page two!”的页面。
- 登录弹性云服务器。
- 安装nginx。
- 修改ECS实例ECS01的html页面。Nginx的默认根目录是“/usr/share/nginx/html”,修改“index.html”页面,用来标识到ECS01的访问。
- 执行以下命令打开文件“index.html”。
- 按i键进入编辑模式。
- 修改打开的“index.html”文件。修改文件内容,涉及内容修改部分如下所示:
... <body> <h1>Welcome to <strong>ELB</strong> test page one!</h1> <div class="content"> <p>This page is used to test the <strong>ELB</strong>!</p> <div class="alert"> <h2>ELB01</h2> <div class="content"> <p><strong>ELB test (page one)!</strong></p> <p><strong>ELB test (page one)!</strong></p> <p><strong>ELB test (page one)!</strong></p> </div> </div> </div> </body>
- 按Esc键退出编辑模式,并输入:wq保存后退出。
- 修改ECS实例ECS02的html页面。Nginx的默认根目录是“/usr/share/nginx/html”,修改“index.html”页面,用来标识到ECS02的访问。
- 执行以下命令打开文件“index.html”。
- 按i键进入编辑模式。
- 修改打开的“index.html”文件。
... <body> <h1>Welcome to <strong>ELB</strong> test page two!</h1> <div class="content"> <p>This page is used to test the <strong>ELB</strong>!</p> <div class="alert"> <h2>ELB02</h2> <div class="content"> <p><strong>ELB test (page two)!</strong></p> <p><strong>ELB test (page two)!</strong></p> <p><strong>ELB test (page two)!</strong></p> </div> </div> </div> </body>
- 按Esc键退出编辑模式,并输入:wq保存后退出。
- 使用浏览器分别访问“http://ECS01的公网IP地址”和“http://ECS02的公网IP地址”,验证nginx服务。
如果页面显示修改后的html页面,说明nginx部署成功。
- ECS01的html页面:图2 ECS01的nginx部署成功页面
- ECS02的html页面:图3 ECS02的nginx部署成功页面
- ECS01的html页面:
新建负载均衡器
- 在管理控制台左上角单击
图标,选择区域和项目。
区域和项目选择与使用的弹性云服务器保持一致,选择“华北-北京一”。
- 选择“服务列表 > 网络 > 弹性负载均衡”。
- 在“负载均衡器”界面单击“购买弹性负载均衡”,根据界面提示配置参数,如下图所示。图4 购买弹性负载均衡器
- 单击“立即购买”。
- 确认配置信息,并单击“提交”。
- 创建完成后,在“负载均衡器”界面,选择对应的区域即可看到新建的负载均衡器。
添加监听器
负载均衡监听器通过指定的协议和端口进行流量转发。同时监听器将根据健康检查的配置自动检查其后端服务器的运行状况。如果发现某台服务器运行不正常,则会停止向该服务器发送流量,并重新将流量发送至正常运行的服务器。
图5 数据转发示意图


- 选择“服务列表 > 网络 > 弹性负载均衡”。
- 在“负载均衡器”界面,单击需要添加监听器的负载均衡名称“elb-01”。
- 切换到“监听器”页签,单击“添加监听器”。
- 配置监听器,单击“下一步”。
- 名称:监听器名称,示例为“listener-HTTP”。
- 前端协议/端口:负载分发的协议和端口,示例为“HTTP/80”。
图6 配置监听器 - 配置后端服务器组和开启健康检查,单击“完成”。
- 后端服务器组
- 名称:后端服务器组名称,示例为“server_group-ELB”。
- 分配策略类型:负载均衡采用的算法,示例为“加权轮询算法”。
- 健康检查配置
图7 配置后端服务器组图8 开启健康检查 - 后端服务器组
- 在新添加的监听器下,单击后端服务器组页签的“添加”。图9 添加服务器
- 勾选需要添加的服务器,设置业务端口,单击“完成”。
- 服务器勾选“ECS01”和“ECS02”。
- 业务端口:业务所使用的端口,示例为“80”。
图10 添加服务器
验证负载均衡服务
负载均衡实例配置完成后,可通过访问ELB实例对应的域名,验证是否实现访问到不同的后端服务器。
- 修改本地PC的“C:\Windows\System32\drivers\etc\hosts”文件,将域名映射到创建的ELB实例的EIP上。
- 在本地PC的命令行窗口,执行以下命令测试域名映射ELB实例的EIP是否成功。
如有回复数据包,则说明域名映射成功。
- 使用浏览器访问“http://www.example.com”,显示如下页面,说明本次访问请求被ELB实例转发到弹性云服务器"ECS01","ECS01"正常处理请求并返回请求的页面。图12 访问到ECS01
- 再次使用浏览器访问“http://www.example.com”,显示如下页面,说明本次访问请求被ELB实例转发到弹性云服务器"ECS02","ECS02"正常处理请求并返回请求的页面。图13 访问到ECS02
