首页 > 系统相关 >Nginx不停服务版本升级(平滑升级)

Nginx不停服务版本升级(平滑升级)

时间:2025-01-04 10:45:04浏览次数:1  
标签:sbin nginx 平滑 pid Nginx 版本升级 指令 usr 执行

以默认安装路径为例,即nginx主文件为/usr/sbin/nginx

  1. 备份nginx旧版本,即此例中的/usr/sbin/nginx这一文件;

  2. 下载nginx新版本压缩包,并解压到需要进行升级的节点任意目录,此处以解压到 /root 为例;

  3. 执行如下指令,并将输出的参数复制下来;

    /usr/sbin/nginx -V
    
  4. 定位到新版本解压的位置,此例中为 /root ,执行如下configure指令,其中 %%% 部分为上一步复制的参数。

    注意查看执行过程中有没有报错,如果有报错的话,查看报错信息对应到是哪一个模块( %%% 中的哪一段),综合判断是修复问题还是删除对应参数,直至configure成功;

    ./configure %%%
    
  5. configure完成后,在同目录下执行如下命令,生成makefile;

    make
    
  6. make完成后,已经生成了新版的nginx主文件,在当前位置的objs目录内。确认nginx旧版本备份完成后,将新的nginx主文件复制到/usr/sbin目录下,覆盖原版本;

  7. 执行如下指令,测试当前配置文件与新版nginx是否有兼容问题,有的话对应排查修复;

    /usr/sbin/nginx -t
    
  8. 执行如下指令,执行完成后查询nginx进程,此时应该有两套nginx进程(“一套”包含master + 多个worker)在同时运行;

    “cat” 之后的pid文件如果不在这个目录,可以在nginx.conf中搜索“pid”找到对应的路径。

    kill -USR2 `cat /var/run/nginx.pid`
    
  9. 执行如下指令,之后多次查询nginx进程,直到其中一套nginx进程(老版本的)中的worker进程全部停止,注意是pid.oldbin

    kill -WINCH `cat /var/run/nginx.pid.oldbin`
    
  10. 执行如下指令,注意是pid.oldbin。完成后再查询nginx进程,此时应该只剩一套nginx进程;

    kill -QUIT `cat /var/run/nginx.pid.oldbin`
    
  11. 至此nginx不停机升级完成。可以执行如下指令查询nginx当前版本号,并查询nginx的access日志文件查看nginx服务运行状况。

    /usr/sbin/nginx -V
    

标签:sbin,nginx,平滑,pid,Nginx,版本升级,指令,usr,执行
From: https://www.cnblogs.com/walkwithme/p/18651611

相关文章

  • 发布blazor应用到Linux, 使用nginx作为WebSocket代理
    Blazor使用了SignalR连接,而SignalR使用的是WebSocketWebSocket协议提供了一种创建支持客户端和服务器之间实时双向通信的Web应用程序的方法。作为HTML5的一部分,WebSocket使开发此类应用程序比以前的方法容易得多。大多数现代浏览器都支持WebSocket,包括Chrome、Firefox......
  • 【手把手-包教包会系列】nginx 在linux的安装步骤
    手把手带你linux安装ngixn【包教包会系列】引言在linux下安装nginx,第一步需要安装gcc-c++编译器;第二步安装nginx依赖的pcre和zlib包;第三步安装nginx;开始安装gcc-c++编译器yuminstallgcc-c++yuminstall-yopensslopenssl-devel安装pcre包yuminstall-y......
  • Nginx的referer参数的用法和原理
    ​Nginx的referer参数是用于控制HTTP请求中的Referer字段的相关配置。这个参数的主要作用是限制或允许特定来源网站的访问,以加强安全性或控制流量。用法:限制特定来源网站的访问: 可以使用referer参数来配置Nginx,使其只允许来自指定来源网站的请求。这有助于防止盗链或未经授......
  • Nginx-WMware安装 c
    CentOS-7-x86_64-Minimal-1810.iso镜像下载地址通过网盘分享的文件:CentOS-7-x86_64-Minimal-1810.iso链接:https://pan.baidu.com/s/1As2tckziAeVVF7sNJkZSlA?pwd=sky1提取码:sky1一、新建虚拟机二、选择“典型”三、选择刚刚下载的CentOS-7-x86_64-Minimal-1810的ISO......
  • 一文读懂:Nginx 和Gateway
    在技术选型时,选择Nginx和SpringCloudGateway(或简称为Gateway)主要取决于具体应用场景和技术需求。下面是两者的一些关键差异和适用场景: Nginx:定位与功能:Nginx是一个高性能的Web服务器和反向代理服务器,常被用作静态内容的服务器和负载均衡器。它支持HTTP、HTTPS、SM......
  • 负载均衡指南:Nginx与HAProxy的配置与优化
    在现代网络应用中,负载均衡是确保高可用性和高性能的关键技术。通过将流量分配到多台服务器上,负载均衡器能够有效提升系统的处理能力,并防止单点故障。本文将详细介绍两种常见的负载均衡器——Nginx和HAProxy的配置与优化方法,并提供实际操作中的代码示例和技巧。一、Nginx负载均衡......
  • openssl版本升级升级
    修复"避免使用IDEA、DES和3DES算法"漏洞需要升级openssl。修复建议1、OpenSSLSecurityAdvisory[22Sep2016]链接:https://www.openssl.org/news/secadv/20160922.txt请在下列网页下载最新版本:https://www.openssl.org/source/2、对于nginx、apache、lighttpd等服务器......
  • Nginx限流怎么做
    在Nginx中实现限流可以通过使用limit_req模块来实现。limit_req模块可以根据客户端的请求数或请求频率来对请求进行限制,以保护后端服务器免受过多的请求压力。以下是一种使用limit_req模块进行限流的配置示例:http{limit_req_zone$binary_remote_addrzone=limit:10mrate......
  • 使用Nginx搭建流媒体服务器
    什么是流媒体服务器流媒体服务器(StreamingMediaServer)是一种用于存储和传输音频、视频、直播等媒体内容的服务器软件。它通过网络将媒体文件实时传输给用户,而不需要用户先下载完整文件。流媒体服务器支持按需播放、实时广播等功能,常见的使用场景包括在线视频、音频点播、直播视......
  • Nginx的使用
    **在Linux下的安装和启动Nginx–此次演示以centos系统为例**1.环境准备(1)需要安装gcc的环境,如果安装了这个依赖环境就可以忽略,自己前边也就安装过了,如果是在一台新的机器上安装,这个环境是一定是要记得安装的。(2)第三方的开发包。(除了安装gcc的环境,还需要安装......