分散監視システムのZabbixアクティブ、パッシブ、Web監視

分散監視システムのZabbixアクティブ、パッシブ、Web監視

前回の記事では、Zabbix のネットワーク検出機能について学び、アクションと組み合わせて自動ホスト検出を実現し、ホストを Zabbix ホストに追加し、監視用に指定されたテンプレートにリンクしました。レビューについては、https://www.cnblogs.com/qiuhom-1874/p/14020847.html を参照してください。今日は、Zabbix のアクティブ監視、パッシブ監視、Web 監視関連のトピックについて学習します。

1. アクティブモニタリングとは何ですか?パッシブモニタリングとは何ですか?

データを取得するには、get と push の 2 つの方法があることはわかっています。 Zabbix では、アクティブ監視とパッシブ監視はエージェント側から記述されます。エージェントがZabbixサーバーにデータを積極的に送信してデータを収集する方法をアクティブ監視と呼びます。 Zabbix サーバーが Zabbix エージェントからデータを取得する方法は、パッシブ監視と呼ばれます。この方法では、Zabbix サーバーが定期的に Zabbix エージェントに要求した場合にのみ、Zabbix エージェントは Zabbix サーバーに該当するデータに応答します。 Zabbix サーバーが要求しない場合、Zabbix エージェントは Zabbix サーバーにデータを送信しません。アクティブ監視では、Zabbix サーバーがエージェントを要求するかどうかに関係なく、エージェントは指定された時間間隔でデータをサーバーにプッシュします。デフォルトでは、Zabbix はパッシブ監視を使用します。つまり、Zabbix サーバーは各 Zabbix エージェントにデータの収集を継続的に要求する必要があり、そうしないとデータが収集されません。

2. アクティブモニタリング作業プロセス

アクティブ監視を実装するには、まずエージェントが収集するデータを認識し、それをサーバーに送信する必要があります。次に、Zabbix サーバーは異なるエージェントから送信されたデータをどのように区別するのでしょうか? Zabbix 監視システムでは、アクティブ監視の動作プロセスは、監視構成が Zabbix Web 上で構成された後、まずそれが Zabbix データベースに保存され、次に Zabbix サーバーが対応する構成をデータベースに適用するというものです。アクティブ モードでは、Zabbix サーバーは初めて Zabbix エージェントにアクティブに接続し、監視構成を Zabbix エージェントにプッシュします。 Zabbix エージェントは監視構成を取得した後、指定されたデータを収集し、指定された時間間隔でサーバーに送信します。 Zabbix エージェントは、自身を識別するために、データをサーバーに送信するときに設定ファイルで指定されたホスト名を持ち込み、そのホスト名を使用して自身をエージェントとして識別します。

3. Zabbixトラップモード

トラップ モードもアクティブ モニタリングの一種です。その動作プロセスは、Zabbix サーバーまたは Zabbix エージェントによって設定された時間間隔に依存しません。その動作プロセスは、監視対象ホスト上の zabbix 送信ツールを使用して不定期にデータを送信し、zabbix サーバーは各監視対象端末から送信されるデータを待機するためにトラッパー プロセスを実行することです。その後、データはデータベースに記録され、データ収集プロセスが完了します。このモードは主に監視対象端末に緊急事態が発生したときに一時的な情報を収集するために使用されます。

Zabbixエージェントをパッシブモードで動作するように設定する

ヒント: デフォルトでは、Zabbix エージェントはパッシブ モードの監視を使用しますが、データを収集するために Zabbix エージェントに指示を送信するように Zabbix サーバーを構成する必要があります。上記の赤いボックス内のサーバー コマンドは、このエージェントにデータ収集の指示を送信するように Zabbix サーバーを構成するためのものです。複数の Zabbix サーバーの IP アドレスを設定できます。上記のサーバーを設定した後、設定を保存し、zabbix エージェントを起動し、zabbix Web インターフェイスで zabbix エージェントを設定し、zabbix エージェントを選択して対応する項目の設定を完了します。下記の通り

