跳转至

17. nginx热部署

1. nginx热部署步骤

# 源码包安装nginx,假设当前是tengine-1.23.2
1. 检查当前nginx的版本
nginx -v
ps -ef|grep nginx   #检查进程号

2. 检查当前nginx的编译参数
nginx -V

3. 备份当前的nginx命令
mv nginx nginx232

4. 下载安装新版本
wget https://tengine.taobao.org/download/tengine-2.2.0.tar.gz
tar -zxvf tengine-2.2.0.tar.gz
# 新版本安装到相同目录
cd tengine-2.2.0 & ./configure --prefix=/opt/tngx232 .... # 根据第2步得到的参数来安装!
make & make install

5. 发送USR2信号给旧的master process,作用是使旧版本停止接收用户请求,切换为新版本,会生成一个nginx.pid.oldbin文件
kill -USR2 `cat /opt/tngx232/logs/nginx.pid`

6. 检查当前nginx的信息
ps -ef|grep nginx
ls /opt/tngx232/logs/nginx.pid*

7. 发送WINCH信号给旧的master进程,让其进程退出
kill -WINCH `cat /opt/tngx232/logs/nginx.pid.oldbin`

8. 检查一切正常,则kill掉旧的nginx进程
ps -ef|grep nginx
kill -9 旧版本nginx进程号

最后更新: 2022-02-20 13:32:53