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

发布时间:2020-06-23 16:24:55 作者:wzlinux
来源:网络 阅读:1622

一、背景需求

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

二、配置步骤

2.1、创建 AMI

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

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

2.2、创建负载均衡目标组

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

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

2.3、创建 Classic Load Balancer

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

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

2.4、创建启动配置

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

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

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

2.5、创建 Auto Scaling 组

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

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

如何使用 AWS 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 &

可以看到,CPU 的负载已经上去了:

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

我们查看一下事件,发现启动了一台新的实例:

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

然后我们停掉压力测试,再等待一会查看:

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

至此我们已经做完这次测试。

趣味玩法

我们可以安装 web 服务,让 ELB 负载到新实例,并给每个实例配置专属的内容,我们选定实例的元数据,在启动时候的时候,我们可以填写下面的启动参数:

#!/bin/bash
yum install nginx -y
systemctl start nginx
curl http://169.254.169.254/latest/meta-data/public-ipv4 > /var/www/html/index.html

http://169.254.169.254/latest/meta-data/ 是实例的元数据信息接口。
http://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-instance-metadata.html

欢迎大家扫码关注,获取更多信息

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

推荐阅读:
  1. AWS CloudWatch Agent 的配置和使用
  2. 使用 Rancher 管理 AWS EKS 集群

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

auto scaling

上一篇:python合并两列字符串的方法

下一篇:关于使用ossim

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》