使用创建和管理温池的示例 Amazon CLI - Amazon EC2 Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用创建和管理温池的示例 Amazon CLI

您可以使用 Amazon Web Services Management Console、 Amazon Command Line Interface (Amazon CLI) 或软件开发工具包创建和管理温池。

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

示例 1:将实例保持在 Stopped 状态

以下put-warm-pool示例创建了一个使实例保持Stopped状态的温池。

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

示例 2:将实例保持在 Running 状态

以下put-warm-pool示例创建了一个使实例保持Running状态而不是Stopped状态的温池。

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

示例 3:将实例保持在 Hibernated 状态

以下put-warm-pool示例创建了一个使实例保持Hibernated状态而不是Stopped状态的温池。这使您可以停止实例,而无需删除其内存内容 (RAM)。

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

示例 4:在横向缩减时将实例返回到暖池

以下put-warm-pool示例创建了一个使实例保持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:指定暖池中的最小实例数

以下put-warm-pool示例创建了一个至少维护 4 个实例的温池,因此至少有 4 个实例可用于处理流量高峰。

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

示例 6:使用自定义规范定义温池大小

默认情况下,Amazon EC2 Auto Scaling 按照 Auto Scaling 组的最大容量和所需容量之差来管理您的温池的大小。但是,您可以使用--max-group-prepared-capacity选项独立于组的最大容量来管理温池的大小。

以下put-warm-pool示例创建了一个温池,并设置了在温池和 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:定义绝对暖池大小

如果您为 --max-group-prepared-capacity--min-size 选项设置了相同的值,则暖池将具有绝对大小。以下put-warm-pool示例创建了一个保持 10 个实例的恒定温池大小的温池。

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

示例 8:删除暖池

使用以下delete-warm-pool命令删除温池。

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

如果温池中有实例,或者扩展活动正在进行中,请使用带--force-delete选项的delete-warm-pool命令。此选项还将终止 Amazon EC2 实例和任何未完成的生命周期操作。

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