Zabbix agent system.runについて
皆さま
初めまして
テンプレート「NTP accuracy Template Japanese」を用いて
NTPサーバの監視を行ないたのですが、正常に動作しません。
https://share.zabbix.com/cat-app/ntp/ntp-accuracy-template-japanese
Server側から
zabbix-getしたところ 下記が値が帰ってきました。
$zabbix_get -s 192.168.251.40 -k 'system.run[ntpq -p|grep \* |awk '{print$3}']'
*ntp-a3.nict.go. .NICT. 1 u 917 1024 377 12.328 0.017 0.238
$
NTP Server側でコマンドを実行すると、期待する値が帰ってきました。
$ntpq -p|grep \* |awk '{print$3}'
1
$
環境は下記になります。
Zabbix Server側
Centos 6.7 64bit
zabbix-server 2.2.11
zabbix-get 2.2.11
NTP Server側
CentOS 6.7 64bit
zabbix-agent 2.2.11
ntp-4.2.6p5-5.el6.centos.2.x86_64
以上宜しくお願い致します。
TNK - 投稿数: 4742
zabbix_getコマンドの引数が適切ではありません。
シングルコーテーションできちんと括られていないので、本来の
引数を引き渡せていない状態だと思います。
Zabbixのアイテムとして登録して確認してみてください。
もしくは、zabbix_getの引数内のメタキャラクタをシェルなどで
解釈されてしまわないよう対策して実行してみてください。
tonakai - 投稿数: 19
TNK様
コメントありがとうございます。
キーとして下記を登録していますが、値が取れない状況です。
system.run[ntpq -p|grep \* |awk '{print$9}']
zabbix_getコマンドですが、
$ zabbix_get -s 192.168.251.40 -k 'system.run[ntpq -p|grep \* |awk {print\$9}]'
とすることで実行できました。
以上よろしくおお願い致します。
TNK - 投稿数: 4742
値が取れないというのは、何がどうなっている状態であるのか、
より具体的にお教えください。
最新データの表示はどうなっていますか?
ホストのアイテム一覧を表示されたときの右端に赤い×マーク
があるなら、そこにマウスのポインタを移動させて何のエラーが
でているのかを確認してください。
あと、zabbix_getを利用して値が取得できるまでにかかった時間
はどの程度であったかもお教えください。
tonakai - 投稿数: 19
TNK様
最新データですが、
最新のチェック時間、最新の値ともに、空白です。
情報は、緑のチェックです。
zabbix_getコマンド実行時の値が表示されるまでの遅延ですが、
即時表示です。
以上よろしくお願い致します。
TNK - 投稿数: 4742
CentOS 6.7 + Zabbix 2.2.11の環境を構築して確認してみました。
Zabbix Shareで公開されているテンプレートをインポートして、そ
の中の「NTPテンプレート」をホストに紐づけるだけで各値が取得
できました。
tonakaiさんも「NTPテンプレート」を利用されているのですよね?
Zabbixサーバ上から監視対象の値をzabbix_getで値が取得できてい
て、ホストのアイテムのステータスが有効でエラーにもなっていな
いのであれば、あとはホストの設定に誤りがあるかホストのステー
タスが有効ではない状態なのではないでしょうか?
ホスト一覧で、対象のホストのステータスなどを確認してみてくだ
さい。
あと、他のアイテムの値は取得できていますか?
Zabbixサーバのログにも何か出力されていないかも確認してみてく
ださい。
tonakai - 投稿数: 19
TNK様
ホストステータスは有効でした。
また、該当ホストにTemplate App Zabbix Agentも適用しているのですが、
正常に値を取得できています。
NTPテンプレートの
proc.num[ntpd]
は取得出来ています。
Zabbix Server側のログは出力されていませんでした。
以上宜しくお願い致します。
zinten - 投稿数: 69
tonakaiさん
間違ってたらごめんなさい。
ZabbixエージェントのconfのUnsafeUserParametersの値はどうなってますか?
0になっていたら1に変更してみてください。
たしか$が引っかかったような…
それと一旦awkを外して実行してみるなどすると原因が追いやすいと思います。
TNK - 投稿数: 4742
Zabbix Shareにある「NTP accuracy Template Japanese」を私も手
元の環境にインストールしてみましたが、ダウンロードできるテン
プレートのうち「NTPテンプレート」に関しては、
EnableRemoteCommands=1
だけで、UnsafeUserParametersの設定はしなくても値が取得できて
います。
テンプレートとして、「NTPテンプレート(リモート)」を利用す
る場合は、{$NTP_IP}というホストマクロが追加されるだけなので、
こちらもUnsafeUserParametersの設定はしなくてもよさそうです。
zabbix_getでZabbixサーバ側から値が取得できていて、他のZabbix
エージェントを利用したアイテムの値が取得できるのであれば、
NTPテンプレートを紐づけるだけで値は取得できます。
ホストの状態もアイテムの状態にも異常がなく、ログに何も出力さ
れていないのであれば、値は取得されているはずなのですが...。
ちなみにNTPテンプレートで指定されているものにより近いキーで
値を取得するコマンドラインとしては、以下のようなコマンドライ
ンで確認できます。
# zabbix_get -s 192.168.251.40 -k "system.run[ntpq -p|grep \\* |awk '{print\$3}']"
# zabbix_get -s 192.168.251.40 -k "system.run[ntpq -p|grep \\* |awk '{print\$9}']"
tonakai - 投稿数: 19
zinten様
TNK様
zabbix agent側の設定ですが、下記を設定しています。
EnableRemoteCommands=1
UnsafeUserParameters=1
server側から
# zabbix_get -s 192.168.251.40 -k "system.run[ntpq -p|grep \\* |awk '{print\$3}']"
を実行したところ、値を取得できました。
また
一旦awkを外してアイテム設定をしましたが、
値が取得できません。
以上宜しくお願い致します。
TNK - 投稿数: 4742
「NTPテンプレート」を利用されているのであれば、一度、その
ホストから外して保存し、そのホストのアイテムとしてなくなった
ことを確認してから、再度、テンプレートを追加しなおしてみて
頂けませんか?
tonakai - 投稿数: 19
皆様
解決しました。
アイテムのタイプを
zabbixエージェント(アクティブ)
->変更
zabbixエージェント
としたところ、値が取れるようになりました。
本来は
zabbixエージェント(アクティブ)
でも正常に動作するものなのでしょうか?
以上宜しくお願い致します。
TNK - 投稿数: 4742
動きます。
動かないのであれば、その環境はアクティブチェックができない環
境です。
Zabbixエージェント側のログは確認されましたか?
Zabbixエージェントの設定で、ServerActiveの設定は行われました
か?
Zabbixエージェント(アクティブ)なアイテムやログ監視などを行う
のであれば、アクティブチェックができるような環境設定が必要で
す。
これらのアクティブチェックのためには、Zabbixエージェントから
Zabbixサーバに対して、デフォルトであればポート番号10051で接
続できるようにすることが必要ですし、Zabbixエージェント側の設
定で、ServerActiveという設定項目に、ZabbixサーバのIPアドレス
を指定することが必要です。
tonakai - 投稿数: 19
TNK様
ServerActiveの設定が漏れていました。
設定後、zabbixエージェント(アクティブ)に設定を戻し
動作致しました。
ありがとうございました。