Zabbixのカスタム監視項目とトリガーについて

Zabbixのカスタム監視項目とトリガーについて

1. 監視ポート

関係の説明

トリガー: クライアントのスクリプトに従って値を取得します。クライアントの特定の値が要件に達すると、アラームが発行されます。

監視項目: クライアントスクリプトに従って値を取得し、値を収集する間隔を設定し、値を保持して記録し、曲線チャートを作成します。

アプリケーション セット: 監視項目を分類して保存するために使用されます。たとえば、80、8080 などの Web サービスの監視項目は WEB アプリケーション セットに配置され、22、21 などの小規模サービスの監視項目は SMALL アプリケーション セットに配置されます。

テンプレート: テンプレートは、定義された監視項目のセットです。任意のホストがテンプレートに接続されると、テンプレート内の監視項目がホストに適用されます。ただし、これらの監視項目を変更するには、テンプレート内でのみ変更でき、変更後は、接続されている他のホストもそれに応じて変更されます。

操作する

1. テンプレートを作成します。テンプレート名は監視ポートを示すために使用されます。ここでは、Port という名前です。テンプレートはグループに追加する必要があります。区別するために別のグループを作成できます。

2. アプリケーション セットを作成します。アプリケーション セットに名前を付けるだけです。

3. 監視項目を作成します。名前は監視する値を区別するために使用されます。nginx へのアクセス数や、mysql の読み取り数などです。

キー値には 2 種類あり、1 つはクリックして選択してシステムの組み込み値を使用するもので、もう 1 つはスクリプト キーをカスタマイズするものです。

ここでnet.tcp.listen[port]を選択し、telnetを使用してホストがポートをリッスンしているかどうかを確認し、[port]に監視するポート番号を入力します。

4. トリガーを作成します。{HOST.NAME} はアラーム表示用のホスト名を取得します。 「式の追加」をクリックするか、他の組み込みトリガーの値をコピーして変更します。
監視項目を接続します。これは、作成した監視項目であり、残りは変更しません。

5. 対応するグループを選択し、グループから新しく作成された監視項目を見つけます。

6. ポートはテンプレート名です。ここにホスト名またはホスト IP を記述することを選択した場合、テンプレートではなく単一ホストの監視項目になります。

2. 監視サービス

関係の説明

スクリプト: スクリプトを実行して値を取得します。 構成ファイル: カスタム キーを許可し、キー値をスクリプトに関連付けて値を取得します。
サーバー側のテスト: サーバーはクライアントに指示を送信し、クライアントはスクリプトを実行して値を取得し、それをサーバーに返します。

操作する

1. 値を取得するスクリプトを作成する
cd /etc/zabbix/script

vim web_status.sh

#!/bin/bash

ケース$1
リアン
    netstat -anptu | grep 172.26.98.247:80 | wc -l ;;
ピン
    netstat -unltp | grep -w 80 &>/dev/null && echo 1 || echo 0 ;;
 *)
    echo "Lian | Ping" ;;
エサック

テストスクリプト./web_status.sh Ping実行して1を取得できるかどうかを確認します

2. クライアント構成ファイルを変更してカスタムキーを許可する
vim /etc/zabbix/zabbix_agentd.conf

Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf #他の設定ファイルを読み込む UnsafeUserParameters=1 #カスタムキーを有効にする

systemctl restart zabbix-agent

3. 設定ファイルを変更し、キー値の名前とスクリプトの場所を設定します。これにより、設定ファイルは、このキー値を取得するためにどのスクリプトを実行する必要があるかを認識できるようになります。

web.pingはカスタムキー値名で、その後にスクリプトパスが続きます。
vim /etc/zabbix/zabbix_agentd.d/web_status.conf

ユーザーパラメータ=web.ping、/etc/zabbix/script/web_status.sh Ping
ユーザーパラメータ=web.lian、/etc/zabbix/script/web_status.sh Lian

