EC2自动伸缩组是几个用于管理和伸缩目的的Amazon EC2实例的逻辑集合。自动伸缩组允许您使用EC2自动伸缩服务的核心功能,包括运行状况检查、最小/最大实例和伸缩策略。
EC2 Auto Scaling功能主要围绕着维护组中指定数量的实例,或根据不同方面(如应用程序负载或预定计划)自动增加或减少组的大小。
EC2自动缩放是通用的一部分AWS自动缩放服务,它可以帮助您扩展多个Amazon服务,包括ECS和RDS。
自动伸缩组的大小是根据预定义的实例数量来维护的,您可以将实例数量配置为所需的容量。您可以使用手动或自动调整大小来根据应用程序需求调整组的大小。
最初,自动伸缩组启动足够的实例以达到所需的容量。默认情况下,它通过执行定期的运行状况检查、识别不健康的实例、终止它们并启动其他替换实例来维护这个数量的实例。
除了这个基本功能之外,您还可以使用伸缩策略来动态更改组大小,为以下作业使用策略:
当策略处于活动状态时,自动伸缩组动态地更改实例数量,使实例数量保持在为您的组定义的最大值和最小值之间。
自动伸缩组使用启动模板来定义将启动哪些新实例。您可以在启动模板中定义一个特定的实例类型,或者几种类型的实例。您还可以为不同的EC2资源设置不同的启动模板。雷竞技rabet官网
在我们的文章中了解更多EC2自动缩放.
Region中的多个AZ可以跨多个自动伸缩组。下一步是附加一个负载均衡器,它将传入的流量均匀地分配到所有选择的az。
一旦一个可用分区变得不可用或不健康,自动伸缩将启动并使用最少的实例向可用分区添加新实例。如果或当这些尝试失败时,自动伸缩将尝试在其他az中启动这些实例,并继续此过程,直到成功。
当您需要扩展应用程序的可用性时,您可以将一个可用分区添加到自动伸缩组中。请记住为相应的负载均衡器启用可用分区。启用新AZ后,负载均衡器开始在所有启用的AZ中以平等的方式路由流量。
注意,虽然自动伸缩组可以包含来自多个az的实例,但所有az必须位于相同的Region中。此功能不支持使用多个区域。
以下是您在选择可用分区时可能需要考虑的其他限制:
自动伸缩组允许您启动由按需EC2实例和现货实例组成的舰队。在自动缩放时,有多种方法可以获得实例的折扣率:
混合使用不同类型的实例还可以提高可用性:
了解更多混合EC2自动伸缩组和现货实例
自动伸缩组使用几种分配策略将特定类型的实例添加到组中:
即使点实例可以与自动伸缩组中的随需应变实例混合在一起,但仍然可以中断点实例。当Spot实例处于高中断风险时,EC2提供了一个实例再平衡建议.
亚马逊明确警告说,它不会总是提前发送这个建议,它可能会与现场实例中断通知,在实例被中断之前,您可以在两分钟内将工作负载移出实例。
一旦您收到重新平衡建议或中断通知,您可以选择:
您可以启用一个名为产能平衡EC2自动伸缩组。这意味着Auto Scaling将自动尝试用另一个没有收到此警告的实例替换接收到重新平衡建议的现货实例。或者,您可以创建一个生命周期钩子,以便在收到警告时执行任何其他操作。
了解更多现货实例的预测再平衡
您可以使用标记对自动伸缩组进行分类——例如,指示它们的用途、它们所运行的环境或它们的所有者。您可以将多个标记添加到单个组中,并指定标记也应该应用于组内的各个EC2实例。这可以帮助分解EC2账单中的实例成本。
Amazon弹性负载平衡(ELB)用于自动将传入流量分配到EC2实例,因此实例不会过载。您可以向负载均衡器注册一个自动伸缩组。这允许在自动伸缩组的所有成员之间进行负载平衡。
当自动伸缩组附加到负载均衡器时,所有传入的请求都将发送到负载均衡器,负载均衡器将流量路由到组中的一个实例。重要的是要认识到,添加到自动伸缩组或从自动伸缩组中删除的实例需要显式地从负载均衡器中注册或注销。
将负载均衡器附加到自动伸缩组后,就可以根据ELB指标(例如每个目标的请求数量)对组进行配置,使其伸缩。还可以使用负载均衡器执行的运行状况检查来触发伸缩事件。
您可以在EC2自动伸缩组中使用以下类型的负载均衡器:
您的负载均衡器和自动伸缩组需要在同一区域。此外,您的负载均衡器目标必须是实例而不是知识产权,以便连接到自动伸缩组。
Elastigroup提供人工智能驱动的现场实例中断预测,并通过现场、保留和按需实例的最佳混合自动重新平衡工作负载。它允许您利用现场实例来降低AWS中的成本,即使对于生产和关键任务工作负载,管理开销也很低。
Elastigroup的主要功能包括: