zoukankan      html  css  js  c++  java
  • ansible批量部署Nginx

    一、目录环境

    [root@wd-code deploy_nginx]# tree
    .
    ├── hosts
    ├── roles
    │   ├── common
    │   │   └── tasks
    │   │       └── main.yml
    │   └── nginx
    │       ├── files
    │       │   └── nginx-1.14.0.tar.gz
    │       ├── tasks
    │       │   └── main.yml
    │       ├── templates
    │       └── vars
    │           └── main.yml
    └── site.yml
    
    8 directories, 6 files

    二、common目录为公共目录

    main.yml文件

    ---
    - name: Install deps
      yum: name={{ item }} state=present
      #become: true
      #become_user: root
      #become_method: su
      with_items:
        - gcc
        - make
        - zlib-devel
        - openssl-devel
        - pcre-devel
        - pcre
        - zlib
        - openssl

    三、nginx目录下

    tasks目录下main.yml文件

    ---
    - name: Copy Nginx
      copy: src=nginx-1.14.0.tar.gz dest=/tmp
    
    - name: tar nginx
      unarchive:
        src: /tmp/nginx-1.14.0.tar.gz
        dest: "{{ install_bashdir }}"
        copy: no
    
    - name: Install Nginx
      shell: "cd {{ install_bashdir }}/nginx-1.14.0 && ./configure --prefix={{ install_bashdir }}/nginx --user={{ nginx_user }} --group={{ nginx_group }} --with-http_stub_status_module --with-http_ssl_module && make && make install"
    
    - name: chown work Permission
      file: dest={{ install_bashdir }}/nginx owner={{ nginx_user }} group={{ nginx_user }} recurse=yes
    - name: remove nginx package
      file: dest={{ install_bashdir }}/nginx-1.14.0 state=absent
    #- name: start nginx
    #  shell: cd "{{ install_bashdir }}" && nginx/sbin/nginx 

    四、vars变量目录

    main.yml文件

    install_bashdir: /home/work
    nginx_user: root 
    nginx_group: root

    五、入口文件site.yml

    site.yml

    ---
    - hosts: nginx
      gather_facts: no
      remote_user: root 
      
      roles:
        - role: common
        - role: nginx
  • 相关阅读:
    【转】jenkins更新主题
    【原】jenkins常用的plugin
    作业:简单的主机批量管理工具
    信号量, 事件,队列
    paramiko模块介绍
    多线程介绍
    作业:开发支持多用户在线FTP程序
    判断操作系统的三种方法
    socketserver
    新博客地址
  • 原文地址:https://www.cnblogs.com/zhangzihong/p/10470302.html
Copyright © 2011-2022 走看看