

# Amazon EC2 容量预留的概念
<a name="cr-concepts"></a>

以下关键概念适用于容量预留。

**Topics**
+ [开始日期和时间](#cr-start-date)
+ [结束日期和时间](#cr-end-date)
+ [承诺期限](#cr-commitment-duration)
+ [未来日期的容量预留评估](#cr-future-dated-assessment)
+ [容量预留属性](#cr-attributes)
+ [实例匹配条件](#cr-instance-eligibility)

## 开始日期和时间
<a name="cr-start-date"></a>

开始日期和时间定义了容量预留何时可供使用。容量预留可以**立即**启动，也可以在**未来的某个日期**启动。
+ 如果选择立即启动容量预留，则预留容量会在您创建后立即可用，并且在容量预留进入活动状态后立即开始计费。您无需作出任何期限承诺。您可以根据需要随时修改容量预留来满足自己的需求，并且可以随时取消容量预留来释放容量并停止产生费用。
+ 如果您选择在未来的某个日期启动容量预留，请指定*将来需要预留容量的日期和时间*以及*承诺时长*，即在预置请求的容量预留后您承诺在您的账户中保留请求的容量预留的最短期限。在指定的未来日期，一旦容量预留进入活动状态，容量预留将可供使用，并且计费也将从那时开始。一旦您的账户中预置了容量预留，承诺持续时间就会开始。在此期间，您不能将实例计数减少到承诺的实例计数以下、选择早于承诺期限的结束日期，也不能取消容量预留。但是，承诺期限过后，您可以随意以任何方式修改容量预留，也可以取消它以释放预留容量并停止产生费用。

## 结束日期和时间
<a name="cr-end-date"></a>

结束日期和时间定义容量预留的结束时间以及从您的账户释放预留容量的时间。您可以将容量预留配置为在特定日期和时间**自动结束**，也可以将其配置为无限期地保持活动状态，直到**手动取消它**。

如果将容量预留配置为自动结束，则容量预留将在指定时间后一小时内过期。例如，如果指定 `5/31/2019, 13:30:55`，则容量预留保证在 `5/31/2019` 的 `13:30:55` 到 `14:30:55` 之间到期。

预留结束之后，将从您的账户释放预留容量，并且您无法再将实例定位到容量预留。在预留容量中运行的实例继续运行，不会中断。如果定位到容量预留的实例已停止，则在您删除其容量预留定位首选项或者将其配置为定位到其他容量预留之前，无法重启这些实例。有关更多信息，请参阅 [修改您的实例的容量预留设置](capacity-reservations-modify-instance.md)。

## 承诺期限
<a name="cr-commitment-duration"></a>

承诺期限仅适用于未来日期的容量预留。

承诺期限是您承诺未来日期的容量预留预置后在您的账户中处于活动状态的最短期限。您可以将未来日期的容量预留保留比承诺期限更长的时间，但不能更短。在承诺期限内，以下事项适用：
+ 在承诺期限内不能取消容量预留。
+ 不能将实例计数减少到承诺的实例计数以下，但可以将其增加。
+ 不能将容量预留配置为在承诺期限内的某个日期或时间自动结束。可以在承诺期内延长结束日期和时间。

Amazon EC2 使用您指定的承诺期限来评测是否可以支持该请求。最低承诺期限为 14 天。在评估请求时，Amazon EC2 可能会确定它是否可以支持较短的承诺期限。在这种情况下，Amazon EC2 将安排具有较短承诺期限的未来日期的容量预留。这意味着您承诺在您的账户中保留容量预留的时间比您最初请求的期限要短。

## 未来日期的容量预留评估
<a name="cr-future-dated-assessment"></a>

当您请求未来日期的容量预留时，Amazon EC2 会根据容量可用性和您指定的承诺期限评估该请求，以确定是否可以支持它。评估通常会在 5 天内完成。Amazon EC2 在评估请求时会考虑多种因素，包括：
+ 预测的容量供应
+ 承诺期限
+ 相对于开始日期，您提前多久请求容量预留
+ 您的请求的大小

您可以提前 5 至 120 天请求未来日期的容量预留。但我们建议您至少提前 56 天（8 周）提出请求，以提高我们为您的请求提供支持的能力。最低承诺期限为 14 天，最小实例数为 32 个 vCPU。

在评估请求时，容量预留保持为 `assessing` 状态。

如果可以支持该请求，则容量预留将进入 `scheduled` 状态，并安排在请求的日期和时间进行传送。在容量预留处于 `scheduled` 状态期间，实例总数保持为 0。计划的容量预留将在请求的日期变为 `active` 状态并可供使用。

如果无法支持该请求，则容量预留将进入 `unsupported` 状态。不传送不支持的容量预留。

当未来日期的容量预留处于 `assessing` 状态时，您可以取消它。

有关更多信息，请参阅 [创建未来日期的容量预留](capacity-reservations-create.md#create-future-cr)。

## 容量预留属性
<a name="cr-attributes"></a>

创建容量预留时，必须指定下列属性：
+ 可用区
+ 实例类型
+ 平台（操作系统类型）
+ 租赁（`default` 或 `dedicated`）

只有匹配这些属性的实例才能在容量预留中启动或运行。

## 实例匹配条件
<a name="cr-instance-eligibility"></a>

实例匹配条件或实例资格决定了哪些实例可以在容量预留中启动和运行。容量预留可以具有以下匹配条件之一：
+ **开放**：容量预留自动匹配所有具有匹配属性（实例类型、平台和可用区）的实例。具有匹配属性的新实例和现有实例会自动在容量预留中运行，无需任何额外配置。
+ **针对性**：容量预留仅接受具有匹配属性（实例类型、平台和可用区）并明确定位到容量预留的实例。实例必须专门定位到容量预留，才能在其预留容量中启动或运行。这让您能够明确控制允许哪些实例在预留容量中运行，并帮助您避免无意中使用预留容量。

当您请求未来日期的容量预留时，只能指定有针对性的匹配条件。这可确保容量预留交付的容量是增量的，或者是您在交付时拥有的任何正在运行的实例或预留容量的额外容量。当容量预留在您的账户中变为活动状态后，您可以根据需要将实例匹配条件更改为开放。然而，请记住，任何匹配的实例都将自动在容量预留中运行，这可能会导致无意中使用容量，并让您无法为完整的请求实例计数启动新实例。