写在前面
这篇文章仅仅只有熟悉nginx的意义,原因在于随着现在企业业务上云以后,k8s是应用的主流。类如web服务多用k8s的pod启动,以nginx为例子。k8s可以做到滚动更新与回滚,副本控制,水平扩展,资源限制等操作。优点简直不要太多。当然这里还是以虚拟机为平台操作手工升级,有熟悉nginx的作用。
nginx官网地址:nginx news
下面是具体的操作步骤(当然测试使用的软件包需要提前准备)。
第一步:查看当前的nginx版本 (因为我之前源码安装nginx默认放在/usr/local/,如果是自定义安装目录的需要更改)
[root@h9 ~]# /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.15.8
第二步:将1.15.8版本的sbin目录下的nginx进行备份
[root@h9 ~]# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginxold
第三步:准备要升级的nginx软件包,进入其目录下,配置并编译
[root@h9 nginx-1.17.6]# ./configure
[root@h9 nginx-1.17.6]# make
第四步:将Nginx1.17.6安装目录编译后的objs目录下的nginx文件,拷贝到原来/usr/local/nginx/sbin目录下
[root@h9 ~]# cp /root/nginx-1.17.6/objs/nginx /usr/local/nginx/sbin/
第五步:进入到安装目录,执行make upgrade
第六步:查看是否更新成功
[root@h9 ~]# cd /usr/local/nginx/sbin/
[root@h9 sbin]# ./nginx -v
nginx version: nginx/1.17.6