使用容量预留在特定可用区中预留容量 - Amazon A EC2 uto Scaling

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用容量预留在特定可用区中预留容量

Amazon EC2 按需容量预留允许您在特定可用区域预留计算容量。要开始在 Auto Scaling 中使用容量预留,请先在特定的可用区域中创建容量预留或容量预留组。然后,您可以在创建 Auto Scaling 组或更新现有组时向该组添加容量预留首选项。

要创建容量预留,请参阅 Amazon EC2 用户指南中的创建容量预留。要创建容量预留组,请参阅 Amazon EC2 用户指南中的创建容量预留组

容量预留首选项

在使用按需容量之前,优先考虑容量预留中的预留容量,从而帮助您高效地使用容量预留。您可以从以下容量预留首选项中进行选择:

  • 默认-Auto Scaling 使用启动模板中的容量预留首选项或打开的容量预留。

  • — Auto Scaling 不会将实例启动到容量预留中。实例将以按需容量运行。

  • 仅限容量预留 — Auto Scaling 只会将实例启动到容量预留组或容量预留组中。如果容量不可用,实例将无法启动。

  • 首先是容量预留 — Auto Scaling 会将实例启动到容量预留组或容量预留组中。如果容量不可用,实例将以按需容量运行。

如果选择 “仅限容量预留” 或 “先容量预留”,则可以指定容量预留目标。

注意

您必须选择容量预留首选项。容量预留目标是可选的。

容量预留首选项和启动模板的注意事项

如果您先选择 “仅限容量预留” 或 “容量预留”,请考虑以下事项:

  • 如果您选择仅限容量预留或先选择容量预留,Auto Scaling 将使用在 Auto Scaling 组中指定的容量预留目标,而不是启动模板中的容量预留目标。

  • 如果您先选择 “仅限容量预留” 或 “容量预留”,但未指定容量预留目标,则 Auto Scaling 将使用启动模板容量预留目标或打开的容量预留。

容量预留目标规范

如果您选择 “仅限容量预留” 或 “先容量预留”,则可以使用以下容量预留目标选项:

  • 打开 — Auto Scaling 将在任何已打开的容量预留中启动实例。如果您选择了 “仅限容量预留”,但容量不可用,则实例将无法启动。如果您先选择容量预留但容量不可用,则实例将以按需容量启动。

  • 指定容量预留-Auto Scaling 将在指定的容量预留中启动实例。如果您选择了 “仅限容量预留”,但容量不可用,则实例将无法启动。如果您先选择容量预留但容量不可用,则实例将以按需容量启动。

  • 指定容量预留资源组-Auto Scaling 会将实例启动到指定容量预留资源组中已打开的容量预留中。如果您选择了 “仅限容量预留”,但容量不可用,则实例将无法启动。如果您先选择容量预留但容量不可用,则实例将以按需容量启动。

可用区平衡和容量预留

即使您使用容量预留首选项,Auto Scaling 也会优先考虑可用区平衡。这意味着:

  • 使用 capacity-reservations-first — Auto Scaling 组将 AZs 首先平均分配实例,然后使用容量预留(如果可用)。如果可用区中没有容量预留,则实例将按需启动以保持可用区平衡。

  • 使用 capacity-reservations-only — Auto Scaling 组将仅使用容量预留。 AZs 根据容量预留的可用位置,这可能会导致实例分布不均匀。

示例

如果您在 az-a 中有 10 个容量预留,AZ-b 中有 3 个容量预留,az-c 中有 1 个容量预留,并且所需容量为 9 个实例:

  • 如果使用 9 capacity-reservations-first 个实例,则每个可用区 3 个实例(保持可用区平衡),有些实例可能会按需运行。

  • 使用 9 capacity-reservations-only 个实例会导致根据可用容量预留分配不均匀。