这周在工做中须要去修改 nginx 的配置,发现了同事在使用 ansible 管理者系统几乎全部的配置,从数据库的安装、nginx 的安装及配置。因而这周研究起了 ansible 的基础用法。回过头再去看他的工程,终于能看明白了,嘿嘿html
前面已经总结了三篇文章了,本章作个总结:linux
资料就列这么多了,其实,过犹不及,基本找一个看着舒服的教程看完,经常使用的命令就能看懂了。nginx
写出好的 ansible-playbook 仍是要多阅读优秀的 playbook,这里先列出几个可供学习的示例资源:git
. ├── LICENSE.md ├── README.md ├── group_vars │ └── all ├── hosts ├── images │ ├── check.png │ ├── nosql_primer.png │ ├── replica_set.png │ ├── scale.png │ ├── sharding.png │ └── site.png ├── playbooks │ └── testsharding.yml ├── roles │ ├── common │ │ ├── files │ │ │ ├── 10gen.repo.j2 │ │ │ ├── RPM-GPG-KEY-EPEL-6 │ │ │ └── epel.repo.j2 │ │ ├── handlers │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ └── templates │ │ ├── hosts.j2 │ │ └── iptables.j2 │ ├── mongoc │ │ ├── files │ │ │ └── secret │ │ ├── tasks │ │ │ └── main.yml │ │ └── templates │ │ ├── adduser.j2 │ │ ├── mongoc.conf.j2 │ │ └── mongoc.j2 │ ├── mongod │ │ ├── files │ │ │ └── secret │ │ ├── tasks │ │ │ ├── main.yml │ │ │ └── shards.yml │ │ └── templates │ │ ├── mongod.conf.j2 │ │ ├── mongod.j2 │ │ ├── repset_init.j2 │ │ └── shard_init.j2 │ └── mongos │ ├── files │ │ └── secret │ ├── tasks │ │ └── main.yml │ └── templates │ ├── enablesharding.j2 │ ├── mongos.conf.j2 │ ├── mongos.j2 │ └── testsharding.j2 ├── site.yml └── tree.txt 21 directories, 38 files
site.yml
文件的内容以下:github
--- # This Playbook would deploy the whole mongodb cluster with replication and sharding. - hosts: all roles: - role: common - hosts: mongo_servers roles: - role: mongod - hosts: mongoc_servers roles: - role: mongoc - hosts: mongos_servers roles: - role: mongos - hosts: mongo_servers tasks: - include: roles/mongod/tasks/shards.yml