ansible利用playbook 部署lamp架构

搭建参考: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]# 

浏览器访问测试

相关推荐
MMME~6 小时前
Ansible Playbook高效自动化实战指南
网络·自动化·ansible
信创天地11 天前
自动化运维利器赋能信创:Ansible与SaltStack在国产系统的部署与批量管理实战
运维·自动化·ansible
tritone11 天前
使用阿贝云免费云服务器学习Ansible的实践与感受
服务器·学习·ansible
~黄夫人~14 天前
Ansible自动化运维:快速入门,从 “批量化执行” 开始
运维·自动化·ansible
~黄夫人~14 天前
Ansible 自动化运维:从 “手动输密码” 到 “一键免密管理”
linux·运维·自动化·ansible
王九思14 天前
Ansible 自动化运维介绍
运维·自动化·ansible
shawnyz15 天前
RHCSE--ansible1-入门和模块
linux·运维·ansible
AOwhisky15 天前
Ansible管理变量和事实(管理变量部分) & 部署文件到受管主机
前端·chrome·ansible
shawnyz15 天前
RHCSE--ansible2--剧本
linux·运维·服务器·ansible
何以不说话17 天前
记录一下学习日常⑨(ansible、Open-V、zabbix)
学习·ansible·zabbix