サービス管理--Nginx

nginxの - アップグレード

.Nginxをテストアップグレード

ソースパッケージのインストール(構成2. 3.インストールコンパイラ)

 

1.まず、アップグレードパッケージ解凍し
ます。[root @のvlnx251101〜]#タールXFのnginxの-1.13.4.tar.gz 

ディレクトリアップグレードパッケージに2.を
[ルート@のvlnx251101〜]#のCDのnginxの-1.13.4 / 

3.ディレクトリを指定やその他の問題(prce-8.40)は、通常のサポート
[vlnx251101のnginx-1.13.4 @ルート] #は./configure --prefix =は/ usr / local / nginxの--user = nginxの--group = nginxの--with-http_ssl_moduleを- ファイルhttp_stub_status_module --with-と-AIO ---と-http_dav_module --with PCRE = .. / PCRE-8.40 

メイク#[vlnx251101 nginxのルート-1.13.4 @] 
4. [現在のバージョン
[ルート@ vlnx251101 nginx- 1.13.4]#は/ usr / local / nginxの/ sbinに/ nginxの-v 
nginxのバージョン:nginxの/ 1.12.1
5.以前の古いバックアップ
[ルート@ mysqlbのnginxの-1.13.4]#mvとは/ usr / local / nginxの/ sbinに/ nginxの/usr/local/nginx/sbin/nginx.bak 

[ルート@ mysqlbのnginxの-1.13 0.4]#のLS 
自動CHANGES.ruのconfigure HTML MakefileのsrcがOBJS 
CHANGESのconfのcontrib LICENSE男README 
[ルート@ mysqlb nginxの-1.13.4]#cpはOBJS / nginxのは/ usr / local / nginxの/ sbinに/ 

6.ビュー現在のバージョンを
[ @ mysqlbのnginxの-1.13.4ルート]#は/ usr / local / nginxの/ sbinに/ nginxの-v 
nginxのバージョン:nginxの/ 1.13.4

 この方法の一つ:

[ルート@ mysqlbのnginxの-1.13.4]#メイクアップ

  方法2:

nginxのPIDの1レビュー

[ルート@ mysqlb〜]#psの-ef | グレップのnginxの
ルート64600 1 0 16:47?午前〇時00分00秒nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxnginx 64601 64600 0午前16時47分?午後12時00分00秒nginxの:ワーカープロセスの
ルート70426 58718 0 17:21 PTS / 3午後12時00分00秒のgrep --color =オートnginxの

2. -USR2 PIDを殺す実行

[ルート@ mysqlb〜]#は-USR2 64600殺す
[ルート@ mysqlb〜]#psの-ef |を グレップのnginxの
ルート64600 1 0 16:47?午前〇時00分00秒nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxnginx 64601 64600 0午前16時47分?午前〇時00分00秒nginxの:ワーカープロセス
ルート70428 64600 0 17:22?午前〇時00分00秒nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxnginx 70429 70428 0 17:22?午後12時00分00秒nginxの:ワーカープロセスの
ルート70432 58718 0 17時23 PTS / 3午後12時00分00秒のgrep --color =オートnginxの
この時点で、古いものと新しいバージョンのnginxの例は、同時に実行され、nginxのインスタンスの古いバージョンを段階的に同時処理要求の入力は、それは通常閉鎖する作業のプロセスを開始します、古いマスター・プロセスにウインチ信号を送信する必要があります。

3. -WINCH PIDを殺す実行

[ルート@のmysqlb〜]#は-WINCH 64600を殺す
[ルート@ mysqlb〜]#psの-ef | グレップのnginxの
ルート64600 1 0 16:47?午前〇時00分00秒nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxroot 70428 64600 0午前17時22?午前〇時00分00秒nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxnginx 70429 70428 0 17:22?午後12時00分00秒nginxの:ワーカープロセスの
ルート70434 58718 0午前17時24分PTS / 3午後12時00分00秒のgrep --color =オートnginxの
あなたが正常にアップグレードしようとするだけでなく、新しいサーバを維持したい場合は、古いマスター・プロセスにシグナルを送るQUITそれが唯一の新しいサーバーが動作していることを残して、終了します。

4. -QUIT PIDを殺す実行

[ルート@のmysqlb〜]#は-QUIT 64600を殺す
[ルート@ mysqlb〜]#psの-ef | グレップのnginxの
ルート70428 1 0 17時22?00:00:00 nginxの:マスター・プロセスは/ usr / local / NGIN 
/ sbinに/ nginxnginx 70429 70428 0 17:22?午後12時00分00秒nginxの:ワーカープロセスの
ルート70436 58718 0 17:26 PTS / 3午後12時00分00秒のgrep --color =オートnginxの

 

古いバージョンは、第四工程の前にも復元することができ行われていません

[ルート@ vlnx251101〜]#は、rm -rfを/ usr / local / nginxの/ sbinに/ nginxの
[ルート@ vlnx251101〜]#cpは/usr/local/nginx/sbin/nginx.bakは/ usr / local / nginxの/ sbinに/ nginxの

[ルート@のvlnx251101〜]#は-HUP 44610を殺す
[ルート@ vlnx251101〜]#psの-ef | グレップのnginxの
ルート44610 1 0午前12時40分?午前〇時00分00秒nginxの:マスタープロセスは/ usr / local / nginxの/ sbinに/ nginxの
ルート74746 44610 0 14:38?午前〇時00分00秒nginxの:マスタープロセスは/ usr / local / nginxの/ sbinに/ nginxの
nginxの74747 74746 0 14時38分?午前〇時00分00秒nginxの:ワーカープロセス
nginxの77990 44610 0午後2時53分?午前0時00分○○秒nginxの:ワーカープロセス

[ルート@ vlnx251101〜]#は-QUIT 74746を殺す
[ルート@ vlnx251101〜]#psの-ef | grepのnginxの 
根44610 1 0 12時40分?午前0時00分○○秒nginxの:マスター・プロセスは/ usr / local / nginxの/ sbinに/ nginxの
nginxの77990 44610 0 14:53?午前0時00分○○秒nginxの:ワーカー・プロセス

 二つ。LuaJIT即ちC言語インタプリタで書かれたLuaのコードを使用して

1.ダウンロードLuaJIT

yumをインストールwgetのインストール

[ルート@のmysqlb〜]#wgetのhttp://luajit.org/download/LuaJIT-2.0.5.tar.gz

2.コンパイル、インストール

[ルート@ mysqlb〜]#タールXF LuaJIT-2.0.5.tar.gz 

[ルート@ mysqlb〜]#のCD LuaJIT-2.0.5 / 

[ルート@ mysqlb LuaJIT-2.0.5]#make installを   / PREFIX =は/ usrをローカル/ luajit
 
#電子の[mysqlb LuaJIT-2.0.5 @ルート] "/ luajit / libには/ usr / local /"町> /etc/ld.so.conf.d/usr_local_luajit_lib.conf
 
mysqlb LuaJIT-2.0 @ [ルート。 5]#1のldconfig(刷新配置文件)

3.環境変数の設定

[ルート@ mysqlb LuaJIT-2.0.5]#エクスポートLUAJIT_LIB =は/ usr / local / luajit / LIB 

[ルート@ mysqlb LuaJIT-2.0.5]#エクスポートLUAJIT_INC =は/ usr / local / luajit /含む/ luajit-2.0

4.Luaプログラム

[ルート@ mysqlb LuaJIT-2.0.5]#のVimのhello.lua 

[ルート@ mysqlb LuaJIT-2.0.5]#猫hello.luaの
印刷( "Hello World"の)

[ルート@ mysqlb LuaJIT-2.0.5]#のLUAハロー.lua 
のHello World 

#1のlua [mysqlb LuaJIT-2.0.5 @ルート] 
のLua 5.1.4著作権(C)1994から2008 Lua.org、PUC-リオ
> 
>印刷( "Hello World"の)
のHello World 
>

5.ダウンロードNDKとLua_module

[ルート@のmysqlb〜]#タールXF ngx_devel_kit-0.3.0.tar 
[ルート@ mysqlb〜]#タールXFのlua-nginxのモジュール-0.10.10.tar 
[ルート@のmysqlb〜]#タールXFのnginxの-1.13.4 .tar 
[ルート@ mysqlb〜] nginxの-1.13.4ます。#cd 
[ルート@のmysqlbのnginxの-1.13.4]#が作るきれいな
のrm -rf MakefileのOBJS 
[ルート@ mysqlbのnginxの-1.13.4]#./configureを--prefix =は/ usr / local / nginx1134 --user = nginxの--gro 
アップ= nginxの--with-http_ssl_module --with-http_stub_status_module --with-FILE-AIO --with-http_dav_module --with-PCRE = .. / PCRE -8.40 --add-モジュール= .. / ngx_devel_kit-0.3.0 --add-モジュール= .. / LUA-nginxのモジュール-0.10.10 
[ルート@ mysqlb nginxの-1.13.4]#make installを&&作ります

6.変更プロフィール

[ルート@ mysqlbのnginxの-1.13.4]#のVimの/usr/local/nginx1134/conf/nginx.conf

 


[ルート@のmysqlb nginxの-1.13.4] #エコー'ngx.say( "Hello World"の)'> /tmp/hello.lua 
殺す覚えていますか80ポートプロセス

[ルート@ mysqlbのnginxの-1.13.4] #pkillはnginxの

[mysqlb nginxの@ルート-1.13.4]#は/ usr / local / nginx1134 / sbinに/ nginxの-Cは/ usr / local / nginx1134 / confに
/nginx.conf

7.結果

[ルート@のmysqlb nginxの-1.13.4]#カール192.168.88.101/test1 
こんにちは
[ルート@ mysqlbのnginxの-1.13.4]#カール192.168.88.101/test2 
のHello World

  

 

 

  

おすすめ

転載: www.cnblogs.com/MR-ws/p/11202711.html