使用SaltStack源码安装nginx
- 步骤一:安装原来安装nginx的流程,先安装相关的依赖性软件,解压压缩包
cd /srv/salt
mkdir nginx
cd nginx
vim init.sls
install-nginx:
pkg.installed:
- pkgs:
- gcc
- make
- pcre-devel
- openssl-devel
archive.extracted:
- name: /mnt
- source: salt://nginx/nginx-1.16.1.tar.gz
salt server3 state.sls nginx
- 步骤二:进行编译和安装,并开启服务
salt server3 state.sls nginx
vim nginx.service
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
salt server3 state.sls nginx
salt server3 state.sls nginx
这里需要注意一点,就是我们每次使用salt命令时,它是按照sls中编辑的的模块顺序进行一步一步的执行的,但是我们一般部署一个服务的顺序应该是:安装软件,修改主配置文件,然后再开启服务,但是我们的sls文件好像顺序不对,我们先开启的服务,然后才修改的主配置文件,但是我们发现在service.running模块下多了一个require,这是依赖性,就是要开启或者重新加载服务时,需要先加载主配置文件,然后才能够记性running或者reload
测试:在浏览器中输入server3的IP地址