从现有容量预留中拆分容量 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

从现有容量预留中拆分容量

您可以从现有容量预留中拆分容量来创建新的预留。通过拆分容量,您可以将原始预留的一部分分配给特定工作负载或将其与其他 Amazon Web Services 账户共享。例如,要与其他账户部分共享容量预留,您可以拆分部分容量以创建较小大小的容量预留。然后,可以使用 Amazon Resource Access Manager 与其他账户共享较小大小的容量预留。

当您从现有容量预留中拆分容量时,系统会自动创建新容量预留。现有预留将保持不变,但由于拆分的实例数量而减少的总容量除外。在现有容量预留中运行的实例不受影响。您只能将现有预留拆分为一个新容量预留。

除标签外,新容量预留将与现有容量预留具有相同的配置。默认情况下,新容量预留没有任何标签。您可以在拆分操作期间指定新标签。如有必要,也可以在创建新容量预留之后对其进行修改。

当您指定要拆分的实例数量时,默认情况下,将首先拆分任何可用容量,然后移动任何符合条件的正在运行的实例(预留中的已用容量)。例如:如果您从具有 5 个已使用实例和 3 个可用实例的容量预留中拆分 4 个实例,则 3 个可用实例和 1 个已使用实例将拆分到新的预留中。

拆分容量的先决条件

作为先决条件,您的容量预留必须满足下面的要求:

  • 源预留必须处于活动状态。

  • 源预留必须归您的 Amazon Web Services 账户所有。

注意

当您通过指定大于可用容量的拆分数量来从预留中拆分已用容量时,只有在容量预留规范open 的情况下启动的实例才会被拆分。

注意事项

将容量从一个预留拆分到新的预留时,需要考虑以下事项:

  • 已用容量只能分配给具有“开放”实例资格且未与任何账户共享的容量预留。

  • 当您拆分已用容量时,系统将随机选择符合条件的实例。您无法指定拆分哪些正在运行的实例。如果找不到足够数量的合格实例来满足拆分数量,则拆分操作将失败。

  • 从现有预留中拆分的最大实例数量等于预留的大小减一。例如,如果预留总容量为 5 个实例,则最多可以将 4 个实例拆分为一个新的预留。

  • 未来日期的容量预留 – 在承诺期内,您不能拆分未来日期的容量预留的容量。

  • 资源组:如果现有容量预留属于资源组,则新容量预留不会自动添加到该资源组。如有必要,可以在创建新容量预留后将其添加到资源组。

  • 共享:如果现有容量预留与消费者账户共享,则新容量预留不会自动与消费者账户共享。如有必要,您可以在创建新容量预留后将其共享。

  • 集群置放群组:如果现有容量预留是集群置放群组的一部分,则新容量预留将在同一个集群置放群组中创建。

注意

不支持从容量块中拆分容量。

使用标签控制拆分容量预留的访问权限

您可以使用标签来控制对 Amazon EC2 资源的访问,包括从现有容量预留中拆分容量以创建新容量预留。有关更多信息,请参阅《IAM 用户指南》中的使用标签控制对 Amazon 资源的访问

要使用标签控制拆分容量预留的访问权限,请确保在策略语句中同时指定资源和请求标签,因为 IAM 策略是根据源容量预留和新创建的容量预留进行评估的。以下示例策略包括带有源容量预留标签 Owner=ExampleDepartment1ec2:ResourceTag 条件键和带有新创建容量预留标签 stack=production 的条件键 ec2:RequestTag

{ "Statement": [ { "Sid": "AllowSourceCapacityReservation", "Effect": "Allow", "Action": "ec2:CreateCapacityReservationBySplitting", "Resource": "arn:aws:ec2:region:account:capacity-reservation/cr-1234567890abcdef0", "Condition": { "StringEquals": { "ec2:ResourceTag/Owner": "ExampleDepartment1" } } }, { "Sid": "AllowNewlyCreatedCapacityReservation", "Effect": "Allow", "Action": ["ec2:CreateCapacityReservationBySplitting", "ec2:CreateTags"], "Resource": "arn:aws:ec2:region:account:capacity-reservation/*", "Condition": { "StringEquals": { "ec2:RequestTag/stack": "production" } } } ] }

使用 Amazon EC2 控制台或 Amazon CLI 拆分容量

要从现有容量预留中拆分容量并创建新的容量预留,您可以使用 Amazon EC2 控制台或 Amazon CLI。

Console
使用控制台拆分容量
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在左侧导航窗格中,选择容量预留

  3. 选择具有可拆分容量的按需容量预留 ID。

  4. 操作管理容量下,选择拆分

  5. 拆分容量预留页面的要拆分的数量下,使用滑块或键入要从当前预留中拆分的实例数量。

  6. (可选)为新容量预留添加标签。

  7. 查看摘要,准备就绪后,选择拆分

Amazon CLI
使用 Amazon CLI 拆分容量

使用 create-capacity-reservation-by-splitting 命令。以下示例通过从 ID 为 cr-1234567890abcdef0 的容量预留中拆分 10 个实例来创建新容量预留。

aws ec2 create-capacity-reservation-by-splitting \ --source-capacity-reservation-id cr-1234567890abcdef0 \ --instance-count 10