slatstack自动化源码安装nginx

实验环境:

两台主机
master: 172.25.11.9 (server9 rhel6.5)
minion: 172.25.11.8 (server8 rhel6.5)
安装软件及yum环境安装和下面实验相同
soltstack自动部署apache

master完成自动部署:

nginx自动安装
vim install.sls
nginx-install:
  pkg.installed:
    - pkgs:
      - pcre-devel
      - openssl-devel
      - gcc

  file.managed:
    - name: /mnt/nginx-1.14.0.tar.gz
    - source: salt://nginx/files/nginx-1.14.0.tar.gz

  cmd.run:
    - name: cd /mnt && tar zxf nginx-1.14.0.tar.gz && cd nginx-1.14.0 && sed -i.bak 's/#define NGINX_VER          "nginx\/" NGINX_VERSION/#define NGINX_VER          "nginx"/g' src/core/nginx.h && sed -i.bak 's/CFLAGS="$CFLAGS -g"/# CFLAGS="$CFLAGS -g"/g' auto/cc/gcc && ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-threads --with-file-aio --with-http_ssl_module &> /dev/null && make &> /dev/null && make install &> /dev/null
    - creates: /usr/local/nginx
salt server8 state.sls nginx.install

安装成功
这里写图片描述

nginx安装启动

vim service.sls
include:
  - nginx.install

/usr/local/nginx/conf/nginx.conf:
  file.managed:
    - source: salt://nginx/files/nginx.conf

nginx-service:
  file.managed:
    - name: /etc/init.d/nginx
    - source: salt://nginx/files/nginx
    - mode: 755    # 添加权限
  service.running:
    - name: nginx
    - reload: True
    - watch:
      - file: /usr/local/nginx/conf/nginx.conf
salt server8 state.sls nginx.service

这里写图片描述
这里写图片描述
在minion端查看进程nginx已经启动
这里写图片描述

nginx用户的建立

mkdir users
vim nginx.sls
nginx-group:
  group.present:
    - name: nginx
    - gid: 800

nginx-user:
  user.present:
    - name: nginx
    - uid: 800
    - gid: 800
    - shell: /sbin/nologin
    - createhome: False
    - home: /usr/local/nginx
salt server8 state.sls users.nginx

这里写图片描述
这里写图片描述

mkdir pkgs
vim make.sls
make-gcc:
  pkg.installed:
    - pkgs:
      - pcre-devel
      - openssl-devel
      - gcc

将install.sls中的依赖性安装部分用

include:
  - pkgs.make

替换,实现自动化部署

猜你喜欢

转载自blog.csdn.net/qq_38622229/article/details/81776702