複数ZabbixServerによるTemplate App Zabbix Serverを用いた相互監視について

お世話になっております。

表題のZabbixServerが複数ある環境における相互監視について質問させてください。

監視設定内容が同じZabbixサーバーを2台構築し、監視を二重化するような環境を想定しています。

こうした環境でZabbixサーバー#1から#2の、Template App Zabbix Serverテンプレートで取得できるような
ZabbixServerプロセス情報を取得したいと考えております。(各種キャッシュやポーリングプロセス使用率など)
Template App Zabbix ServerテンプレートではローカルのZabbixServerプロセス情報しか参照できないので
#1から#2のような、自分以外のZabbixの情報は取得できないと認識しています。

何か代替の方法でZabbixServerプロセスの情報を取得する方法をご存じないでしょうか。

コメント表示オプション

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

あまり細かい情報は取れないと思います。
取れるとしたらこのくらいですかね(全く試していませんが・・・)。

・zabbix_server のプロセス数なら proc.num[zabbix_server] を監視すればいいです。
・もうちょっと細かく分けて数えるなら proc.num[,,,"zabbix_server: poller"] みたいにすればいいんじゃないでしょうか(poller に相当する部分は ps -ef で確認)。
・メモリであれば proc.mem[略] が使えそうです。
・エージェントからの通信(Zabbixトラッパー)を受け付けているか(10051番ポートで待ち受けているか)は net.tcp.listen[10051] で確認できます(それを外から調べるなら net.tcp.service を使う手もあります)。

ユーザー heya の写真

少し追記します。

ただ、そこまで細かく見てどうするの?という気もします。
相互監視ということは、片方が落ちたときも問題なく監視を継続したい、ということでしょうが、Zabbix サーバーが落ちたときにその Zabbix サーバーの情報なんて取りようが無いし、動いてないプロセスの CPU 使用率とか、意味ないですよね?
#落ちる直前がどうだったかは、自分で収集しているだろうし。
せいぜいプロセスが動いているかどうか(proc.num が 1 以上か 0 か)くらい見れば十分な気がします。

Zabbix サーバーの情報って、「リソースが足りているか」「ボトルネックはどこか」などといったことを調べる目的のものだろうから、それなら自分自身で収集するだけで十分だと思います。

ユーザー sachi の写真

heyaさん、返信ありがとうございます。
やはりagentのproc.num等で取得する方法しか無いですよね・・・

障害時のリストアのし易さの観点からZabbix #1,#2は極力同じ構成にしたいと考えています。
(片方が壊れた際、生きている方のDBをリストアして復旧)

Zabbix#1,#2 共にagentで取得できる情報だけに絞って監視すれば
上記の構成は満たせるのですが、出来るならTemplate App Zabbix Serverにあるようなレベルの
情報を両サーバーで収集、監視したいなと思い質問させていただいた次第です。

背景を十分説明しておらずすいません。