天天看点

ansible自己总结(playbook)

大体逻辑

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

<code>#这个是你选择的主机</code>

<code>- hosts: webservers</code>

<code>#这个是变量</code>

<code>  </code><code>vars:</code>

<code>    </code><code>http_port: 80</code>

<code>    </code><code>max_clients: 200</code>

<code>#远端的执行权限</code>

<code>  </code><code>remote_user: root</code>

<code>  </code><code>tasks:</code>

<code>#利用yum模块来操作</code>

<code>  </code><code>- name: ensure apache is at the latest</code>

<code>version</code>

<code>    </code><code>yum: pkg=httpd state=latest</code>

<code>  </code><code>- name: write the apache config </code><code>file</code>

<code>    </code><code>template: src=</code><code>/srv/httpd</code><code>.j2</code>

<code>dest=</code><code>/etc/httpd</code><code>.conf</code>

<code>#触发重启服务器</code>

<code>    </code><code>notify:</code>

<code>    </code><code>- restart apache</code>

<code>  </code><code>- name: ensure apache is running</code>

<code>    </code><code>service: name=httpd state=started</code>

<code>#这里的restart</code>

<code>apache 和上面的触发是配对的。这就是handlers的作用。相当于tag</code>

<code>  </code><code>handlers:</code>

<code>    </code><code>- name: restart apache</code>

<code>      </code><code>service: name=httpd state=restarted</code>

<code>#playbook.yml</code>

<code>---  </code><code>#顶行写</code>

<code>- hosts: webservers   </code><code>#顶行写</code>

<code>  </code><code>remote_user: root  </code><code>#两个空格 </code>

<code>  </code><code>tasks:             </code><code>#两个空格 </code>

<code>    </code><code>- name: </code><code>whoami</code>    <code>#四个空格</code>

<code>      </code><code>copy: src=~</code><code>/hosts</code> <code>dest=~</code><code>/hosts</code><code>.dest  </code><code>#六个空格   </code>

<code>      </code><code>notify:     </code>

<code>          </code><code>- </code><code>clear</code> <code>copy </code><code>#10个空格</code>

<code>  </code><code>handlers:            </code><code>#两个空格</code>

<code>    </code><code>- name: </code><code>clear</code> <code>copy  </code><code>#四个空格</code>

<code>      </code><code>shell: </code><code>'mv ~/hosts.dest hosts.del'</code>  <code>#六个空格</code>

<code>主机: - hosts</code>

<code>用户  remote_user</code>

<code>变量  vars:</code>

<code>任务   tasks:</code>

<code>任务完成所需要做的东西:handlers</code>

远程主机安装httpd并启动

<code>---</code>

<code>    </code><code>- name: ensure apache is latest</code>

<code>      </code><code>yum: pkg=httpd state=latest</code>

<code>    </code><code>- name: runing</code>

<code>      </code><code>service: name=httpd state=started</code>

<code></code>

本文转自 小小三郎1 51CTO博客,原文链接:http://blog.51cto.com/wsxxsl/1837820,如需转载请自行联系原作者