nginx
[root@server1 httpd]# cd ..
[root@server1 salt]# mkdir nginx
[root@server1 salt]# cd nginx/
[root@server1 nginx]# mkdir files
[root@server1 nginx]# cd files/
[root@server1 files]# ls #将nginx包传到/srv/salt/nginx/files下
nginx-1.14.0.tar.gz
在开启一个minion,按照server2主机配置
编译nginx的脚本
[root@server1 files]# cd ..
[root@server1 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_ssl_module --with-http_stub_status_module --with-threads --with-file-aio &> /dev/null && make &> /dev/null && make install &> /dev/null
- creates: /usr/local/nginx
[root@server1 nginx]# salt server3 state.sls nginx.install
【server3】查看进程,nginx是否有进程
开启nginx服务脚本
第一种:
[root@server1 nginx]# vim service.sls
include:
- nginx.install
nginx-server:
cmd.run:
- name: /usr/local/nginx/sbin/nginx
[root@server1 nginx]# salt server3 state.sls nginx.service
【server3】查看开启结果
[root@server3 nginx-1.14.0]# ps ax
第二种:
【server3】
[root@server3 ~]# cd /usr/local/nginx/
[root@server3 nginx]# cd logs/
[root@server3 logs]# ls
access.log error.log nginx.pid
[root@server3 logs]# cd ..
[root@server3 nginx]# cd conf/
[root@server3 conf]# scp nginx.conf server1:/srv/salt/nginx/files
[root@server3 conf]# /usr/local/nginx/sbin/nginx -s stop #将nginx关闭
[root@server1 nginx]# cd files
[root@server1 files]# pwd
/srv/salt/nginx/files
[root@server1 files]# ls
nginx(nginx的脚本) nginx-1.14.0.tar.gz nginx.conf
[root@server1 files]# cd ..
[root@server1 nginx]# vim files/nginx.conf
3 worker_processes 2; #将工作进程添加至2个
[root@server1 nginx]# vim service.sls
include:
- nginx.install
/usr/local/nginx/conf/nginx.conf:
file.managed:
- source: salt://nginx/files/nginx.conf
nginx-server:
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
[root@server1 nginx]# salt server3 state.sls nginx.service
【server3】查看进程
[root@server3 conf]# ps ax
[root@server1 nginx]# vim files/nginx.conf
2 user nginx nginx;
3 worker_processes 2;
[root@server1 nginx]# cd ..
[root@server1 salt]# mkdir users
[root@server1 salt]# cd users/
[root@server1 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
[root@server1 users]# cd ..
[root@server1 salt]# cd nginx/
[root@server1 nginx]# vim service.sls
include:
- users.nginx
- nginx.install
/usr/local/nginx/conf/nginx.conf:
file.managed:
- source: salt://nginx/files/nginx.conf
nginx-server:
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
[root@server1 nginx]# salt server3 state.sls nginx.service
【server3】查看建立的用户是否存在
[root@server1 nginx]# cd ..
[root@server1 salt]# mkdir pkgs
[root@server1 salt]# cd pkgs/
[root@server1 pkgs]# vim make.sls
make-gcc:
pkg.installed:
- pkgs:
- pcre-devel
- openssl-devel
- gcc
[root@server1 pkgs]# cd ..
[root@server1 salt]# cd nginx/
[root@server1 nginx]# vim install.sls
include:
- pkgs.make
nginx-install:
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_ssl_module --with-http_stub_status_module --with-threads --with-file-aio &> /dev/null && make &> /dev/null && make install &> /dev/null
- creates: /usr/local/nginx
[root@server1 nginx]# salt server3 state.sls nginx.service