美文网首页
Nginx启动、停止、平滑升级

Nginx启动、停止、平滑升级

作者: 枫山别院 | 来源:发表于2017-11-07 21:57 被阅读0次

欢迎访问我的博客,同步更新: 枫山别院
说一说Nginx的安装、启动、停止

Nginx的安装

1、Linux上

  • 在Linux上安装Nginx时需要一些最小化的支撑组件,首先要保证系统中有这些组件,安装命令如下(以CentOS为例):
    yum -y install make zlib zlib-devel gcc gcc-c++ ssh libtool pcre pcre-devel
    上面的make,zlib,zlib-devel,gcc,gcc-c++,ssh,libtool都是选择安装的,缺什么安装什么即可
    检查安装过的包命令如下:
    yum list installed | grep "软件名或者包名"

  • 下载Nignx安装包,点击Nginx官网下载最新版,可以使用wget命令直接下载到Linux或者使用FTP上传。

  • 解压安装包tar -zvf nginx-1.13.6.tar.gz

  • 安装,命令如下:
    ./configure
    如果报错:the HTTP rewrite module requires the PCRE library
    那么你需要安装上PCRElib,之后再执行./configure,之后执行make命令编译Nginx,编译完成之后,你可以再执行make install即可安装到指定位置(默认位置/usr/local/nginx)。使用参数--prefix=/nginx可以指定安装位置,比如安装到/nginx目录下,完整的命令就是./configure --prefix=/nginx

  • 一般直接运行nginx命令即可启动Nginx,配置文件默认会使用conf目录下面的nginx.conf,下面几个命令你也许会常用到:
    nginx -c 配置文件路径:使用指定的配置文件启动
    nginx -t 配置文件路径:检查配置文件是否正确并退出
    nginx -s reload:重新加载配置文件
    nginx -s stop:停止Nginx
    nginx -v:打印版本号并退出
    nginx -V:打印版本号和配置并退出
    2、在Windows上安装比较简单,下载编译好的包即可,就不说了

好了,Nginx的一点基本使用已经说完了,下面是一些高级点的东西


  • Nginx服务的信号控制
    Nginx在启动之后会分为主进程(master process)和一个及以上工作线程(worker process),我们只要给主进程发送信号就可以对Nginx进行一些控制。
    在发送信号的时候使用kill命令,那么我们需要知道Nginx主进程的PID,查询PID可以使用命令ps -ef |grep nginx就会看到如下图:
    PID.png
    红框里的就是PID了
    命令有两种方式:
    1、kill 信号 PID
    2、nginx -g 信号
    支持的常用信号如下:
信号 描述
TERM或INT 快速停止Nginx服务
QUIT 平缓停止Nginx服务
HUP 使用新的配置文件启动Nginx,之后平缓停止原有进程,也就是平滑重启
USR2 使用新版Nginx文件启动,之后平缓停止原有Nginx,也就是平滑升级
WINCH 平缓停止Nginx工作线程,用于平滑升级
  • 案例
    1、快速停止Nginx
    快速停止是指立即放弃当前工作,停止服务;当前也可以使用kill -9 PID
    nginx -g TERM或者nginx -g INT
    2、平缓停止Nginx
    平缓停止是指将当前请求处理完毕之后不再接受新请求,然后停止服务。
    nginx -g QUIT
    3、Nginx平滑重启
    如果你修改了配置文件,想要使用新的配置,但是又不想Nginx停止服务,这时你可以使用平滑重启。平滑重启时先读取配置文件,如果有错误那么就显示错误,停止平滑重启,继续使用原服务;如果配置正确那么启动新服务,平缓关闭原服务。
    nginx -g HUP
    可以添加-c 新配置文件路径来指定使用新的配置文件平滑重启,完整命令如下:
    nginx -g HUP -c 新配置文件路径
    4、Nginx平滑升级
    首先你需要安装新版本的Nginx,安装路径必须跟原来的Nginx一样。安装之前请务必备份原有的Nginx。如果不能保持路径一致那么可以将新版本的Nginx安装在其他位置,然后在原Nginx中使用命令nginx -p 新版本的Ngixn安装位置将原有Nginx指定到新的位置。
    第一步,使用命令nginx -g USR2发送平滑升级信号,使用命令ps -ef |grep nginx查看新的Nginx服务是否启动
    第二步,如果新服务启动成功,使用命令nginx -g WINCH来停止原有服务
  • 今日强心剂:

你所浪费的今天,是昨天死去的人奢望的明天。你所厌恶的现在,是未来的你回不去的曾经。
加油吧,少年!

转载请注明出处,谢谢!

相关文章

  • Nginx启动、停止、平滑升级

    欢迎访问我的博客,同步更新: 枫山别院说一说Nginx的安装、启动、停止 Nginx的安装 1、Linux上 在L...

  • Nginx命令操作

    一.基本操作 启动 nginx 检查配置文件 nginx -t 强制停止 nginx -s quit 平滑加载配置...

  • Nginx源码学习——向master进程发送信号

    可以用命令行控制Nginx的启动与停止、重载配置文件、回滚日志文件、平滑升级等。而通过Nginx命令行发送信号有两...

  • nginx 启停

    启动nginx 停止nginx 重新启动nginx

  • Nginx实现平滑重启及无损版本升级

    Nginx服务平滑(无损)重启 一般重启过程: Nginx版本平滑(无损)升级 一般升级: 这样就可以实现不中断服...

  • nginx常见命令

    启动命令: /nginx/sbin/nginx(启动) /nginx/sbin/nginx -s stop(停止)...

  • nginx学习目录

    nginx安装部署和配置管理 nginx日志配置 nginx平滑升级与回滚 nginx反向代理 nginx负载均衡...

  • nginx

    启动、停止、重启 // 启动 // 停止(c:\nginx-1.11.10) // 重启

  • Nginx平滑升级

    Nginx平滑升级,可以在不中断服务的情况下 - 新的请求也不会丢失,使用新的 nginx 可执行程序替换旧的(当...

  • Nginx平滑升级

    Nginx-1.6.2升级到Nginx-1.7.2 查看目前nginx的相关配置 下载需要更新的Nginx源码包w...

网友评论

      本文标题:Nginx启动、停止、平滑升级

      本文链接:https://www.haomeiwen.com/subject/vblhmxtx.html