前言
简单演示热部署和日志切割。
正文
什么是热部署了,我们前文也说过了一个编译后的Nginx 二进制。
热部署就是无需停止现有的Nginx,替换正在运行的Nginx。
步骤:
这里出现了另外一个master。
3.发送WINCH信号给旧的master进程,让旧的master进程优雅的退出
kill -WINCH cat /opt/Nginx/logs/Nginx.pid.oldbin
退出woker。
4.此时如果觉得Nginx服务一切正常,就可以干掉旧的master主进程了
kill -9 cat /opt/Nginx/logs/Nginx.pid.oldbin
退出master
- 如果替换有问题呢?那么怎么办?
Nginx 回滚:
cp Nginx.old Nginx
打开旧的worker进程号:
kill -HUP 4810
``
其中 pid 是进程标识。如果想要更改配置而不需停止并重新启动服务,请使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。
关闭新的worker:
kill -WINCH 16940
下面介绍一下Nginx 的日志切割。
LOGS_PATH = /usr/local/optnresty/Nginx/logs/histoty
CUR_LOGS_PATH = /usr/local/openresty/Nginx/logs
YESTEDAY = $(date -d "yesterday" +%Y-%m-%d)
mv ${CUR_LOGS_PATH }/xxx_access.log ${LOGS_PATH }/xxx_access_${YESTEDAY}.log
mv ${CUR_LOGS_PATH }/xxx_error.log ${LOGS_PATH }/xxx_error_${YESTEDAY}.log
kill -USR1 $(cat /usr/local/openresty/Nginx/logs/Nginx.pid)
这样就可以了,其实后面那个就是Nginx -s reopen,从新打开日志。
然后把这个cron 定时任务,比如每天0:00,这样就可以了。
### 结
下一节静态服务和反向代理。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。