zoukankan      html  css  js  c++  java
  • ansible+playbook 搭建lnmp环境

    用三台机器 做ansible+playbook 搭建lnmp环境 

    IP分配 

    ansible 主机192.168.202.132

    lnmp第一台主机 192.168.202.131

    lnmp第一台主机 192.168.202.133

    1.1 ansible主机安装ansible

    [root@localhost ~]# yum -y install ansible
    已加载插件:fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirror.jdcloud.com
     * extras: mirror.bit.edu.cn 

    1.2 ansible主机生成密钥设置免密码登录

    [root@localhost ~]# ssh -keygen
    Bad escape character 'ygen'.
    [root@localhost ~]# ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_r
    Created directory '/root/.ssh'.
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in /root/.ssh/id_
    Your public key has been saved in /root/.ssh/id_rsa.
    The key fingerprint is:
    SHA256:snafmBirD5A4bkRNfs/yraWQ7BqJf4SKpLd0UO5yZyA rhost
    The key's randomart image is:
    +---[RSA 2048]----+
    |   .             |
    |  +              |
    | . o..           |
    |.. +. o          |
    |o.E +..oS        |
    |oo.*oo+o.        |
    |+++o*+*..o       |
    |+oo+o*.=++ .     |
    | ..++++oo o      |
    +----[SHA256]-----+
    [root@localhost ~]# ssh-copy-id root@192.168.202.131
    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be i "/root/.ssh/id_rsa.pub"
    The authenticity of host '192.168.202.131 (192.168.2can't be established.
    ECDSA key fingerprint is SHA256:+YOuMKydPwvlPwXHq3Cgj6X6jdlupF1W3A.
    ECDSA key fingerprint is MD5:33:f9:54:0f:ce:1e:53:96:96:29:e3:04:7c.
    Are you sure you want to continue connecting (yes/no
    /usr/bin/ssh-copy-id: INFO: attempting to log in wit key(s), to filter out any that are already installe
    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be in- if you are prompted now it is to install the new k
    root@192.168.202.131's password: 
    
    Number of key(s) added: 1
    
    Now try logging into the machine, with:   "ssh 'root202.131'"
    and check to make sure that only the key(s) you wantdded.
    [root@localhost ~]# ssh-copy-id root@192.168.202.133
    

      

    1.3 ansible主机配置

    [root@localhost ~]# vim /etc/ansible/hosts 
    
    [lnmp]
    192.168.202.131
    192.168.202.133
    

     如图:

     1.4 编写ansible的playbook  

    ---
            - hosts: lnmp
              tasks:
                    - name: "安装需要的环境"
                      yum: name=gcc,gcc-c++,make,php,php-gd,php-mysql,php-fpm,pcre-devel,zlib-devel,mariadb,mariadb-server state=latest
                    - name: "导入nginx包"
                      unarchive: src=nginx-1.16.1.tar.gz dest=/root
                    - name: "编译安装"
                      shell: cd /root/nginx-1.16.1 && ./configure && make && make install
                    - name: "分发配置文件"
                      copy: src=nginx.conf dest=/usr/local/nginx/conf/nginx.conf
                    - name: "分发主界面"
                      copy: src=info.php dest=/var/www/html/info.php
                    - name: 启动nginx
                      shell: /usr/local/nginx/sbin/nginx
                    - name: "启动mysql"
                      shell: systemctl restart mariadb
                    - name: "启动php-fpm"
                      shell: systemctl restart php-fpm
                    - name : "关闭防火墙"
                      shell: systemctl stop firewalld
                    - name: "关闭selinux"
                      shell: setenforce 0
    ~                                      

    1.4.2 更改nginx的配置文件

    1.4.3 分发一个php的测试界面

    1.4.4 执行ansible-playbook

     

    1.4.5 展示效果看看lnmp是否搭建成功

  • 相关阅读:
    关于发布版本号管理
    WWF
    C#编码规范和命名规则
    使用正则表达式更改编译版本号
    .net2005登录控件
    读取web.config自定义配置节
    在SQL SERVER 2005 中使用XML
    CVSNT用户权限配置
    共享鼠标
    《Ajax基础教程》
  • 原文地址:https://www.cnblogs.com/gaiting/p/12075043.html
Copyright © 2011-2022 走看看