无缝不中断服务平滑升级Nginx
2017-08-27 12:23:42 来源:我爱运维网 评论:0 点击:
Nginx保持着一个较快速的更新,5年前是0.7.54,当前稳定版已是1.12.1。之前一直使用0.7.54的稳定版,但现在网站都是要支持HTTPS,所以要升级支持SSL,而且苹果应用指定要支持TLS v1.2,无奈Nginx 1.0.12版本以上才支持TLSv1.2。
0.7.54版本均不支持TLS v1.1与TLS v1.2
# ../sbin/nginx -t [warn]: invalid value "TLSv1.1" in /usr/local/webserver/nginx/conf/vhost_5iops_exam.conf:18 configuration file /usr/local/webserver/nginx/conf/nginx.conf test failed
# ../sbin/nginx -t [warn]: invalid value "TLSv1.2" in /usr/local/webserver/nginx/conf/vhost_5iops_exam.conf:19 configuration file /usr/local/webserver/nginx/conf/nginx.conf test failed
这就使得需要将原来的nginx-0.7.54无缝且不中断服务、平滑地升级至nginx-1.12.1稳定版。
最终证明,可以按照下面这几个步骤顺利完成无缝不中断服务平滑升级Nginx高版本。
1. 开始之前先查看一下当前使用的版本。
# ../sbin/nginx -V nginx version: nginx/0.7.54 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) configure arguments: --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module ※ 注意configure arguments的值,这是以前编译的参数。我们接下来编译新版本要用到。
2.下载新版本:http://nginx.org/en/download.html
然后:解压 > 便以前的准备 > 编译
# tar zxvf nginx-1.21.1.tar.gz
# cd nginx-1.21.1
# ./configure
--user=www
--group=www
--prefix=/usr/local/webserver/nginx
--with-http_stub_status_module
--with-http_ssl_module
# make
3. 执行完后,这里不用在 make install 了,接下来重名/sbin/nginx为nginx.old
# mv /usr/local/webserver/nginx/sbin/nginx /usr/local/webserver/nginx/sbin/nginx.old
4. 复制编译后objs目录下的nginx文件到nginx的安装目录sbin/下
# cp objs/nginx /usr/local/webserver/nginx/sbin/
5. 测试一下新复制过来文件生效情况:
# /usr/local/webserver/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/webserver/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/webserver/nginx/conf/nginx.conf test is successful
可以看到新版本Nginx 1.21.1已成功支持TLS v1.1 TLS v1.2的配置。
6. 让nginx把nginx.pid文件修改成nginx.pid.oldbin,随即启动nginx,实现不间断
# kill -USR2 `cat /usr/local/webserver/nginx/nginx.pid` 更新配置文件
# kill -QUIT `cat /usr/local/webserver/nginx/nginx.pid.oldbin` 优雅的关闭
7. 升级完成了,最后在看一下升级后的版本
# /usr/local/webserver/nginx/sbin/nginx -v nginx: nginx version: nginx/1.21.1
上一篇:Nginx + Tomcat + HTTPS 配置并不需要在Tomcat 上启用SSL 支持
下一篇:配置免费HTTPS服务
评论排行
- ·Windows(Win7)下用Xming...(92)
- ·使用jmx client监控activemq(20)
- ·Hive查询OOM分析(14)
- ·复杂网络架构导致的诡异...(8)
- ·使用 OpenStack 实现云...(7)
- ·影响Java EE性能的十大问题(6)
- ·云计算平台管理的三大利...(6)
- ·Mysql数据库复制延时分析(5)
- ·OpenStack Nova开发与测...(4)
- ·LTPP一键安装包1.2 发布(4)
- ·Linux下系统或服务排障的...(4)
- ·PHP发布5.4.4 和 5.3.1...(4)
- ·RSYSLOG搭建集中日志管理服务(4)
- ·转换程序源码的编码格式[...(3)
- ·Linux 的木马程式 Wirenet 出现(3)
- ·Nginx 发布1.2.1稳定版...(3)
- ·zend framework文件读取漏洞分析(3)
- ·Percona Playback 0.3 development release(3)
- ·运维业务与CMDB集成关系一例(3)
- ·应该知道的Linux技巧(3)