AWS高可用架构——从“单点故障”到“永不宕机”
开篇:那个凌晨三点的电话
凌晨三点,老吴被电话吵醒。运维同事的声音很急:“网站挂了,数据库连不上,用户都在骂。”
老吴登录AWS控制台一看——只有一个可用区(AZ)的数据库实例挂了。整个系统没有跨可用区部署,没有自动故障转移,没有备份。
恢复时间:4小时。 用户流失:无法统计。老板问了他一句话:“你不是说云上很可靠吗?”
一、高可用的核心公式:冗余 + 自动化 = 可用性
AWS的SLA(服务等级协议)承诺EC2单实例99.9%的可用性——一年宕机不超过8.76小时。听起来不错?但对一个日活百万的SaaS来说,8小时宕机意味着数百万美金的损失和不可挽回的用户流失。
真正的高可用不是“不出事”,而是“出事了能自动恢复” 。
二、第一层防护:跨可用区(Multi-AZ)部署
AWS的每个区域(Region)由多个可用区(Availability Zone)组成——每个AZ是独立的物理数据中心,有自己的电力、制冷和网络。
单AZ部署的问题:如果那个AZ发生故障,所有服务全部宕机。
跨AZ部署的好处:如果一个AZ挂了,另一个AZ继续提供服务。
生产环境的标准配置:
至少2个可用区
每个AZ部署相同的服务副本
前端用负载均衡器分发流量
数据库用Multi-AZ部署(RDS自动同步到备用AZ)
三、第二层防护:弹性负载均衡(ELB)
负载均衡器是高可用架构的“交通警察”——它把用户请求分发到多台服务器上。
AWS提供三种负载均衡器:
ALB(应用负载均衡器) :工作在HTTP/HTTPS层,支持基于路径的路由、主机名路由。适合Web应用和微服务。
NLB(网络负载均衡器) :工作在TCP/UDP层,性能极高,支持每秒数百万个请求。适合高吞吐量的TCP应用。
GLB(网关负载均衡器) :用于部署第三方网络设备(如防火墙)。
负载均衡器的健康检查——这是最容易被忽略的功能。配置健康检查后,ELB会自动把流量从“不健康”的实例上移走,只转发到“健康”的实例。
四、第三层防护:自动扩展(Auto Scaling)
负载均衡器解决了“流量往哪发”的问题,但没解决“服务器不够了怎么办”的问题。
Auto Scaling自动扩展可以:
根据CPU使用率、内存使用率、请求数等指标自动增加或减少实例数量
在实例故障时自动替换(自愈能力)
在流量高峰时自动扩容,在低谷时自动缩容
配置Auto Scaling的三个关键参数:
最小实例数:保证服务不中断的最低数量
最大实例数:防止失控扩容的成本上限
扩展策略:什么条件下扩容/缩容(如CPU超过70%时加一台)
五、第四层防护:数据库高可用
数据库往往是整个系统的单点故障——Web服务器可以随便扩,但数据库挂了就全完了。
RDS Multi-AZ:
主实例在一个AZ,备实例在另一个AZ
数据同步复制(Synchronous Replication)
主实例故障时自动故障转移(通常60-120秒)
对应用透明——应用不需要改任何代码
Aurora Global Database:
跨区域复制(跨洲际)
全球最多15个只读副本
区域故障时RTO(恢复时间)小于1分钟
六、第五层防护:灾难恢复(DR)
如果整个区域都挂了怎么办?虽然概率极低(AWS区域级别的故障历史上只发生过几次),但对关键业务来说,必须有Plan B。
策略 | RTO | RPO | 成本 | 适用场景 |
备份与恢复 | 小时级 | 小时级 | 低 | 非关键系统 |
Pilot Light(指示灯) | 分钟级 | 分钟级 | 中 | 可接受短时中断的系统 |
Warm Standby(温备) | 分钟级 | 秒级 | 中高 | 关键业务系统 |
Multi-Site Active/Active | 秒级 | 秒级 | 高 | 金融、核心交易系统 |
七、实用表格:高可用架构检查清单
层级 | 组件 | 检查项 | 状态 |
计算层 | EC2 | 是否部署在≥2个可用区? | ☐ |
计算层 | EC2 | 是否加入Auto Scaling组? | ☐ |
网络层 | ELB | 是否配置了健康检查? | ☐ |
网络层 | ELB | 是否启用了跨可用区负载均衡? | ☐ |
数据库层 | RDS | 是否启用了Multi-AZ? | ☐ |
数据库层 | RDS | 是否配置了自动备份? | ☐ |
灾难恢复 | DR | 是否制定了DR计划并演练过? | ☐ |
监控 | CloudWatch | 是否配置了关键指标的告警? | ☐ |
小结:高可用是设计出来的,不是运气
“云上很可靠”不等于“你随便部署一下就很可靠”。 高可用是设计出来的——跨AZ部署、负载均衡、自动扩展、数据库高可用、灾难恢复,每一层都需要主动配置。
如果你现在只有单AZ部署,今天就开始改。不要等到凌晨三点的电话响了才后悔。
如果需要更深入咨询了解可以联系全球代理上TG:jinniuge 他们在云平台领域有更专业的知识和建议,他们有国际阿里云,国际腾讯云,国际华为云,aws亚马逊,谷歌云一级代理的渠道,客服1V1服务,支持免实名、免备案、免绑卡。开通即享专属VIP优惠、充值秒到账、官网下单享双重售后支持。不懂找他们就对了。
3 .0
