在 AWS 中自动化自动缩放

Posted

技术标签:

【中文标题】在 AWS 中自动化自动缩放【英文标题】:automate Autoscaling in AWS 【发布时间】:2020-11-04 02:33:38 【问题描述】:

我正在尝试自动化 AWS 中的自动缩放系统。 对我们来说,正常的部署只是将代码检入 Gitlab 并创建一个新的 Tag,然后 Gitlab CI\CD 自动运行并将代码推送到工件。我们有 3 个实例。我们 autosclaue 到 6,然后将其减少到 3。但是我们只需要在 AWS 中扩展我们的 Auto Scaling 组,它会构建 3 台新服务器来拉下新代码,然后将 ASG 缩回,杀死3台旧服务器。我想自动化这个过程。如果我们能够在部署后实现这一目标,谁能帮助我

【问题讨论】:

这不是在您更新启动配置文件时自动发生的吗? 如果你想做一个真正的蓝绿部署,你需要两个 ASG 感谢您的及时回复。如果发生任何诸如 cpu 等问题,我们已经制定了扩展和缩减实例的策略。我想在部署期间自动化该过程以在实例上发布最新版本。我们目前有 3 个实例,我们将其自动缩放到 6,然后减少到 3。有没有办法可以实现这一目标?谢谢 【参考方案1】:

有一个名为“实例刷新”的新功能可能会满足您的需求。您只需要调用 StartInstanceRefresh API 并给出 MinHealthy%(决定批次大小)和预热时间(决定批次之间的时间)。

如果将在大约同一时间终止并批量启动实例,因此除非您可以接受一点停机时间,否则可能会将 MinHealthy% 保留为默认值 90%,以便每次只执行 1 个实例批处理

https://docs.aws.amazon.com/cli/latest/reference/autoscaling/start-instance-refresh.html

【讨论】:

以上是关于在 AWS 中自动化自动缩放的主要内容,如果未能解决你的问题,请参考以下文章

aws 中的 rabbitmq 自动缩放集群:管理缩放事件

在 aws 中管理或管理自动缩放实例的有效方法

使用 AWS 自动缩放自动启动 java 服务器程序

如何在自动缩放组中添加 aws new elb

有啥方法可以编辑用于 AWS 中自动缩放的 AMI?

AWS - 如何使用 CDK/CloudFormation 将服务链接角色传递给自动缩放组?