华为云ELB实战:用负载均衡把多台Web服务器接起来,再绑HTTPS证书
【摘要】 用ELB把多台Web服务器接成负载均衡,配健康检查和分配策略,并绑定HTTPS证书,踩了证书格式和健康检查路径的坑。网络入口高可用的标准做法。
标签:弹性负载均衡 ELB, 高可用, 实践教程, HTTPS, 负载均衡
一、多台机器为什么要加负载均衡
当你有两台(或更多)一模一样的 Web 服务器,问题就来了:用户访问谁?手动分配不现实。这时候 ELB(弹性负载均衡) 出场:它给你一个统一入口,把流量按策略分给后端多台服务器,任何一台挂了,流量自动切到健康的那台。
ELB 分几种:
- 应用型(七层):能看懂 HTTP/HTTPS,按 URL、域名、Cookie 转发,还能绑证书做 HTTPS。
- 网络型(四层):只认 TCP/UDP 端口,性能好、延迟低,适合非 HTTP 场景。
- 经典型:老一代,逐步被前两者取代,新项目别选了。
Web 站点要绑 HTTPS、还要按路径转发,选应用型 ELB。
二、搭建链路:ELB → 监听器 → 后端组 → 服务器
ELB 的配置是一条链,理解了就不乱:
- 创建 ELB 实例:选规格、所属 VPC(必须和后端的 ECS 同 VPC)、绑一个公网 IP(或者用共享带宽包)。
- 添加监听器:监听 80(HTTP)和 443(HTTPS)。443 监听器要选证书。
- 后端服务器组:建一个组,把多台 Web ECS 加进去,填好端口(后端是 8080 就填 8080,是 80 就填 80)。
- 健康检查:ELB 靠它判断哪台活着。我配了"TCP 端口探测" + 对前端配了"HTTP GET /health 返回 200"。

三、分配策略怎么选
| 策略 | 行为 | 适合 |
|---|---|---|
| 轮询 | 一台一台轮流分 | 后端性能一致 |
| 最少连接 | 分给当前连接最少的 | 请求耗时不均 |
| 源 IP 哈希 | 同 IP 总落同一台 | 需要会话保持 |
后端配置一模一样时,用轮询就够;如果想要用户会话不跳来跳去,可以开"会话保持"(基于 Cookie 或源 IP)。
四、绑定 HTTPS 证书
现在浏览器都标"不安全"了,HTTPS 基本是标配。我在 ELB 的 443 监听器里绑了证书:
- 有域名的话,去华为云 SSL 证书管理 申请一张免费 DV 证书(或上传自有证书);
- 监听器"证书"选项选这张证书,前端协议改 HTTPS,后端协议看情况(同 VPC 内可以用 HTTP,省去后端再配 TLS)。
华为云的免费证书一般针对 Single Domain,通配符/多域名要付费,按自己域名情况选。
五、踩坑实录
- 健康检查路径返回非 200,后端被全摘。我最开始配的
/health接口忘了在应用里实现,ELB 一探测全失败,两台都被判"不健康",网站直接 502。补上返回 200 的 health 接口立刻恢复。健康检查路径务必真能返回 200。 - 证书格式不对传不上去。上传自有证书要 PEM 格式(包含证书链),我第一次把只含私钥的搞混了,报错。用
fullchain.pem才过。 - 监听器协议和后端协议要分清。前端 HTTPS、后端 HTTP 是常见组合,但如果你后端服务本身没监听对应端口,照样不通。先
curl后端 IP:端口 验证通了再加 ELB。 - 后端 ECS 的安全组要放行 ELB 的探测 IP 段(一般是 VPC 内网),否则健康检查永远失败。
六、效果与费用
配完之后,访问 ELB 的公网地址,请求就在多台机器间轮流转。我手动停掉其中一台,刷新页面照常访问——这才是真正意义上的"一台挂了不影响业务"。
费用上,ELB 实例本身按规格和 LCY(负载均衡能力)计费,后面挂的 ECS 另算。个人小项目选最小规格足够,比为了高可用去搞 Keepalived + 双机心跳省心太多。
七、小结
这一篇把 Web 服务从"单点"升级成"高可用":
- ELB 统一入口,后端多台 ECS 分担流量;
- 应用型监听器 + HTTPS 证书,站点变 https 且能按路径转发;
- 健康检查是生命线,路径必须真返回 200。
负载均衡是线上业务的基本功,哪怕只有两台机器,配上 ELB 也比单台裸跑稳一个量级。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)