CentOS5.0&zabbix1.4.2での動作不具合?
KAZと申します。
現在、CentOS5.0とCentOS4.4にてzabbix1.4.2を検証中なのですが、CentOS5.0上のzabbixの動作が少々おかしく思えます。
検証環境
CentOS4.4 / zabbix_server1.4.2 / zabbix_agentd1.4.2
CentOS5.0 / zabbix_agentd1.4.2
事象
CentOS5.0でzabbix_getを実行すると画面に値が取得されない。
CentOS4.4でzabbix_getを実行すると画面に値が取得される。
実行コマンド
./zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k proc.num[klogd,root]
CentOS5.0の場合は、1行画面がスクロールする。
CentOS4.4の場合は、klogdが動いていれば「1」(動いてる数)を動いていなければ「0」を表示する。
現在、確認中ですが当事象について情報がございましたら御教授願いたく。
KAZ - 投稿数: 1085
KAZです。
追加情報です。
net.tcp.port[《ip address》,《port》]の監視もおかしいようです。
うまく値を取得してくれません。(確認はssh:port 22を使用)
以下、現在までの確認状況を整理しました。
・CentOS 5.0側でzabbix_agentdを-tオプションを指定しコマンドラインからnet.tcp.port[《ip address》,《port》]を実行すると値が取得できる。
・CentOS 4.4(zabbix server側)からzabbix_getでCentOS 5.0側のzabbix agentdのIP & portを指定しnet.tcp.port[<ip address>,<port>]を実行すると値が取得できる。
・アイテム登録後にzabbix serverとagentdを全て停止させ、server→agentdの順で起動すると1回のみ値を取得する。(その後の値が更新されない)
また、agentdのみの再起動、serverのみの再起動、zabbix serverとagentdを全て停止させ、agentd→serverの順で起動した際は、値は更新されない。
kodai - 投稿数: 1341
インストールはどのようにされたのでしょうか。
ソースからコンパイルされたのであればConfigureのオプションを、どこかのRPMパッケージを使われたのであれば、そのRPMへのリンクを教えて頂けるでしょうか。
KAZ - 投稿数: 1085
kodai様、お手数かけます。
KAZです。
現在、情報取得は可能になりました。
zabbix_server(CentOS4.4)側からzabbix_getにて(CentOS5.0の)情報が取得に問題が無かったので、フロントエンドのアイテム・トリガー設定を全て設定しなおすことを思いつき、全てホストのアイテム・トリガーを再設定後、server・agentdを再起動。
その後、確認したら(アイテム登録の内容は変えてないのに)情報が取得できていました。
※:何がどうなったやら…あやふやですいません。
疑問なのはnet.tcp.port[IP ADDRESS,port]がフロントエンド上取得できない時、同じホスト上でproc.num[name,user]は取得できていました。監視間隔は双方とも30秒で設定変更後、最長1時間は待ちましたがnet.tcp.port[IP ADDRESS,port]で値は取得できませんでした。
また、別ホスト(CentOS4.4)ではnet.tcp.port[IP ADDRESS,port]で値が取得できていました。
取り合えず、何か分かりましたら報告させて頂きます。
CentOS5.0でzabbix_getが取得できない件は未解決なのですが、当方今のところCentOS5.0上でzabbix serverを立てる可能性が低いので、取り合えず優先順位を下げて調査をしようかと思っております。
ちなみに、インストールはコンパイルしております。
configure --enable-agent
kodai - 投稿数: 1341
いつも情報ありがとうございます。
こちらでも試してみました。
<code>zabbix_get -s 10.211.55.4 -p 10050 -k proc.num[klogd,root]
zabbix_get -s 127.0.0.1 -p 10050 -k net.tcp.port[127.0.0.1,22]</code>
ともに"1"が返り正常に動作しているようです。
環境は
<ul><li>CentOS 5.0</li><li>ZABBIX 1.4.2</li></ul>です。
インストールはFedoraのzabbix-1.4.2-2.srpmのSPECファイルを利用して作成したRPMで行いました。
ZABBIXサーバから取得できるかどうかは試していませんが、ひとまずzabbix_getで取得できたのでご報告しておきます。
KAZ - 投稿数: 1085
返信ありがとうございます。
>インストールはFedoraのzabbix-1.4.2-2.srpmのSPECファイルを利用して作成したRPMで行いました。
お恥ずかしい質問をしてしまいますが、Fedoraのzabbix-1.4.2-2.srpmはどこで手に入りますでしょうか?
当方でも試してみたいと思いますので御教え願いたく。
kodai - 投稿数: 1341
Fedoraのzabbix-*.srpm関連のファイルは以下からダウンロードできます。
<ul><li><a href="http://ftp.jaist.ac.jp/pub/Linux/Fedora/updates/7/SRPMS/zabbix-1.4.2-2.fc7.src.rpm">zabbix-1.4.2-2.fc7.src.rpm</a></li><li><a href="http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/8/Everything/source/SRPMS/zabbix-1.4.2-3.fc8.src.rpm">zabbix-1.4.2-3.fc8.src.rpm</a></li></ul>
また、上記のFedora7のspecファイルを利用してCentOS 5で作成したrpmファイルを以下に置いておきました。
<ul><li><a href="http://www.zabbix.jp/files/RPMS/CentOS5/zabbix-1.4.2-2.i386.rpm">zabbix-1.4.2-2.i386.rpm</a></li><li><a href="http://www.zabbix.jp/files/RPMS/CentOS5/zabbix-web-1.4.2-2.i386.rpm">zabbix-web-1.4.2-2.i386.rpm</a></li><li><a href="http://www.zabbix.jp/files/RPMS/CentOS5/zabbix-agent-1.4.2-2.i386.rpm">zabbix-agent-1.4.2-2.i386.rpm</a></li></ul>
KAZ - 投稿数: 1085
kodai様ありがとうございます。
早速、zabbix-1.4.2-2.fc7.src.rpmの中を確認したところ、下記の2つのpatchが入っておりました。
zabbix-1.4.2-cpustats.patch
zabbix-1.4.2-include.patch
当方の環境に上記のpatchを適用して確認を進めたいと思います。
KAZ - 投稿数: 1085
返信遅くなりました。
当方CentOS5.1 (Xen Host) / CentOS4.5 (Xen Guest)で検証を進めることになりました。
zabbix-1.4.2-cpustats.patch
zabbix-1.4.2-include.patch
上記パッチをしない状態でzabbix_server、zabbix_agentdともに正常に動作しております。
(前回の動作がどうして起きたのか謎です。)
※:zabbix_getはやはり空白を返却するのですが当方での使用頻度が少ないので今回は調査を断念致します。
お騒がせ致しました。
kodai - 投稿数: 1341
私もそれぞれのパッチを見てみましたが、今回の件とは直接関係なさそうに見えました。
zabbix_getはこちらでも注意してみておこうと思います。何か情報があれば、ぜひ頂ければと思います。
amidaku - 投稿数: 3
はじめまして。あみだくと申します。
さて、本件その後同じような現象が起きた方はいらっしゃらないでしょうか。
実は当方、昨日同じような現象になりました。
何台かZABBIXを設定させていただいていますが、はじめてです。
Server:CentOS5.2
Agent:Vine3.2
どちらも1.4.6を使用してます。
現在お客様のところで試験導入のため構築中ですが、
ほとんどのアイテムは正常にデータが取得できるのですが、
数項目だけ取得ができません。
たとえば、net.if.out[eth0,bytes]は取得できるのに、net.if.in[eth0,bytes]は取得できません。
Serverの自分のagentからも同じように取得ができません。
また、Serverについてはこの間まで、別の機器(Vine4.2)でServerを使用して正常に動作していたことを考えると、
Agent側では無く、Server側に問題があるような気がします。
客先なのでログの持ち帰りの準備をしていなくログやconfなどが
ありませんが、ログレベルを変えてみたところ、アイテムの取得
をしていないような感じでした。
(ログにnet.if.outはあるのにnet.if.inは無い)
明日、ホストの設定など入れなおしてやってみる予定ですが、
ちょっと気味が悪く、Postしました。
同じようなご経験がありましたら、教えてください。
kodai - 投稿数: 1341
こんにちは。
問題があるエージェントが動作しているOS上で、以下のコマンドを事項するとどのように出力されるでしょうか。
net.if.in[eth0,bytes] [u|766739009]
というように数値が表示されれば、エージェント側では問題なくデータが収集できるということです。
amidaku - 投稿数: 3
kodai様
OSのプロンプトから、
$ zabbix_agent -c /etc/zabbix/zabbix_agentd.conf -t net.if.in[eth0,bytes]
というような感じで実行でよいですか。
(パーミッション等は別として)
kodai - 投稿数: 1341
はい、そのコマンドでOKです。
amidaku - 投稿数: 3
あみだくです。
昨日いろいろやってみました。
まず、エージェントホストで、
$ zabbix_agent -c /etc/zabbix/zabbix_agentd.conf -t net.if.in[eth0,bytes]
$ zabbix_agent -c /etc/zabbix/zabbix_agentd.conf -t net.if.out[eth0,bytes]
$ zabbix_agent -c /etc/zabbix/zabbix_agentd.conf -t net.if.in[lo,bytes]
$ zabbix_agent -c /etc/zabbix/zabbix_agentd.conf -t net.if.out[lo,bytes]
をやってみましたが、どちらのホストでも問題なく数値取得が可能でした。
ログを持ち帰ることはできなかったのですが、net.if.out[eth0,bytes]のクエリなどはログに残ってますが、net.if.in[eth0,bytes]については全くログに文字がありませんでした。
ホストをすべて削除し、再度登録したのですが、状況に変化はありませんでした。
おそらくfrontendでもエージェントでも無いと思うのですが、サーバコンパイルもやり直して同じ状況でした。
このままでは先に進みませんので、やり直しということでDBを変えました。
個人的にPostgreSQLの方が慣れていたのでこっちでやっていましたが、MySQLに変更してみました。
(一般的にはこちらでしょうが)
結果として、正常に動作しています。
ただPostgreSQLの問題とは考えていません。
CentOSにする前、Vine4.2でサーバを作っていた時もPostgreSQLでしたが、問題は起きていませんでした。
(HDDの物理的な故障で機種を変更し、ついでにOSも変えました)
他のお客様のところでもPostgreSQLで動かした経験もありますので、PostgreSQLが悪いとは思えません。
原因がはっきりしませんでした。残念ですが結果報告です。