コマンドに絶対パスを使用する場合は、スクリプトを使用せずに次のように値を取得することもできます。
例えば

ユーザーパラメータ=web.shu、/bin/netstat -anptu | wc -l

4. 検出、クライアントテスト
zabbix_agentd -t web.ping #正しい場合は1を返します

サーバー側のテスト:
/ops/server/zabbix/bin/zabbix_get -s 192.168.1.1 -k web.ping #1 は正しい

5. 表示される(すべてのプロセスが識別されたわけではない、所有されていないプロセス情報)
表示されません。すべてを表示するには、root である必要があります。

これは、スクリプト内で netstat コマンドが使用されているものの、クライアントが zabbix ユーザーを使用してスクリプトを起動しており、このコマンドを使用する権限がないためです。

クライアントはchmod +x /bin/netstatを実行します。

Webページ操作:
キー値が見つからないため、手動で記述します。トリガー式もこの監視項目に接続されています。

3. テンプレートのインポートとエクスポート

輸入:

輸出:
テンプレートを選択して下にスクロールします

Zabbix カスタム監視項目とトリガーに関するこの記事はこれで終わりです。関連する Zabbix カスタム監視項目の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Zabbix で監視項目と集約されたグラフを設定するためのサンプルコード

<<:  JavaScript BOM の説明

>>:  MySQL データベースの操作とデータ型

推薦する

Vue3 の組み合わせ API における setup、ref、reactive の完全な使用方法

1. セットアップを始める次のコード関数を簡単に紹介します。 ref 関数を使用して変数の変更を監視...

ウェブページの右下隅に「いいね!」カード効果を実現するための CSS (サンプルコード)

効果 HTML を実装するには、まずクリーンな HTML ページを準備し、ノードを記述します。 &l...

MySQL 文字セットの文字化けとその解決方法

序文文字セットは、一連のシンボルとエンコード規則です。Oracle データベースでも MySQL デ...

Reactでコンポーネントを作成する方法

目次序文コンポーネントの紹介クラスコンポーネントの作成状態についてレンダリングについて関数コンポーネ...

DockerのIDEA構成プロセス

IDEA は Java で最も一般的に使用されている開発ツールであり、Docker は最も人気のある...

goaccess を使用して nginx ログを分析する詳細な方法

最近、goaccess を使って nginx ログを分析したいのですが、nginx ログの設定形式が...

Mybatisの各SQL文の実行時間の統計

背景最近、面接でデータベース トランザクションについてよく質問されます。通常は、@Transacti...

ネイティブWeChatアプレット開発におけるreduxの使用の詳細な説明

前提複雑なシナリオでは、複数の異なるページ間で大量のデータを使用したり変更したりする必要があります。...

クリック範囲を拡大する入力チェックボックスを実装する方法

XML/HTML コードコンテンツをクリップボードにコピー< div style = &quo...

ORM モデル フレームワークを使用して MySQL データベースを操作する方法

ORM とは何ですか? ORM は Object Relational Mapping の略で、オブ...

リモート Linux システムでポートが開いているかどうかを確認する 3 つの方法

これは、Linux 管理者だけでなく、私たち全員にとって非常に重要なトピックです。つまり、IT イン...

Docker プライベート ウェアハウスを構築する (自己署名方式)

作成したイメージを一元管理し、サービスの展開を容易にするために、プライベート Docker リポジト...

Vue echarts は棒グラフの動的な表示を実現します

この記事では、棒グラフの動的な表示を実現するためのvue echartsの具体的なコードを参考までに...

JavaScript ES6 分割演算子の理解と応用

目次序文脱構築記号の役割使い方分割割り当ての適用アプリケーションの簡単な紹介JSONデータを抽出する...

Linux の Makefile とは何ですか? どのように機能しますか?

この便利なツールでプログラムをより効率的に実行およびコンパイルしますMakefile は自動コンパイ...