amazon-ec2 - EC2 Auto Scaling 如何防止在开销之前启动新的?
问题描述
我有一个现有的 EC2 实例正在运行(比如原始实例)。
然后我创建了一个自动扩展组并配置了它的启动设置,如下所示:
min:1, max:3, desired:1
(自动扩展组基于从原始实例复制的 AMI)
只要我刚刚创建了 Auto Scaling 组,就会同时启动一个新实例。
但我现有的实例目前处于空闲状态,没有任何开销问题,因此无需在 Auto Scaling 组内启动新实例。
我目前尝试将希望设置为 0,然后启动的那个被终止并让我原来的存在一个运行。
那么,min:1,desired:0,是防止在开销之前启动新的正确方法吗?
或者有什么建议吗?
顺便说一句,我现在没有任何开销过程,所以我很难确认情况。
解决方案
我认为最好的办法是将您的原始实例手动注册到自动缩放组。
这将用数字简化事情(你可以说 min:1, max:3, desired:1 并且原来的已经算作 1 所以你会得到你期望的结果)并且也会更容易控制目标组和将流量从 ELB 正确路由到所有实例
要将实例附加到现有 Auto Scaling 组:
- 在https://console.aws.amazon.com/ec2/打开 Amazon EC2 控制台
- 在导航窗格中,选择实例。
- 选择实例。
- 选择操作、实例设置、附加到 Auto Scaling 组。
- 在附加到 Auto Scaling 组页面上,选择现有 Auto Scaling 组,选择实例,然后选择附加。
如果您希望原始实例始终处于活动状态 - 不要在缩减时终止 - 您可以为正在运行或停止的实例启用终止保护
- 选择实例,然后选择操作、实例设置、更改终止保护
- 选择是,启用。
推荐阅读
- c++ - 如何让我的程序在 C++ 中接受来自用户的不同输入?
- firebase - 在快照的数据上调用了 getter 'length'
- android - .append 在 kotlin 中显示预期结果
- c# - Naudio Read 在读取 mp4 时会引发 InvalidCast 异常,但并非总是如此。为什么?
- python - 为什么当我尝试使用 python 计算数组中的数字数量时,其中一个数组会出现错误检查
- web-scraping - Puppeteer QuerySelector - TypeError:无法读取 null 的属性“textContent”
- python - 我不知道为什么我的网络抓取代码不起作用
- php - 单击添加更多字段按钮后动态显示字段
- javascript - 使用 react 和 react-firebase-hooks 时的无限循环
- php - 发送 POST 请求以获取数据时 PHP cURL 不起作用