Ansible核心功能点就在于playbook,Ansible主要的工作都是在与配置管理,它在实际的工作中会大量编写和使用剧本。
【Ansible剧本】
ansible软件的playbook编写需要遵循YAML语法。
playbook安装nginx
【1.批量卸载所有的nginx】
[root@m01 ~]# ansible chaoge -m yum -a "name=nginx state=absent" [root@m01 ~]# ansible chaoge -m shell -a "rpm -qa nginx warn=false" 192.168.178.110 | CHANGED | rc=0 >> 192.168.178.111 | CHANGED | rc=0 >>
【2.查看一个YAML文件】
[root@m01 scripts]# cat nginx.yaml -n 1 # install nginx yaml ,by chaoge 2 - hosts: all 3 tasks: 4 - name: Install nginx Package 5 yum: name=nginx state=present 6 - name: Copy Nginx.conf 7 copy: src=./nginx.conf dest=/etc/nginx/nginx.conf mode=0644
【3.解释如上的playbook代码】
1.表示注释信息,可以用#,也可以用 --- 三个短横线 2.定义playbook管理的目标主机,all表示所有的主机,也可以写 主机组名 3.定义playbok所有的任务集合信息,比如该文件,定义了2个任务 ,安装nginx,拷贝nginx配置文件 4.定义了任务的名词,自定义的帮助信息 5.定义任务的具体操作,比如这里用yum模块实现nginx的安装 6. 7.第六、第七两行作用是使用copy模块,把本地当前的nginx.conf配置文件,分发给其他所有客户端机器,且授权
Playbook内容组成规范