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 データベースの操作とデータ型

推薦する

JavaScriptは検証コードと検証のランダム生成を実装します

この記事では、検証コードのランダム生成と検証を実現するためのJavaScriptの具体的なコードを参...

レスポンシブウェブデザインを実現するためにIEでCSS3メディアクエリをサポートする

今日の画面解像度は、320 ピクセル (iPhone) ほど小さいものから、2560 ピクセル以上 ...

Kubernetes YAMLファイルの使用

目次01 YAMLファイルの概要YAML---キー値型YAML---リスト型02 K8Sにおけるマス...

MySQL メモリテーブルと一時テーブルの使用方法の詳細な説明

MySQL メモリ テーブルと一時テーブルの使用メモリテーブル: セッション 1 $ mysql -...

Ajax は CORS レスポンス ヘッダーを設定してクロスドメインの問題を解決し、クロスドメインのケース スタディを実現します。

1. クロスドメインを実現するためにCORSレスポンスヘッダーを設定するクロスオリジンリソース共有...

別の種類の「キャンセル」ボタン

「キャンセル」ボタンは必要な操作プロセスの一部ではなく、デザイン上の主要な要素として表示されません...

MySQL 8.0.17 インストール グラフィック チュートリアル

この記事では、参考までにMySQL 8.0.17のインストールグラフィックチュートリアルを紹介します...

JavaScript Alert関数の実行順序の詳細な説明

目次質問分析する解決するAlert() 関数を置き換えるsetTimeOut関数まとめ質問数日前、J...

Vuex はシンプルなショッピングカート機能を実装します

この記事の例では、ショッピングカート機能を実装するためのvuexの具体的なコードを参考までに共有して...

jsを使って簡単な計算機を作る

この記事では、jsで簡単な計算機を作成する具体的なコードを参考までに共有します。具体的な内容は次のと...

Linuxのtimeコマンドの使い方の詳しい説明

1. コマンドの紹介時間は、コマンドの実行に費やされた時間や関連するシステム リソース、その他の情報...

Centos7 DockerでNginxファイルを変更するプロセスの詳細な説明

1. docker に nginx をインストールします。 docker に Nginx をインスト...

MySQL 実践演習 シンプルなライブラリ管理システム

目次1. ソート機能2. データベースを準備する3. データベースに関連するエンティティクラスの構築...

MySQL の order by ステートメントの最適化方法の詳細な説明

この記事では、ORDER BY文の最適化について学びます。その前に、インデックスの基礎的な理解が必要...