Amazon Elastic Compute Cloud
Windows 实例用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

修改预留实例

当计算需求改变时,可以修改标准或可转换预留实例并继续利用账单优势。您可以修改Reserved Instance的可用区、范围、网络平台或实例大小 (在相同的实例类型中)。要修改Reserved Instance,需要指定要修改的预留实例并指定一个或多个目标配置。

注意

您还可以将可转换预留实例与具有不同配置的其他可转换预留实例 (包括实例系列) 进行交换。有关更多信息,请参阅 交换可转换预留实例

可以修改全部或部分预留实例。可以将原始预留实例分为两个或更多新的预留实例。例如,如果您在 us-east-1a 中有 10 个实例的预留,并决定将其中 5 个实例移至 us-east-1b,则修改请求会生成两个新的预留实例 - 一个用于 us-east-1a 中的 5 个实例,另一个用于 us-east-1b 中的 5 个实例。

还可以将两个或更多预留实例合并 成单个Reserved Instance。例如,如果有四个预留实例均为 t2.small,则可以将其合并以创建单个 t2.large Reserved Instance。有关更多信息,请参阅 修改预留的实例大小

修改之后,预留实例的定价权益仅适用于与新参数匹配的实例。例如,如果您更改预留的可用区,则容量预留和定价优势自动应用到在新可用区中使用的实例。除非您的账户有其他适用的预留,否则将按照按需费率收费对不再符合新参数的实例收费。

如果您的修改请求成功:

  • 修改的预留会立即生效,并且定价优惠将于进行修改请求时这一小时的开始应用于新实例。例如,如果您在晚上 9:15 成功修改了预留,则定价优惠将在晚上 9:00 转移到新实例。(您可以使用 DescribeReservedInstances API 操作或 describe-reserved-instances 命令 (AWS CLI) 获取所修改的预留实例的 effective date。)

  • 原始预留将停用。其结束日期是新预留的开始日期,而新预留的结束日期与原始Reserved Instance的结束日期相同。如果您修改一个剩余期限为 16 个月的三年期预留,则修改后得到的预留是为期 16 个月的预留,其结束日期与原始预留相同。

  • 已修改的预留将列出 0 美元固定价格,而不是原始预留的固定价格。

注意

已修改的预留实例的固定价格不影响您的账户的折扣定价套餐计算,后者基于原始预留的固定价格。

如果修改请求失败,预留实例会保持其原始配置,并立即对其他修改请求可用。

修改不会产生任何费用,因此您不会收到任何新账单或发票。

您可以根据自己的需要随时修改预留,但是不能在提交之后更改或取消挂起的修改请求。修改成功完成后,如果需要,您可以提交另一个修改请求,以回滚您所做的任何更改。

修改的要求和限制

Reserved Instance并非所有属性都可以修改,并且有一些限制。

可修改的属性 支持的平台 限制

在相同区域内更改可用区

Linux 和 Windows

-

范围从可用区更改到区域以及反之

Linux 和 Windows

如果您将预留的范围从可用区更改为区域,则会失去预留容量优势。

如果您将范围从区域更改为可用区,则会失去可用区灵活性和实例大小灵活性 (如果适用)。有关更多信息,请参阅 如何应用预留实例

在 EC2-VPC 和 EC2-Classic 之间更改网络平台

Linux 和 Windows

仅在账户支持 EC2-Classic 时适用。

在同一实例类型内更改实例的大小

仅限 Linux

不支持一些实例类型,因为没有其他大小可用。有关更多信息,请参阅 修改预留的实例大小

Amazon EC2 处理您的修改请求的前提是,对于您的目标配置 (如果适用),有足够的容量,同时满足以下条件。

要修改的预留实例必须:

  • 处于活动状态

  • 没有其他等待处理的修改请求

  • 在预留实例市场中未列示

    注意

    要修改预留实例市场中列出的预留实例,请取消列表,请求修改预留实例,然后再次列出这些实例。

  • 在同一小时 (不是分钟或秒) 内终止

  • 您已购买的预留实例 (您无法在购买前或购买时修改产品)

您的修改请求必须符合以下条件:

  • 有效预留的实例大小占用空间必须与目标配置匹配。有关更多信息,请参阅 修改预留的实例大小

  • 输入预留实例必须是标准预留实例或可转换预留实例,但不能是两者的组合。

修改预留的实例大小

如果某个实例类型的 Amazon Linux 预留有多个大小,则可以修改预留实例的实例大小。

注意

实例按照系列 (依据存储或 CPU 容量)、类型 (为特定的使用案例而设计) 和大小分组。例如,c4 实例类型属于计算优化型的实例系列,并且有多个大小可用。当 c3 实例属于同一系列时,您无法将 c4 实例修改进入 c3 实例,因为它们的硬件规格不同。有关更多信息,请参阅 Amazon EC2 实例类型

对于以下实例类型,无法修改预留实例的实例大小,因为这些实例类型只有一种大小。

  • cc2.8xlarge

  • cr1.8xlarge

  • hs1.8xlarge

  • i3.metal

  • t1.micro

每个Reserved Instance都有实例大小占用空间,占用空间由预留中实例类型的标准化因子和实例数量决定。修改Reserved Instance时,目标配置的占用空间必须与原始配置相匹配,否则不会处理修改请求。