Zabbixエージェントをアクティブモードで動作するように設定する

ヒント: zabbix エージェントをアクティブ モードで動作するように構成するには、Server に加えて、ServerActive と対応するホスト名を構成する必要があります。 ServerActive 命令は、データの送信先を指定するために使用されます。ホスト名を設定するには、Hostname を使用して固定のホスト名を直接指定するか、HostnameItem を使用して組み込みの zabbix キー system.hostname を使用してホスト名を取得します。これら 2 つの方法のいずれかを選択できます。

アクティブモード Zabbix エージェント設定ファイル

  1. [root @node05 ~]# grep -Ei ^[az] /etc/zabbix/zabbix_agentd.conf
  2. PidFile=/var/run/zabbix/zabbix_agentd.pid
  3. LogFile=/var/log/zabbix/zabbix_agentd.log
  4. ログファイルサイズ = 0
  5. サーバー= 192.168.0.43
  6. サーバーアクティブ= 192.168.0.43
  7. ホスト名項目=system.hostname
  8. インクルード=/etc/zabbix/zabbix_agentd.d/*.conf
  9. [ルート@node05 ~]#
  10. コードを表示

Zabbix Web GUI設定では、対応するZabbixエージェントのタイプはZabbixエージェント(アクティブ)です。

今定義した項目がデータを収集できるかどうか確認してみましょう。

ヒント: データを収集できるということは、Zabbix エージェントをアクティブ モードに構成するのが正常であることを示しています。

Zabbix WebでZabbix Trapperタイプのアイテムを設定する

ヒント: 上記の設定により、ホスト node05.test.org は zabbix 送信者を使用して zabbix サーバーにデータを送信できるようになります。送信データのキーはtest_trapです。このキーには実際の意味はなく、主に対応するデータを識別するために使用されます。この設定の後、zabbix サーバー上でトラッパーが構成され、zabbix_sender を使用して node05.test.org から送信されたキー test_trap を持つデータを受信します。

node05にzabbix-senderツールをインストールする

  1. [root @node05 ~]# yum install -y zabbix-sender

node05のzabbix_senderを使用して、キーtest_trapのデータをzabbixサーバーに送信します。

  1. [root @node05 ~]# zabbix_sender -z 192.168 . 0.43 -s node05.test.org -k test_trap -o "$(free|awk '/^Mem/{print $4}')"
  2. サーバーからの情報: 「処理済み: 1、失敗: 0、合計: 1、経過秒数: 0.000360」
  3. 送信: 1 ;スキップ: 0 ;合計: 1
  4. [ルート@node05 ~]#

ヒント: -z は zabbix サーバーのアドレスを指定し、-s はローカル マシンのホスト名を指定します。 -k はデータを受信するためのキーを指定し、-o はキーに対応するデータを送信することを示し、-o には値を直接指定することも、コマンド置換によって指定することもできます。

対応するキーがデータを受信したかどうかを Zabbix Web でのみ確認しますか?

ヒント: 対応するキーがデータを受信したことがわかります。このトラップは通常、Zabbix エージェントが存在せず、対応する監視対象ホストが特定の頻度で特定のデータを Zabbix サーバーに送信する場合に使用できます。監視対象側で実行される zabbix sender コマンドをスケジュールされたタスクとして設定し、定期的なデータ収集も実行できます。

上記は、Zabbix でよく使用される 2 つのアクティブ監視構成です。次に、zabbix の Web 監視を見てみましょう。

ウェブモニタリングとは何ですか?文字通りの意味から言えば、Web ページを監視することを意味します。はい、Web ページを監視することを意味します。通常、Web サイトは 1 ページだけではないことはご存じのとおりです。ホームページ以外にも、決済システムや注文管理システムなどのシステムページがあります。Web サイトが正常かどうかを監視する場合、ホームページだけを監視するだけでは明らかに不十分です。 zabbix では、Web ページを監視するためのインターフェースを提供します。対応する監視対象ページのアクセス URL を設定するだけです。 Zabbix の Web モニタリングでは、デフォルトで、指定されたページの 3 つの指標データ、つまり、指定されたページのリソース ダウンロード速度、ページ応答時間、応答コードを監視します。

node05 で Web サービス監視を構成する

テスト用にWebサービスnginxをnode05にインストールする

  1. [root @node05 ~]# yum install -y nginx

複数のアクセスページを提供することをシミュレートし、nginxを起動します

  1. [root @node05 ~]# cp /var/log/messages /usr/share/nginx/html/message.html
  2. [root @node05 ~]# cp /var/log/lastlog /usr/share/nginx/html/lastlog.html
  3. [root @node05 ~]# systemctl start nginx.service
  4. [ルート@node05 ~]# ss -tnl
  5. 状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート
  6. 聞く0 128 *: 80 *:*
  7. 聞く0 128 *: 22 *:*
  8. 聞く0 100 127.0 . 0.1 : 25 *:*
  9. 聞く0 128 *: 10050 *:*
  10. 聞く0 128 ::: 80 :::*
  11. 聞く0 128 ::: 22 :::*
  12. 聞く0 100 :: 1 : 25 :::*
  13. 聞く0 128 ::: 10050 :::*
  14. [ルート@node05 ~]#

Zabbix Webページで監視ノード05のWebサービスを構成する

ヒント: ホスト リストで対応するホストを見つけて、Web を選択します。

ヒント: Web シナリオの作成ページに入るには、[Web シナリオの作成] を選択します。

ヒント: 名前とアプリケーションを入力し、更新間隔、試行回数、エージェント (クライアント ブラウザー、ここではシミュレートされた Google ブラウザーを選択) を選択し、Web シナリオの基本情報を入力し、ステップをクリックして、監視するページの関連情報を入力します。

ヒント: 監視する Web URL の関連情報を追加するには、[追加] をクリックします。

ヒント: 他の情報がある場合は、対応する位置の「追加」をクリックして追加します。上記のロジックに従って他の Web ページの URL を追加します。

ヒント: 監視対象の Web ページでログイン ユーザー名とパスワードの検証が必要な場合は、[認証] メニューを選択し、対応するユーザー名とパスワードを入力します。次のように

ヒント: 検証の必要がない場合は、最終認証を入力しないことも選択できます。最後に、Web URL を追加した後、[追加] をクリックして、対応する Web ページを Zabbix 監視に追加します。

Web モニタリングに追加するときに収集されるデータ項目を確認します。データはありますか?

ヒント: 上記のページ情報から、各 URL のダウンロード速度、ステータス コード、応答時間を監視する Web モニタリングを追加したことがわかります。上記の監視によって収集されたデータから、work1 で指定された URL に対して、応答コードが 403 として監視されていることがわかります。これは、nginx ユーザーに message.html の読み取りを許可しなかったため、403 で応答するためです。権限を変更するだけです。

  1. [root @node05 ~]# chmod a+r /usr/share/nginx/html/message.html
  2. [root @node05 ~]# ll /usr/share/nginx/html/message.html
  3. -rw-r--r-- 1ルート ルート264214 11月23日19:01 /usr/share/nginx/html/message.html
  4. [ルート@node05 ~]#

nginx のアクセス ログをチェックして、対応するページに定期的にアクセスしているかどうかを確認します。

  1. [root @node05 ~]# /var/log/nginx/access.log の末尾
  2. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 51 : 23 + 0800 ] "GET /lastlog.html HTTP/1.1" 200 292000 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  3. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 52 : 23 + 0800 ] "GET /index.html HTTP/1.1" 200 4833 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  4. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 52 : 23 + 0800 ] "GET /message.html HTTP/1.1" 403 555 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  5. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 52 : 23 + 0800 ] "GET /lastlog.html HTTP/1.1" 200 292000 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  6. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 53 : 23 + 0800 ] "GET /index.html HTTP/1.1" 200 4833 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  7. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 53 : 23 + 0800 ] "GET /message.html HTTP/1.1" 403 555 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  8. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 53 : 23 + 0800 ] "GET /lastlog.html HTTP/1.1" 200 292000 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  9. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 54 : 23 + 0800 ] "GET /index.html HTTP/1.1" 200 4833 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  10. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 54 : 23 + 0800 ] "GET /message.html HTTP/1.1" 403 555 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  11. 192.168 . 0.43 - - [ 23 /Nov/ 2020 : 19 : 54 : 23 + 0800 ] "GET /lastlog.html HTTP/1.1" 200 292000 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/38.0.2125.104 Safari/537.36" "-"
  12. [ルート@node05 ~]#

ヒント: 上記のログから、Zabbix サーバーが Google Chrome をシミュレートして、対応する監視対象ページに 1 分ごとにアクセスしていることがわかります。

上記は、zabbix Web 監視に関連する設定とデモンストレーションです。その後、Web 監視によって収集されたインジケーター データに基づいて、トリガー、アラーム、その他の操作を定義できます。

<<:  エッジコンピューティングサービスの利点は何ですか?

>>:  ガートナー: 2021 年のクラウド コンピューティングのトップ 10 トレンド

推薦する

このツールはKubernetesクラスタをイメージにパッケージ化できる

[[403561]] sealer[ˈsiːlər]は、分散アプリケーションとデータベースミドルウェ...

SEO 担当者:「ウェブサイトの権威性」を正しく理解するにはどうすればよいでしょうか?

月給5,000~50,000のこれらのプロジェクトはあなたの将来ですウェブサイトのランキングに影響を...

電子商取引のトラフィックは少ない:来年はブランドB2Cの再編の年になる

【はじめに】垂直電子商取引は100メートル短距離走というよりマラソンのようなもので、規模を追求するゲ...

DockerとKubernetesを超えて: コンテナエコシステムは進化し続けている

コンテナはここ数年で大きく進歩し、ニッチなテクノロジーから、最新のクラウドネイティブ アプリケーショ...

HolderHost - $15/年/256MB RAM/20GB HDD/300GB Flow/G ポート/フェニックス シティ

holderhostがHostcatに登場するのは今回が初めてです。簡単に説明すると、コンピュータル...

マーケターがソーシャルメディアのROIに関する5つの間違いを避ける方法

導入:この記事では、マーケティング担当者がソーシャル メディアの ROI に関して抱くよくある誤解を...

#ブラックフライデー#: ドメイン - 特別価格のドメイン、たくさん買ってもっと節約

domain.com の最新のブラック フライデー ドメイン名プロモーションが、合計 3 つの割引コ...

アプリプロモーション:オフラインチャネルプロモーション方法11選!

オフラインプロモーションは、ウェブサイトへの直接トラフィックを増やすだけでなく、企業ブランドを宣伝す...

なぜ熊張昊は含まれないのでしょうか?

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています熊張豪のモ...

南アフリカcn2giaネットワークの独立サーバー、強制3ネットワークバックホールcn2 giaの簡単な評価

Justgは以前から南アフリカのデータセンターに南アフリカ独立サーバーを設置しており、南アフリカのク...

今後O2Oをどのように楽しんでいくのでしょうか?

先週末、私は北京でメディア専門家のグループと座り込み、主要なインターネットの出来事について話し合いま...

ウェブサイトのトラフィックのボトルネックを突破し、しばらくトラフィックを流す方法

多くの人がウェブサイトを最適化すると、トラフィックが一定レベルに達するとボトルネックが発生します。通...

オンライン採用、過去に何が悪かったのでしょうか?

働いていますか?もちろんです。求人サイトを利用して仕事を見つけることはできましたか?できたようです。...

Türkiye データセンター: Türkiye サーバー、Türkiye 独立サーバー マーチャント推奨

トルコのサーバーを販売している業者をいくつか紹介して紹介したいと思います。トルコにコンピューター ル...

ストレージ仮想化とは何ですか?レコード層とブロック層にはどのようなデバイスが含まれていますか?

ストレージ仮想化とは、1 つのストレージ デバイスを複数のストレージ デバイスに仮想化したり、複数の...