スマートパラメータまたは任意の温度(CPU、マザーボード)の監視をZabbixに固定します

実際、温度の監視をzabbixに固定する方法に関する記事はたくさんありませんでしたので、自分で書くことにしました。



タスク1。

監視システムzabbix 1.8.2がインストールおよび設定されています。 Linuxサーバー(debian)のハードドライブ(またはその他のスマートパラメーター)の温度監視を固定する必要があります。

行こう

1. smartmontoolsパッケージをインストールします。

2.チーム

smartctl --all /dev/sdX
      
      





すべてのスマートパラメータを表示し、そこで温度値を探します。

3. Temperature_Celsiusというパラメーターがあります。

4.次に、smartctlコマンドの出力から温度値を選択します。 これは1行で実行できますが、問題はzabbix-agentがzabbixユーザーからこのコマンドを実行し、root権限が必要なことです。 もちろん、zabbixユーザーをsudoersに追加することもできますが、スクリプト実行を追加しただけです

 #!/bin/sh #get temperature of HDD and save it into temporary file /user/sbin/smartctl --all /dev/sdX | grep Temperature > /tmp/smart
      
      





起動頻度が15分のcrontabで(もちろん、15分ごとにsyslogエントリに負担がかかるので、やり直すことができます)。

5.ここで、ファイルの最後の3バイトのみを選択するzabbixエージェント設定にユーザーパラメーターを追加します(grepの後、最後の2文字がハードドライブの温度である行が得られ、3番目の文字はおそらく行の終わりです)

UserParameter = smart_ct、tail -bytes 3 / tmp / smart


zabbix-agentデーモンを再起動します。

また、エージェントの構成にUnsafeUserParameters = 1を追加しない場合、コマンドで文字が許可されないことを忘れないでください:\ '"` *? [] {}〜$! &; ()<> | #@。

6.宣誓のエージェントのログを確認します。 パラメータが機能するかどうか、zabbixサーバーで確認

 zabbix_get -s hostname -p 10050 -k “smart_ct”
      
      





7.さて、それは技術の問題です。新しいデータ要素をホスト、トリガー、そして実際にはzabbixウェブフェイスからすべて追加します。

副作用-このようにサーバールームの温度を調べます。

タスク2

監視システムzabbix 1.8.2がインストールおよび設定されています。 Linuxサーバー(debian)のシステムボード(プロセッサ、メモリなど)の温度監視を固定する必要があります。 キーセンサー[temp1 | 2 | 3]を備えた最初の組み込みデータ要素は、それらがサポートされていないことを記述します。

行こう

1. lm-sensorsパッケージをインストールします。

2.チームを実行する

 sensors
      
      





ほとんどの場合、sensors-detectに送信されます。

3.起動

 sensors-detect
      
      





最後の回答を除くすべての質問はい。 サポートされている腺がある場合、(私の場合)次のようなものが表示されます

必要なものをすべてロードするには、これを/ etc / modulesに追加します。

#----ここでカット----

#チップドライバー

coretemp

f71882fg

#----ここでカット----


太字はカーネルモジュールであり、/ etc / modulesに追加することがさらに推奨されます。 しかし、それらを個別に試してみたいので、「いいえ」と答えて、modeprobeを使用します。

4.モジュールをロードします。coretempをロードした後、sensorsコマンドは何も返さなかったため、アンロードしてf71882fgロードしました 。 現在、sensorsコマンドは、クーラーの回転速度やMPの温度など、必要なものと必要でないものをすべて表示します。 目的の温度を選択すると、センサーから次の出力が得られます

temp3 +45


5. sensorsコマンドにはルート権限が必要ないため、zabbixエージェントにユーザーパラメーターを追加します

UserParameter = temb_mb、/ usr.bin / sensors | grep 'temp3' | カット-f 2 -d + | grep -Eo '^ ..'


ここで、正規表現を少し覚えておく必要がありました。その結果、ラインから温度を抽出するための設計ができました。 簡単にできると確信していますが、十分な経験はありません。 また、UnsafeUserParameters = 1という行をエージェントの構成に追加します(上記に記述した理由)。 zabbix-agentデーモンを再起動します。

6.エージェントのログで宣誓を確認し、パラメーターがzabbixサーバーで機能するかどうかを確認します

 zabbix_get -s hostname -p 10050 -k “temp_mb”
      
      





7.さて、それは技術の問題です。新しいデータ要素をホスト、トリガー、そして実際にはzabbixウェブフェイスからすべて追加します。

センサーコマンドが表示するパラメーターの数は、当然ハードウェアによって異なります。 誰かが最初にzabbixに組み込まれた温度監視データ要素を実行する可能性がありますが、私は運が悪いです...



All Articles