利用ansible批量安装lamp

个人比较喜欢在eclipse上写代码
代码发布流程未1. eclipse—>gitee. 2. ansible—>gitee. 3.ansible—>mysite服务器组
利用ansible批量安装LAMP
1.定义需要安装的目标主机
编辑/etc/ansible/hosts
添加
[mysite]
192.168.252.10
192.168.252.11
192.168.252.12
在这里插入图片描述
2.创建eclipse项目,根据ansible roles目录要求创建好对应的目录及文件

在这里插入图片描述
3.编辑对于的yml
playbook配置
创建一个lamp.yml的playbook
内容:

  • hosts: mysite
    remote_user: root
    roles:
    • httpd
    • mysql
    • php
      http服务安装及配置

files:下面创建httpd.conf 以及phpinfo.php文件
httpd.conf文件根据模板只更改了用户位www

   工作目录还是默认的/var/www/html  。phpinfo.php文件就将拷贝到该目录以便验证php

handlers目录 创建main.yml 内容为:

  • name: restart apache
    service: name=httpd state=restarted
    当httpd.conf文件变更时重启httpd服务

tasks目录创建main.yml 内容为:

  • name: HTTPD安装
    yum: name={{item}} state=latest
    with_items:

    • httpd
    • httpd-devel
  • name: 创建用户
    user: name={{user}} state=present

  • name: HTTPD服务管理
    service: name=httpd enabled=yes state=started

  • name: HTTPD配置文件变更
    copy: src=/soft/test/Ansible_LAMP/httpd/files/httpd.conf dest=/etc/httpd/conf
    notify:

    • restart apache
  • name: PHPINFO
    copy: src=/soft/test/Ansible_LAMP/httpd/files/phpinfo.php dest=/var/www/html

vars目录创建main.yml 内容为:
user: www
mysql服务的安装及配置
tasks目录创建main.yml 内容为:

  • name: Mysql安装
    yum: name={{item}} state=latest
    with_items:

    • mariadb
    • mariadb-server
    • mariadb-libs
    • mariadb-devel
  • name: Mysql用户创建
    user: name={{user}} state=present

  • name: Mysql服务管理
    service: name=mariadb enabled=yes state=started

  • name: mysql执行权限更改
    file: path=’/usr/lib/mysql’ owner={{user}} group={{user}} recurse=yes

vars目录创建main.yml 内容为:
user: mysql
php服务的安装及配置
tasks目录创建main.yml内容为:

  • name: PHP安装
    yum: name={{item}} state=latest
    with_items:
    • php
    • php-mysqlnd
    • php-gd
    • php-ldap
    • php-odbc
    • php-pear
    • php-xml
    • php-xmlrpc
    • php-mbstring
    • php-snmp
    • php-soap
    • curl
    • curl-devel
    • php-bcmath
    • php-fpm
      没有说明内容的main.yml文件 根据ansible roles的要求 在对应的目录下创建了main.yml的空文件。
      4.上传到gitee
      上传配置这里不介绍,可以百度

      5.ansible管理机下载代码
      git clone https://gitee.com/abel127/Ansible_lamp.git
      后续更新
      git pull https://gitee.com/abel127/Ansible_lamp.git
      在这里插入图片描述
      将代码下载到了管理机上
      6.测试
      ansible-playbook -C lamp.yml
      没有问题。 我已经安装过了所以都是绿色,如果是没有安装的都是黄色就OK
      在这里插入图片描述
      执行ansible-playbook lamp.yml安装
      7.访问服务器
      三台服务器都可以正常访问服务
      记得关闭下防火墙和iptables
      ansible mysite -a “iptables -F”
      ansible mysite -a “systemctl stop firewalld”
      在这里插入图片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章