amazon-web-services - 如何在 ansible 和已经存在的 ec2 中使用自动缩放

标签 amazon-web-services amazon-ec2 ansible autoscaling

我有亚马逊 ec2 实例,我用 Ansible 配置它并且工作正常。

现在我想把它作为自动缩放组的一部分,以便我可以随意缩放它们。

但我的问题是我没有任何设置实例的启动配置。我用 Ansible 做所有事情。

如何配置自动缩放,在创建新实例后由 ansible 配置。

最佳答案

根据我的经验,您可以在这里采取两种方法。

从已由 ansible 完全配置的实例创建 AMI。然后在您的启动配置中使用此 AMI。

另一种选择是使用库存 AMI,并对自动缩放组使用 cloud-init 启动的每个新主机进行 ansible 配置。

在我看来,与第一种方法相比,第二种方法在很多方面都缺乏。当 ansible 每次都需要运行时,扩展可能需要更长的时间。您还冒着在配置过程中出现问题的风险,阻止实例加入组,从而导致进一步的延迟。您还冒着实例之间存在偏差的风险(取决于您正在执行的操作以及 Autoscaling 事件之间是否有任何外部变化)。

如果您决定为您的 ASG 创建一个完全预置的 AMI,您可以从您已经创建的实例手动执行此操作。但是,如果您希望定期重建镜像,您可能需要查看 packer 之类的工具。帮助您以自动方式创建图像。

关于amazon-web-services - 如何在 ansible 和已经存在的 ec2 中使用自动缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37912764/

相关文章:

amazon-web-services - 使用 AWS Config 一致性包有什么优势?

amazon-web-services - AWS ECS Fargate 自动缩放 - 它如何缩小选择要终止的任务?

amazon-web-services - 我的 ENI 是如何创建的?

amazon-web-services - 如果使用 “no-reboot”选项,则Amazon EC2镜像创建会中断docker文件夹

ansible - 如果不手动加载,Ansible不会选择group_vars

passwords - 允许用户在使用 Ansible 创建帐户后设置密码

json - 使用 Ansible amazon.aws.aws_secret 仅从 SecretString 中提取 secret 值

node.js - 使用 ClaudiaJS 和 AWS Lambda 发送 POST HTTP

php - 映射 CIFS 共享上的 chown 不起作用

python - 如何在 ansible.cfg 文件中添加多个库路径