标准化因子是基于实例类型中的实例大小确定的 (例如,在 m1 实例类型中的 m1.xlarge 实例)。只有在同一实例类型中才有意义。不能从一个实例类型修改为另一个实例类型。在 Amazon EC2 控制台中,这是按单位计量的。下表说明在实例类型中应用的标准化因子。

实例大小 标准化因子

nano

0.25

微型

0.5

small

1

medium

2

large

4

xlarge

8

2xlarge

16

4xlarge

32

8xlarge

64

9xlarge

72

10xlarge

80

12xlarge

96

16xlarge

128

18xlarge

144

24xlarge

192

32xlarge

256

要计算Reserved Instance的实例占用空间大小,请将实例数量乘以标准化因子。例如,t2.medium 的标准化因子为 2,因此四个 t2.medium 实例的预留相当于 8 个单位的占用空间。

只要预留的实例大小占用空间保持不变,您就可以将预留分配给相同实例类型中的不同实例大小。例如,您可以将一个 t2.large (1 x 4) 实例的预留划分为四个 t2.small (4 x 1) 实例,也可以将四个 t2.small 实例的预留合并为一个 t2.large 实例。但是您不能将两个 t2.small (2 x 1) 实例的预留更改为一个 t2.large (1 x 4) 实例。因为当前预留的现有实例大小占用空间小于计划的预保留空白间。

在以下示例中,您的预留有两个 t2.micro 实例 (为您带来了占用空间 1) 以及带有一个 t2.small 实例的预留 (为您带来了占用空间 1)。您可以将两个预留合并为带有单个 t2.medium 实例的单个预留,两个原始预留的组合实例大小占用空间等于修改后预留的占用空间。

 修改预留实例

您还可以修改预留以将其拆分为多个预留。在以下示例中,您有一个具有 t2.medium 实例的预留。您可以将预留拆分为具有两个 t2.nano 实例的预留,以及具有三个 t2.micro 实例的预留。

 修改预留实例

提交修改请求

可以使用 Amazon EC2 控制台、Amazon EC2 API 或命令行工具来修改预留实例。

Amazon EC2 控制台

在修改预留实例之前,请确保已阅读适用的限制。如果您修改实例大小,请确保已计算了所要修改的总实例大小占用空间,并确保该值与目标配置的总实例大小占用空间相匹配。

使用 AWS 管理控制台修改预留实例

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 预留实例页面上,选择一个或多个要修改的预留实例,然后选择修改预留实例

    注意

    如果预留实例不处于活动状态或无法修改,则修改预留实例处于禁用状态。

  3. 修改表中的第一个条目显示选定预留实例的属性,下方至少有一个目标配置。Units 列显示总实例大小占用空间。单击各个新配置的 Add 以添加。根据需要修改各配置的属性,然后在完成后选择 Continue

    • Network:选择Reserved Instance是应用于 EC2-Classic 还是 EC2-VPC。该选项仅在您的账户支持 EC2-Classic 时可用。

    • Scope:选择Reserved Instance是应用于可用区还是整个区域。

    • Availability Zone:选择所需的可用区。不适用于区域性预留实例。

    • Instance Type:选择所需的实例类型。仅适用于支持的平台。有关更多信息,请参阅 修改的要求和限制

    • Count:指定预留所涵盖的实例数。

    注意

    如果组合目标配置大于或小于原始预留实例的实例大小占用空间,则单位列中分配的总额显示为红色。

  4. 指定好目标配置之后,若要确认您的修改选择,请选择 Submit Modifications。如果您在任何时候改变了主意,请选择 Cancel 退出向导。

您可以在预留实例屏幕中通过查看状态列来确定修改请求的状态。下表说明了可能的 State 值。

状态 描述

活动(等待修改)

原始预留实例的转换状态。

retired (pending modification)

创建新预留实例时原始预留实例的转换状态。

停用

已成功修改和替换预留实例。

活动

从成功的修改请求创建的新预留实例。

-或者-

修改请求失败后的原始预留实例。

Amazon EC2 API 或命令行工具

要修改预留实例,可以使用以下方法之一:

要获取修改的状态,请使用以下命令之一:

返回的状态将请求显示为 processingfulfilledfailed

修改请求故障排除

如果您请求的目标配置设置是唯一的,则您会收到正在处理该请求的消息。此时,Amazon EC2 仅确定了修改请求的参数有效。在处理过程中,您的修改请求仍然可能因无可用容量而失败。

在某些情况下,您可能会收到一个指示修改请求未完成或失败的消息而不是确认。使用此类消息中的信息作为重新提交另一个更改请求的起点。提交请求前,请确保您已阅读适用的限制

并非所有选择的预留实例都可以进行修改处理

Amazon EC2 会确定并列出无法修改的预留实例。如果收到此类消息,请转到 Amazon EC2 控制台中的预留实例页面,查看预留实例的信息。

处理修改请求时出错

您提交了一个或多个预留实例进行修改,但无法处理您的任何请求。根据您修改的预留数量,您可以获取不同版本的消息。

Amazon EC2 会显示无法处理请求的原因。举例来说,您可能已经为想要修改的预留实例的一个或更多子集指定了相同的目标配置 - 可用区和平台的组合。尝试重新提交修改请求,但确保预留的实例详细信息是匹配的,并确保修改的所有子集的目标配置是唯一的。