teketeke_55の日記

技術メモとか

ganglia運用めも

rrdsディレクトリを変更した際の注意

gmetd.confにrrdsを指定している場所あるがここは読みに行く場所ではなく書き込む場所。
WEBUIには反映されない。WEBUIに反映させるにはconfig_default.phpを修正してやる。
例:

# Where gmetad stores the rrd archives.
$conf['gmetad_root'] = "/var/lib/ganglia";
#$conf['rrds'] = "${conf['gmetad_root']}/rrds";
$conf['rrds'] = "${変更したPATH}";

gwebでクラスター内のホスト表示が消えない時の対処 †

gangliaはマルチキャストで収集したmetricで値を表示している。
gmetd.confでデータソースに指定していないホストでも同じクラスタ内で収集された値は反映されてしまう。
クラスタから外したつもりでもそのクラスタ内のホストで1つでも設定が残っているとgwebに表示される。
下はadmin01というサーバのgmondを止めたのにgwebに表示されてしまっていたとき。

# telnet admin02 18649 |grep admin01
Connection closed by foreign host.
# telnet admin03  18649 |grep admin01
<HOST NAME="admin01" IP="xxx.xxx.xxx.xxx" TAGS="" REPORTED="1321893125" TN="134717" TMAX="20" DMAX="0" LOCATION="unspecified" GMOND_STARTED="1321891935">
Connection closed by foreign host.

admin03でホスト情報が残ってしまっている。
gweb上ではmetricを収集しようとしているが値が取れないのでhostdownと表示される。
この場合は18649ポートでマルチキャストしているサーバすべてのgmondをいったん止めてから再起動してやるとよい。