Zabbix動的実行監視収集スクリプトの実装原理

Zabbix動的実行監視収集スクリプトの実装原理

Zabbix カスタム スクリプトを使用して監視データを収集する場合、通常、次の問題が発生します。

  • サーバー容量を拡張した後、新しいサーバーに監視スクリプトを展開するにはどうすればよいですか?
  • 監視スクリプトを変更する必要がある場合、すべての同一の監視スクリプトを自動的に変更するにはどうすればよいですか?
  • サーバーの異常による損失を避けるために、監視および収集スクリプトをバックアップするにはどうすればよいですか?
  • カスタム監視を導入する際に、システム管理者による過剰な操作を回避するにはどうすればよいでしょうか?
  • 大規模な研究開発を行わずに上記の問題をどのように解決できるでしょうか?

実装原理: ファイル サーバーを使用して監視スクリプトを統一的に保存および管理し、一般的なスクリプトを zabbix エージェントに事前に埋め込み、zabbix サーバーによって送信されたキーとパラメーターに従ってファイル サーバーからスクリプトをプルし、実行後にデータを返します。

建築設計:

ここに画像の説明を挿入

具体的な実装:

1. nginxを例にファイルサーバーを構築する

nginxの設定を変更して再起動します

サーバー
    8080を聴く;
    サーバー名zabbix;
    ルート /usr/local/static/;
    位置 / {
      自動インデックスオン;
      autoindex_exact_size をオン;
      autoindex_localtime をオン;
      文字セット utf-8;
    }
  }

2. ファイルの取得と実行のためのスクリプトを書く

url="http://192.168.24.108:8080/" #ファイルサーバーのURLを定義する
親ディレクトリ="/usr/local/zabbix/bin/zabbix_script" 
file_directory=$parentDir/$1 #スクリプトがローカルに保存されているディレクトリを定義 file_name=$2 #スクリプト名 file_path=$1/$2 #ファイルサーバーのスクリプトパスに参加 if [ ! -d $file_directory ];then #ファイルディレクトリが存在するかどうかを判断 mkdir -p $file_directory
フィ

if [ ! -f $parentDir/$file_path ];then #スクリプトが既に存在するかどうかを判断 wget -P $file_directory $url$file_path 2>>log
フィ

タイムスタンプ=$(日付 +%s)
ファイルタイムスタンプ=$(stat -c %Y $parentDir/$file_path)
if [ $[$timestamp - $filetimestamp] -gt 3600 ];then #現在の時刻とスクリプトの変更時刻の差を判断し、3600秒ごとに更新します wget $url$file_path -O $parentDir/$file_path 2>>log #スクリプトを上書きします touch -c $parentDir/$file_path #スクリプトの変更時刻を変更します fi
python $parentDir/$file_path $3 #スクリプトを実行する

3. zabbixの設定ファイルを追加する

ユーザーパラメータ=requests_file[*],sh /usr/local/zabbix/bin/zabbix_script/requests_file.sh $1 $2 $3

4. Zabbixエージェントを再起動する

5. テストスクリプトを記述し、ファイルサーバーの指定されたディレクトリにアップロードします。

#サーバー接続数を監視#!/usr/bin/python
パスワードをインポートする
os、sysをインポート
輸入再
インポートグロブ
状態 = sys.argv[1]

cmd = "netstat -an | grep " + 状態 + " | wc -l"
os.system(コマンド)

6. Zabbix ページの監視項目を設定します。

ここに画像の説明を挿入

7. データが正常かどうかを観察します。

ここに画像の説明を挿入

8. 新しい監視スクリプトはファイルサーバーの後に配置され、構成ページの監視項目を直接構成してデータ収集を行うことができます。

ここに画像の説明を挿入

この記事では、Zabbix でカスタム監視スクリプトを集中管理するためのソリューションを提供することに焦点を当てています。このアイデアに基づいて、Zabbix の使用を自由に拡張して、より簡潔で効率的にし、運用と保守をさらに簡素化できます。

参考リンク:

Zabbix はどのようにして監視収集スクリプトを動的に実行するのか: https://mp.weixin.qq.com/s/ikuCSYhlFdtiAmt7epskWw

Zabbix 動的実行監視および収集スクリプトの実装原理に関するこの記事はこれで終わりです。Zabbix 動的実行監視および収集スクリプトの関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Zabbix WEB 監視実装プロセス図
  • Zabbix で監視項目と集約されたグラフを設定するためのサンプルコード
  • Zabbix を使用して Nginx/Tomcat/MySQL を監視する方法の詳細なチュートリアル
  • Zabbix カスタム監視 nginx ステータス実装プロセス

<<:  Vueコンポーネント化の基本的な使用方法の詳細

>>:  Web デザインのための 5 つのシンプルな XHTML Web フォーム

推薦する

フォーム要素属性の読み取り専用と無効の使用の比較

1) 適用範囲:読み取り専用:input[type="text"],input[...

Nginx 構成検出サービスのステータスを実装する方法

1. チェックステータスモジュールがインストールされているかどうかを確認します。 [root@loc...

Vueエンジニアがカプセル化しなければならない埋め込み命令の知識のまとめ

目次序文指導の基本フック機能フック関数のパラメータ文章使い方とアイデア成し遂げる汎用性を高める要約す...

vue プロジェクトのデプロイと Nginx でのプロキシ設定の問題の分析

1. nginxをインストールして起動する # nginxをインストールする sudo apt-ge...

xshell を使用して VMware で Linux に接続する方法 (2 つの方法)

【序文】最近、ITOO の試験システムのストレステストを行いたいので、自分のコンピュータに Lin...

ローカル画像サーバーのNginx構成の実装

目次1. Nginx の紹介2. 画像サーバーの構築1. Nginx の紹介Nginx はリバース ...

一般的なブラウザのユーザーエージェントの概要

1. 基礎知識: HTTP ヘッダー ユーザーエージェントユーザー エージェントは、ユーザー エージ...

Linuxで中断されたシステムを呼び出す方法

序文低速システム コールとは、決して戻らない可能性があり、プロセスを永久にブロックするシステム コー...

Docker ケース分析: Redis サービスの構築

目次1 マウントディレクトリとファイルを作成する2 Redisイメージを取得する3 コンテナを作成し...

JavaScript でグレイウルフのポットビーティングゲームを実装

1. プロジェクト文書 2. ページレイアウトにHTMLとCSSを使用するHTML部分 <di...

Mysql SQL ステートメントのコメント

MySQL SQL ステートメントにコメントを追加できます。MySQL SQL ステートメントのコメ...

Nodejs 組み込み暗号化モジュールを使用してピアツーピアの暗号化と復号化を実現する詳細な説明

暗号化と復号化は、通信のセキュリティを確保するための重要な手段です。すでに多くの暗号化アルゴリズムが...

CSS3 テキストアニメーション効果

効果 html <div class="sp-container">...

検索ナビゲーションバー付きの CSS サンプルコード

この記事では、CSS を使用して検索機能付きのナビゲーション バーを作成する方法を説明します。以下の...