本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用创建和管理温池的示例 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-stateStopped
--instance-reuse-policy '{"ReuseOnScaleIn": true}'
示例 5:指定暖池中的最小实例数
以下put-warm-pool示例创建了一个至少维护 4 个实例的温池,因此至少有 4 个实例可用于处理流量高峰。
aws autoscaling put-warm-pool --auto-scaling-group-name
my-asg
/ --pool-stateStopped
--min-size4
示例 6:单独定义暖池的最大容量
一般来说,您了解需要将最大容量设置为超过所需容量多少。通常无需定义额外的最大容量,因为 Amazon EC2 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-stateStopped
--max-group-prepared-capacity900
要在暖池中保留最少数量的实例,请使用命令包含 --min-size
选项,如下所示。
aws autoscaling put-warm-pool --auto-scaling-group-name
my-asg
/ --pool-stateStopped
--max-group-prepared-capacity900
--min-size25
示例 7:定义绝对暖池大小
如果您为 --max-group-prepared-capacity
和 --min-size
选项设置了相同的值,则暖池将具有绝对大小。以下put-warm-pool示例创建了一个保持 10 个实例的恒定温池大小的温池。
aws autoscaling put-warm-pool --auto-scaling-group-name
my-asg
/ --pool-stateStopped
--min-size10
--max-group-prepared-capacity10
示例 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