搭建参考:ansible批量运维管理-CSDN博客
定义ansible主机清单
- [root@ansible-server ~]# vim /etc/hosts
- 192.168.200.129 host01
- 192.168.200.130 host02
- [root@ansible-server ~]# vim /etc/ansible/hosts
- [webserver]
- host01
- host02
在ansible端编写index.html,index.php⽂件,及lamp.yml配置⽂件
- [root@ansible-server ~]# mkdir playbooklamp
- [root@ansible-server ~]# cd playbooklamp/
- [root@ansible-server playbooklamp]# vim index.html
- [root@ansible-server playbooklamp]# cat index.html
- <html>
- <head>
- <title> 这个一个测试页面</title>
- <meta charset="utf-8">
- <head>
- <body>
- 这是一个ansible测试页面!!!
- </body>
- </html>
- [root@ansible-server playbooklamp]# vim index.php
- [root@ansible-server playbooklamp]# cat index.php
- <?php
- phpinfo();
- ?>
- [root@ansible-server playbooklamp]# vim lamp.yml
- [root@ansible-server playbooklamp]# cat lamp.yml
- - hosts: 'webserver'
- tasks:
-
- - name: "安装lamp需要的软件包"
- yum:
- name: "{{item}}"
- state: installed
- with_items:
- - apr
- - apr-util
- - httpd
- - httpd-devel
- - mariadb
- - mariadb-server
- - php
- - php-mysqlnd
- - php-fpm
- - name: "传输index.html文件"
- copy:
- src: ./index.html
- dest: /var/www/html/index.html
- owner: root
- group: root
- mode: 0644
- - name: "传送index.php文件"
- copy:
- src: ./index.php
- dest: /var/www/html/index.php
- owner: root
- group: root
- mode: 0644
- - name: "重启httpd"
- service:
- name: httpd
- state: restarted
- - name: "重启mariadb"
- service:
- name: mariadb
- state: restarted
- - name: "重启php-fpm"
- service:
- name: php-fpm
- state: restarted
- - name: "关闭防火墙和selinux"
- block:
- - shell: systemctl stop firewalld
- ignore_errors: yes
- - name: "关闭Selinux"
- shell: setenforce 0
- ignore_errors: yes
- [root@ansible-server playbooklamp]# ansible-playbook lamp.yml --syntax-check
-
- playbook: lamp.yml
- [root@ansible-server playbooklamp]#
运行剧本
- [root@ansible-server playbooklamp]# ansible-playbook lamp.yml
-
- PLAY [webserver] **************************************************************************************
-
- TASK [Gathering Facts] ********************************************************************************
- ok: [host02]
- ok: [host01]
-
- TASK [安装lamp需要的软件包] ***************************************************************************
- ok: [host01] => (item=apr)
- ok: [host02] => (item=apr)
- ok: [host01] => (item=apr-util)
- ok: [host02] => (item=apr-util)
- ok: [host01] => (item=httpd)
- ok: [host02] => (item=httpd)
- ok: [host01] => (item=httpd-devel)
- ok: [host02] => (item=httpd-devel)
- ok: [host01] => (item=mariadb)
- ok: [host02] => (item=mariadb)
- ok: [host01] => (item=mariadb-server)
- ok: [host02] => (item=mariadb-server)
- ok: [host01] => (item=php)
- ok: [host02] => (item=php)
- changed: [host01] => (item=php-mysqlnd)
- changed: [host02] => (item=php-mysqlnd)
- ok: [host01] => (item=php-fpm)
- ok: [host02] => (item=php-fpm)
-
- TASK [传输index.html文件] *****************************************************************************
- changed: [host01]
- changed: [host02]
-
- TASK [传送index.php文件] ******************************************************************************
- changed: [host02]
- changed: [host01]
-
- TASK [重启httpd] **************************************************************************************
- changed: [host02]
- changed: [host01]
-
- TASK [重启mariadb] ************************************************************************************
- changed: [host02]
- changed: [host01]
-
- TASK [重启php-fpm] ************************************************************************************
- changed: [host01]
- changed: [host02]
-
- TASK [shell] ******************************************************************************************
- changed: [host01]
- changed: [host02]
-
- TASK [关闭Selinux] ************************************************************************************
- changed: [host01]
- changed: [host02]
-
- PLAY RECAP ********************************************************************************************
- host01 : ok=9 changed=8 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
- host02 : ok=9 changed=8 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
-
- [root@ansible-server playbooklamp]#
浏览器访问测试



