zabbix4.2 nginxの構成監視サービス

1.監視原理

  状態モジュールから(--with-http_stub_status_module)モニタ

 

 

 2. nginxの構成(/etc/nginx/conf.d/default.conf)を変更

  監視対象ホストのnginxの設定ファイルに変更され、設定ファイルに以下の(場所)を追加し、nginxの改訂版サービスを再起動することを忘れないでください:

{LOCATION / nginx_status 
                stub_status ON; 
                192.168.10.100を可能にする;#は、ホストがURLにアクセス許可されていることを示します。http://192.168.10.100/nginx_status 
                ; 192.168.10.2を許可
                OFF access_logの; 
        }

  

3.モニタースクリプトを追加します。

  nginxのnginxのサーバーホスト上の監視スクリプトの追加スクリプトを実行可能権限を与えながら、(/etc/zabbix/zabbix_agent.d/nginx_status.shます。chmod + X nginx_status.sh

#!/ binに/ bashの
#Scriptは、システム監視のためにnginxのステータスを取得するには
    HOST = "192.168.10.100" #ipの地址为装有nginxの服务的主机地址
    PORT = "80" 

    機能のping { 
        | / sbinに/ pidof nginxのを トイレ-l 
    } 

    {アクティブ機能
        カールは/ usr / binに/に"http:// $のHOST:$ PORT / nginx_status /" 2>を/ dev / null | | grepの'アクティブ' awkの'{印刷$ NF}' 
    } 
    機能読ん{ 
        は/ usr / binに/に"http:// $のHOST:$ PORT / nginx_status /"カール2>を/ dev / null | grepの'読書' | awkの{$ 2を印刷} ' 
    } 
    {書き込み機能
        は/ usr / binに/ ":// $のHOST:HTTP $ PORT / nginx_status /"カール2>を/ dev / null | grepの'ライティング' | awkは'{$ 4印刷します}'
        / usr / binに/に"http:// $のHOST:$ PORT / nginx_status /"カール2>を/ dev / null | grepの'ウェイティング' | awkの{$ 6印刷} ' 
    } 
    関数は{受け入れ
        は/ usr / binに/ ":// $のHOST:HTTP $ PORT / nginx_status /"カール2>を/ dev / nullを| awkのNR == 3 | awkの{$ 1印刷} ' 
    } 
    機能扱わ{ 
        の/ usr / binが/カールは"http:// $のHOST:$ PORT / nginx_status /" 2>を/ dev / null | awkのNR == 3 | awkの{$ 2を印刷} ' 
    } 
    {機能要求
        は/ usr / binに/に"http:// $のHOST:$ PORT / nginx_status /"カール2>を/ dev / nullを| awkのNR == 3 | awkの{$ 3印刷} ' 
    } 
    $ 1

  

4.テストは、アクセスを検出します

[ルート@ ZABBIXサーバ-センター alertscripts]#カールhttp://192.168.10.100/nginx_status #ipのアドレスnginxのサーバーのホストアドレス
:. 1アクティブ接続
サーバーが処理受け入れ要求
 1. 1. 1。
読書:0書き込み:0:待機中1

  

検出スクリプトテスト

  nginxの状態に関するいくつかの概念:

nginxのは、処理されているアクティブリンク数アクティブな接続の数、重要な
サーバーnginxのは、今どのように多くの接続の合計を扱っ始めます。
nginxのは、今握手を合計成功を数回作成を開始受け入れます。
nginxのは、総リクエストを複数回処理された要求を処理していました。
読書nginxのは、クライアントの数のヘッダー情報を読み取ります。
書き込みnginxのは、クライアントのヘッダカウント情報に戻りました。
待機nginxのは、オープン、次のリンクが要求コマンドを待っている存在に処理されています。
キープアライブの場合には、この値を待ってアクティブ- (読み取り+書き込み)に等しいです。
リクエスト損失=(数ハンドシェーク-接続を)見ることができ、この状態表示要求が失われることはありません。
[ルート@ ZABBIXサーバーセンターがalertscripts]#SHをnginx_status.shアクティブ
1 
[ルート@ ZABBIXサーバーセンターがalertscripts]#SHが読み取りnginx_status.sh 
0 
[ルート@ ZABBIXサーバーセンターをalertscripts]#SHをnginx_status.sh書き込み
1 
受け付けnginx_status.sh [ルート@ ZABBIXサーバ中心部alertscripts]#SHを
20

 

6. nginxののサービス(/etc/zabbix/zabbix_agentd.conf)を持つホスト上のzabbix_agentd.confの設定ファイルを変更します。 

UnsafeUserParameters = 1:レビュー:1に等しいUnsafeUserParameters

 

 

 

7. /etc/zabbix/zabbix_agentd.d/ディレクトリに入れZABBIXプロファイルを、追加のプロファイルnginx_status.confを作成する(/etc/zabbix/zabbix_agentd.confエージェントプロファイルは、他のキーで定義されているディレクトリが含まれています)

[*] UserParameter = nginxの、/etc/zabbix/zabbix_agentd.d/nginx_status.sh $ 1:追加     
                                                    のパスの後に#がスクリプトの場所を監視することです

 

 

 

8.再起動ZABBIXエージェントサービス

[ansible制御zabbix_agentd.d @ルート]#systemctl再起動ZABBIX-agent.service

  

ZABBIXサーバテストサーバー9.、取得したデータが正常であるか否か  

[ルート@ ZABBIXサーバーセンター/]#zabbix_get -s 192.168.10.100 -p 10050 -k nginx.status [ピング] 
1 
[ルート@ ZABBIXサーバセンター/]#zabbix_get -s 192.168.10.100 -p 10050 - k個のnginx.status [要求] 
2304 
[ルート@ ZABBIXサーバセンター/]#zabbix_get -s 192.168.10.100 -p 10050 -k nginx.status [受け入れる] 
6285 
[ルート@ ZABBIXサーバセンター/]#1 zabbix_get - S 192.168.10.100 -p 10050 -k nginx.status [取り扱い] 
6286

 

7.インターフェイス設定監視テンプレートZABBIXを入力します。  

  (1)テンプレートを作成します。

 

 

   (2)アプリケーションのセットを追加します。

 

 

   (3)監視項目を作成します。

 

 

   (4)複数の監視エントリを作成します。

 

 

   (5)トリガーを作成するには:実行可能な状態nginxののリアルタイム監視をトリガー、nginxのは、一度マシンをダンプし、アラームが発生します。

 

 

   (6)グラフィックスを作成します:

 

 

 

nginxのサービスを搭載した8ホストテンプレート

 

 

 

9.チェックモニタグラフィック

 

 

 10.値の先頭が比較的小さい場合は、AB簡単なストレステスト(主に要求)を使用して、値の変化を見ることができ、グラフィックスを表示するに助長されていません

[ルート@のZABBIXサーバ-センター/]#AB 1000年-c 1000年-n http://192.168.10.100:80/nginx_status
[ルート@ ZABBIXサーバ-センター/]#AB -n 1000年-c 1000年http://192.168.10.100:80/nginx_status 
:これはApacheBench、バージョン2.3 <1430300 $ $リビジョン>である
著作権1996アダムTwiss、ゼウス・テクノロジー株式会社、http://www.zeustech.net/ 
Apache Software Foundationの、http://www.apache.org/にライセンス

ベンチマーク192.168.10.100(我慢して)
完成した100件のリクエスト
が完了し200件のリクエスト
が完了し300点の要求
400個の要求が完了した
500を完了リクエスト
600件のリクエストが完了し
700件のリクエストが完了し
800件のリクエストが完了し
900件のリクエストが完了し
1000個の要求完了
1000要求の完成

 
nginxの/ 1.17.1:サーバーソフトウェアを
192.168.10.100:サーバーのホスト名を 
サーバーポート:80 

ドキュメントパス:/ nginx_status 
文書の長さ:106バイト

同時実行レベル:1000 
のテストにかかった時間:0.331秒
完全な要求:1000 
の要求を失敗しました:819 
   (接続:0、受信:0、長さ: 819、例外:0)
エラーを書く:0 
転送合計:253092バイト
HTML転送:109092のバイト
毎秒要求:3016.63 [#/秒(平均)
リクエスト当たりの時間:331.496 [MS](平均)
リクエスト当たりの時間:0.331 [ MS(つまり、すべての同時要求を横切って)
転送速度:745.59 [バイト/秒]は受信しました

接続時間(ミリ秒)
              分を意味する[+/- SD]メジアン最大
接続:3 31 15.1 26 69 
処理:26 90 68.1 62 253 
待機:1 90 68.2 62 253 
合計:72 121 64.4 91 282 

要求の割合が一定時間内に配信(MS)
  50%91 
  66%103 
  75%109 
  80%113 
  90%239 
  95%280 
  98%282 
  99%282 
 100%282(最長要求)

  

 

 

 

  

 

おすすめ

転載: www.cnblogs.com/python-wen/p/11571036.html
おすすめ