最近研究了 ansible ,打算更进一步来自动化配置服务器。
比如我写一个配置 servers.yml :
groups:
all:
production:
- "db"
- "app"
servers:
- name: db
provider: digitalocean
image: 'ubuntu-16-04-x64'
size: '512mb'
region: 'sgp1'
admin: deployer
- name: app
provider: digitalocean
image: 'ubuntu-16-04-x64'
size: '512mb'
region: 'sgp1'
admin: deployer
同时还有 config.yml 里面有 digitalocean 的 token 。
之后就可以执行命令: update-server server.yml -c config.yml -o server-generated.yml update-server 可以重复执行,已经创建的服务器就会跳过
会连上 digitalocean ,创建 server ,生成 server-generated.yml ,里面会有新服务器的 IP
然后创建 ansible 的服务器列表 create-ansible config server.yml server-generated.yml -o inv.ini
然后写各个 server 的 playbook 。
这样的好处就是针对服务器的变更都是通过配置文件来修改,跟踪架构的变化, 同时看配置文件就知道多服务器系统怎么搭的了。
请问现在有没有类似的工具?谢谢~