热升级:
在不停止服务的情况下,对Nginx版本进行更新
热升级流程:
1.将旧Nginx文件换成新Nginx文件(注意备份)
ps -ef|grep nginx
cp nginx nginx.old
2.向master进程发送USR2信号
kill -USR2 13195
3.master进程修改pid文件名,加后缀.oldbin
4.master进程用新Nginx配置文件启动master进程
ps -ef | grep nginx 此时新老master进程同时运行,老master不在再监听端口,新的连接进入新的master进程
nginx -WINCH 13195 老的worker进程全部优雅退出
(老的master不会退出,此时允许做版本回退)
5.向老master进程发送QUIT信号,关闭老master进程
6.回滚:向老master发送HUP,向新master发送QUIT
Question1:为什么要回滚?
Answer:(1)老的worker进程一直退不掉
(2)新的worker进程升级以后出现了问题
(3)预期的功能
(4)子项的配置文件出现了错误。