如何使用 Auto Scaling 按需动态增加和减少实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用 Auto Scaling 按需动态增加和减少实例相关的知识,希望对你有一定的参考价值。

一、背景需求

当您不知道自己该选择何种类型的 EC2 实例的时候,也不清楚业务什么时候高峰,那我们使用 Auto Scaling 可以非常便捷的解决我们的问题,他根据我们设定的负载压力,自动进行扩展和缩容,以实现最小费用的情况下保证业务的正常运行。

二、配置步骤

2.1、创建 AMI

首先把我们正在运行的 EC2 的主机做一个镜像,内部服务设置为自启动,以保证扩容的时候所有服务可用。

技术图片

2.2、创建负载均衡目标组

Auto Scaling 配合 ELB 来使用,动态把负载分发到后端机器,我们需要一个目标组来存储我们的 Auto Scaling 集群机器。

技术图片

2.3、创建 Classic Load Balancer

技术图片

技术图片

2.4、创建启动配置

为了实例可以稳定启动,可以选择按需实例,或者高于市场价的 Spot 实例,尽量高多一些,保证成功率。

技术图片

技术图片

2.5、创建 Auto Scaling 组

技术图片

技术图片

技术图片

我这里因为选择了竞价实例,好几次都启动失败,所以我换了一个按需实例的启动配置。

2.6、测试

我们登陆到组中第一台机器,使用下面的命令对 CPU 进行增压,查看超过阈值之后是否会自动启动新的实例。

for i in `seq 1 $(cat /proc/cpuinfo |grep "processor" |wc -l)`; do dd if=/dev/zero of=/dev/null; done &

以上是关于如何使用 Auto Scaling 按需动态增加和减少实例的主要内容,如果未能解决你的问题,请参考以下文章

AWS EC2 Auto Scaling 同步如何自动工作?

Amazon EC2 Auto Scaling 如何工作?

Auto Scaling Group 和 EFS 上具有动态标签的模块

Elastic Beanstalk 环境的 Auto Scaling 组

Auto Scaling 弹性伸缩(运维释放人力)

弹性伸缩Auto Scaling