【发布时间】:2019-05-19 18:18:06
【问题描述】:
我需要根据要求安装和配置所有新系统,从 aws 中的自动缩放开始,例如,如果它是一个应用服务器安装 nodejs,并使用相应的 git 代码与 Ansible 一起部署。
Ansible 如何识别一个新系统并需要进行所有配置。
【问题讨论】:
标签: amazon-ec2 ansible autoscaling
我需要根据要求安装和配置所有新系统,从 aws 中的自动缩放开始,例如,如果它是一个应用服务器安装 nodejs,并使用相应的 git 代码与 Ansible 一起部署。
Ansible 如何识别一个新系统并需要进行所有配置。
【问题讨论】:
标签: amazon-ec2 ansible autoscaling
这里是 ansible 文档中关于如何使用 Ansible 处理自动缩放的指南:https://docs.ansible.com/ansible/latest/scenario_guides/guide_aws.html#autoscaling-with-ansible-pull
这个方法的问题是,您需要在启动时提供整个配置过程。这需要很长时间并且容易出错。
一种常见的解决方案是使用您的服务所需的所有基础架构构建一个自定义 AMI,并且仅将您当前的代码部署到此机器上。
构建自定义 AMI 的好工具是 Packer。 AWS 指南可在此处获得。 https://www.packer.io/docs/builders/amazon.html
【讨论】:
2019-02-27 06:07:29,130 - __init__.py[WARNING]: Unhandled non-multipart (text/x-not-multipart) userdata: 'b'sudo sh /home/ubuntu/sta'...'
#!/bin/bash ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/' > ip.txt a=cat ip.txt` && sed -i "2 i\\$a" inventory.cfg scp -C -i ~/.ssh/id_rsa.pem 库存。 cfg ubuntu@172.31.31.215:/etc/ansible/inventory/ ##将库存文件复制到ansible ssh -i ~/.ssh/id_rsa.pem ubuntu@172.31.31.215 'ansible-playbook -i /etc/ansible/inventory/库存.cfg /etc/ansible/air-hub.yml -b' `