1.
准备与网络规划
小分段:规划VPC与可用区。登录阿里云控制台,选择香港 Region(ap‑east‑1),在网络与安全 > 专有网络(VPC) 新建VPC并创建2个子网,分别位于不同可用区(A、B)。创建交换机、路由表与NAT网关(若公网出站需要)。
2.
创建ECS实例(多节点)
小分段:在ECS控制台按子网分别创建至少2台ECS(Ubuntu/CentOS),配置安全组放行80/443/22,并为每台绑定弹性公网IP(EIP)或仅为负载均衡分配EIP。建议规格选择能满足并发并开启云盘快照策略。
3.
基础环境部署与应用安装
小分段:SSH登录ECS:ssh root@EIP,安装环境示例(CentOS):
yum update -y
yum install -y nginx git
systemctl enable --now nginx
将应用代码部署到/var/www,确认能在本机通过 curl http://localhost:80 返回200。
4.
配置健康检查 API 与端点
小分段:在应用中添加简单健康检查路径如 /health 返回 {"status":"ok"} 及 200 状态。验证:
curl -I http://localhost/health
在防火墙允许SLB健康检查的源IP或安全组规则。
5.
部署阿里云负载均衡(SLB)
小分段:在控制台选择负载均衡 > 创建实例,类型选择应用型或经典,需要将后端服务器添加为后端服务器组,选择监听端口80/443,配置转发策略。设置健康检查为HTTP,路径/health,间隔与阈值按业务调整(例如间隔5s,连续3次失败下线)。
6.
会话保持与SSL证书配置
小分段:如应用依赖会话,开启会话保持(Source IP或Cookie方式)或推荐改用Redis会话共享。HTTPS:在证书管理上传/申请证书,负载均衡添加HTTPS监听,选择证书并绑定后端。测试https访问并检查证书链。
7.
弹性伸缩与自动化部署
小分段:配置弹性伸缩(ESS):创建伸缩组并绑定VPC子网,定义伸缩策略(CPU、并发或自定义监控)。使用镜像或启动脚本(UserData)自动化安装应用或拉取配置管理(Ansible/Chef/Puppet/GitLab CI)。
8.
备份与跨区域灾备策略
小分段:开启云盘自动快照,定期创建实例镜像,使用阿里云备份服务(HBR)将快照同步到其他Region。数据库使用RDS则配置备份与跨区只读/主备或使用DTS做异地同步,静态文件上传至OSS并开启跨区域复制。
9.
故障演练与切换流程
小分段:演练步骤:关闭可用区A的ECS,观察SLB自动下线并切换流量;模拟主数据库不可用,触发RDS切换或切换到只读副本并提升为主。记录时间点与回滚步骤,导出监控与日志用于分析。
10.
安全与监控最佳实践
小分段:开启云监控(CMS)告警(CPU、内存、响应时间、健康检查失败),SLS收集日志,限制安全组最小权限,使用Web应用防火墙(WAF)与DDoS防护,定期更新系统与依赖。
11.
问:如何验证SLB与后端的健康检查配置是否正确?
答:在每台后端服务器上访问 /health 确认返回200并无重定向;在SLB控制台查看后端健康状态,或用 curl -I http://SLB监听IP:端口/health 验证由SLB转发能命中后端。若失败,检查安全组与防火墙规则。
12.
问:灾备恢复时如何快速恢复静态文件与配置?
答:静态文件采用OSS并启用跨Region复制,恢复时只需在DR Region创建绑定相同Bucket的映射或更新CNAME。配置通过镜像或配置管理工具(Ansible)快速回放启动脚本并挂载快照或镜像。
13.
问:如何在成本可控下实现高可用与自动扩缩容?
答:主站使用少量规格稳定实例+SLB,监控并按需自动扩缩;将状态保存到Redis/OSS减少会话粘滞;使用按量与预留实例混合策略,设置伸缩冷却时间与最大实例数上限以控制费用。
来源:高可用架构阿里云香港服务器搭建vps灾备与负载均衡指南