自动扩展机群 - 托管于 AWS 云中的 Web 应用程序

自动扩展机群

AWS 云架构与传统托管模型之间的一个重要区别在于,AWS 能够按需自动扩展 Web 应用程序机群来应对流量变化。在传统托管模式中,一般使用流量预测模式,根据预测流量提前调配主机。在 AWS 中,可以根据一组触发条件来动态预置实例,以增加或减少机群。

Auto Scaling 服务可用于创建按需伸缩的服务器容量组。也可以直接将 Auto Scaling 与 CloudWatch 配合使用以用于监控指标数据,以及与 Elastic Load Balancing 配合使用以添加和删除用于负载分发的主机。例如,如果 Web 服务器报告在一段时间里 CPU 的使用率超过 80%,系统会迅速再部署一个 Web 服务器,然后自动将其添加到负载均衡器中,以便立即将其纳入负载均衡循环。

如在 AWS Web 托管架构模型中所示,可针对架构的不同层级创建多个Auto Scaling 组,以支持各个层级独立进行扩展。例如,Web 服务器 Auto Scaling 组可以根据网络 I/O 量的波动触发扩展和收缩,而应用程序服务器 Auto Scaling 组可能会根据 CPU 使用率进行扩展和收缩。您可以设置下限和上限,以帮助确保全天候可用性以及最高用量。

可以设置 Auto Scaling 触发条件来增加和缩减某层级的机群总量,从而使资源使用率与实际流量需要相匹配。除了 Auto Scaling 服务外,还可以直接通过 Amazon EC2 API 扩展 Amazon EC2 机群,Amazon EC2 API 可用于启动、终止或检查实例。