zabbix_get で空行が返る。。

やりたいこととしては、zabbix_get を使ってsystem.runでコマンド実行されている確認となります。
zabbix-agentも起動しているzabbixサーバで実行したところ空行が返ってきました。
リモートのzabbix-agentが入ってるサーバに対して実施した結果も同様でした。
zabbix_agentd.confに以下の設定は入っております。
EnableRemoteCommands=1
LogRemoteCommands=1
その他環境としては:
zabbix(server,agent) 2.0.5
OS CentOS5.4

[root@zabbix_server]# zabbix_get -s localhost -k system.run["echo hello"]

[root@zabbix_server]# zabbix_get -s localhost -k"system.cpu.load[,avg5]"

わかりづらいですが、空行が返ってきております。

以上よろしくお願いします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー maco の写真

server,agent共にdebugレベルで上げ直して、同じコマンド実行しましたが、
ログをsystem.runでgrepしても何も出てないです。
これはそもそもログに出てないこと自体が問題ですかね。

ユーザー TNK の写真

/etc/zabbix/zabbix_agentd.confのServerの値はどうなっていますか?

 Server=127.0.0.1

になっていたら、

 # zabbix_get -s 127.0.0.1 -k agent.version

みたいに、IPアドレスで指定して実行してみてください。

ユーザー maco の写真

以下のように改行が返ってきました。
設定にはeth0に振ってあるIPしかありませんでしたが、127.0.0.1も追記してプロセスリスタートしました。

[root@s13-soc-stg-pat-test01 yum.repos.d]# cat /etc/zabbix/zabbix_agentd.conf | grep Server=
# Server=
Server="127.0.0.1","10.**.**.**"
[root@s13-soc-stg-pat-test01 yum.repos.d]# zabbix_get -s 127.0.0.1 -k agent.version

ユーザー TNK の写真

ダブルクォーテーションを利用せずに、

 Server=127.0.0.1,10.**.**.**

のように設定してZabbixエージェントを再起動してみてください。

ユーザー maco の写真

ポートは空いているようです。zabbixサーバでのコマンド結果となります。
[root@zabbix_server]# netstat -an | grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN
tcp 0 0 :::10050 :::* LISTEN
[root@zabbix_server]# netstat -an | grep 10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:44104 127.0.0.1:10051 TIME_WAIT
tcp 0 0 127.0.0.1:44124 127.0.0.1:10051 TIME_WAIT

ユーザー maco の写真

五月雨で恐縮です。
他のサーバ(zabbixのクライアント)に対してはsystem.run[echo hello]でうまくいきました。helloが返りました。
どうやらサーバ(zabbixサーバ)に対してだけの問題のようでした。
サーバだけであればそれほど問題ないので、一旦コンフィグ等を見直してみます。
お騒がせしました。

ユーザー TNK の写真

検索でこられた方用に解説を追記しておきます。

Zabbixエージェントは、zabbix_agentd.confのServerに記述したサ
ーバからからのみ、値取得の要求を受け付けます。

他のIPアドレスから来た要求には、空行のみ返却して値を返却しま
せん。

質問者は最初、Serverに10.**.**.**という値を設定していたのだ
と思います。
その状態で、zabbix_getの引数で-s localhostとされていたので、
127.0.0.1にアクセスしようとし、その際には、ソースのIPアドレ
スも127.0.0.1になってしまい、zabbix_agentd.confのServerに書
かれたIPアドレスからの要求ではないため、空行を返却したので
しょう。

その後、

 Server="127.0.0.1","10.**.**.**"

と設定されたようですが、ここで、ダブルクォーテーションでくく
る必要はありません。
むしろ、それが邪魔して値を取得できません。

ということで、Zabbix serverのZabbix上のホスト情報として、外
部ネットワークからアクセスするIPアドレスで管理、監視する場合
は、zabbix_agentd.confのServerには、外部のIPアドレスを指定し
てください。
そして、値取得を試すときは、-sの後ろは、その外部のIPアドレス
を指定して確認してください。

ループバックのIPアドレス(127.0.0.1)を利用する場合は、Server
の値に127.0.0.1を指定してください。
カンマ区切りで複数指定することもできます。

ユーザー maco の写真

補足の方ありがとうございました。
参考にさせて頂きます。
今後ともよろしくお願いします。