

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

# 使用创建和管理温池的示例 AWS CLI
<a name="examples-warm-pools-aws-cli"></a>

您可以使用 AWS 管理控制台、 AWS Command Line Interface (AWS CLI) 或创建和管理温池 SDKs。

以下示例向您演示如何使用 AWS CLI创建和管理暖池。

**Topics**
+ [示例 1：将实例保持在 `Stopped` 状态](#warm-pool-configuration-ex1)
+ [示例 2：将实例保持在 `Running` 状态](#warm-pool-configuration-ex2)
+ [示例 3：将实例保持在 `Hibernated` 状态](#warm-pool-configuration-ex3)
+ [示例 4：在横向缩减时将实例返回到暖池](#warm-pool-configuration-ex4)
+ [示例 5：指定暖池中的最小实例数](#warm-pool-configuration-ex5)
+ [示例 6：使用自定义规格定义暖池大小](#warm-pool-configuration-ex6)
+ [示例 7：定义绝对暖池大小](#warm-pool-configuration-ex7)
+ [示例 8：删除暖池](#delete-warm-pool-cli)

## 示例 1：将实例保持在 `Stopped` 状态
<a name="warm-pool-configuration-ex1"></a>

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个使实例保持`Stopped`状态的温池。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state Stopped
```

## 示例 2：将实例保持在 `Running` 状态
<a name="warm-pool-configuration-ex2"></a>

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个使实例保持`Running`状态而不是`Stopped`状态的温池。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state Running
```

## 示例 3：将实例保持在 `Hibernated` 状态
<a name="warm-pool-configuration-ex3"></a>

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个使实例保持`Hibernated`状态而不是`Stopped`状态的温池。这使您可以停止实例，而无需删除其内存内容 (RAM)。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state Hibernated
```

## 示例 4：在横向缩减时将实例返回到暖池
<a name="warm-pool-configuration-ex4"></a>

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个使实例保持`Stopped`状态的温池，并包含`--instance-reuse-policy`选项。实例再使用策略值 `'{"ReuseOnScaleIn": true}'` 将在 Auto Scaling 组横向缩减时，通知 Amazon EC2 Auto Scaling 将实例返回到暖池。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state {{Stopped}} --instance-reuse-policy '{"ReuseOnScaleIn": true}'
```

## 示例 5：指定暖池中的最小实例数
<a name="warm-pool-configuration-ex5"></a>

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个至少维护 4 个实例的温池，因此至少有 4 个实例可用于处理流量高峰。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state {{Stopped}} --min-size {{4}}
```

## 示例 6：使用自定义规格定义暖池大小
<a name="warm-pool-configuration-ex6"></a>

默认情况下，Amazon EC2 Auto Scaling 将暖池大小管理为自动扩缩组的最大容量与所需容量之差。但是，您可以使用 `--max-group-prepared-capacity` 选项管理暖池的大小，使其独立于组的最大容量。

以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个温池，并设置了在温池和 Auto Scaling 组中可以同时存在的最大实例数。如果组的所需容量为 800，则运行此命令后初始化时，暖池的初始大小为 100。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state {{Stopped}} --max-group-prepared-capacity {{900}}
```

要在暖池中保留最少数量的实例，请使用命令包含 `--min-size` 选项，如下所示。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state {{Stopped}} --max-group-prepared-capacity {{900}} --min-size {{25}}
```

## 示例 7：定义绝对暖池大小
<a name="warm-pool-configuration-ex7"></a>

如果您为 `--max-group-prepared-capacity` 和 `--min-size` 选项设置了相同的值，则暖池将具有绝对大小。以下[put-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-warm-pool.html)示例创建了一个保持 10 个实例的恒定温池大小的温池。

```
aws autoscaling put-warm-pool --auto-scaling-group-name {{my-asg}} /
  --pool-state {{Stopped}} --min-size {{10}} --max-group-prepared-capacity {{10}}
```

## 示例 8：删除暖池
<a name="delete-warm-pool-cli"></a>

使用以下[delete-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/delete-warm-pool.html)命令删除温池。

```
aws autoscaling delete-warm-pool --auto-scaling-group-name {{my-asg}}
```

如果温池中有实例，或者扩展活动正在进行中，请使用带`--force-delete`选项的[delete-warm-pool](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/delete-warm-pool.html)命令。此选项还将终止 Amazon EC2 实例和任何未完成的生命周期操作。

```
aws autoscaling delete-warm-pool --auto-scaling-group-name {{my-asg}} --force-delete
```