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

推薦する

Web フォームの入力要素の高度な使用例 11 選

1. ボタンが押されたときに点線のボックスをキャンセルする<br />入力に属性値hid...

純粋な CSS3 で水平無限スクロールを実装するためのサンプル コード

この記事の例はすべて小さなプログラムで書かれていますが、実装される機能には影響しません。 wxmlル...

jsを使用してシンプルな虫眼鏡効果を実現します

この記事では、簡単な虫眼鏡効果を実現するためのjsの具体的なコードを参考までに共有します。具体的な内...

Vue+echarts でプログレスバーのヒストグラムを実現

この記事では、プログレスバーヒストグラムを実現するためのvue+echartsの具体的なコードを参考...

Dockerスペースがいっぱいでコンテナに入れない場合の解決策

トラブル発生が突然で、業務も迫っていたため、現場のスクリーンショットを撮る時間がありませんでしたので...

Linux にソフトウェアをインストールするときにソフトウェア パッケージが存在しない問題を解決する方法

ソフトウェア パッケージが存在しない場合は、インストールされているソフトウェアのソフトウェア ソース...

MySQL 5.7 のユニオンオール使用法のブラックテクノロジーを 5 分で学ぶ

MySQL 5.6 での union all のパフォーマンスパート 1:MySQL 5.6.25 ...

JavaScript ウェブページ入門開発詳細説明

パート3: ❤バックエンドデータ受信を見落とす3つの方法❤ (おすすめ集)パート 2: Web フォ...

IE6 で幅と高さがおかしいバグ

図に示すように: しかし、IE6で表示すると、right:1px:になります。 IE6 には、幅と高...

Zabbix Agent2を使用してOracleデータベースを監視する方法

概要zabbix バージョン 5.0 以降では、zabbix-agent2 という新しい機能が追加さ...

Centos7でポートを開く方法

CentOS7 のデフォルトのファイアウォールは iptables ではなく、firewalle で...

Vueバインディングオブジェクトと配列変数を変更した後にレンダリングできない問題の解決策

プロジェクトシナリオ:ページ表示には <ul> タグがあります。リストデータを動的に表示...

Vue.set() と this.$set() の使い方と違い

開発に Vue を使用する場合、次のような状況に遭遇することがあります。Vue インスタンスを生成し...

MySQL クラスター化インデックスのページ分割原理の分析例

この記事では、MySQL クラスター化インデックスのページ分割を例を使って説明します。ご参考までに、...

Vmware での Ubuntu サーバーのインストール チュートリアル

この記事では、Ubuntuサーバーバージョンのインストールグラフィックチュートリアルを参考までに紹介...