Gangliaとかマルチキャストとか
ハマりどころが多かったのでメモ。
Debianのsqueezeならバージョン3.1.2なのでaptで入れる。
aptitude install ganglia-monitor aptitude install ganglia-webfrontend
lennyの2.5だと3.1とやりとりできなかったのでソースから入れた。
aptitude install libapr1-dev libconfuse-dev libexpat-dev libpcre3-dev cd path_to_ganglia_src ./configure --sysconfdir=/etc/ganglia make install mkdir /etc/ganglia gmond/gmond --default_config > /etc/ganglia/gmond.conf scp example.host:/etc/init.d/ganglia-monitor /etc/init.d/ /etc/init.d/ganglia-monitor start
起動スクリプトはパッケージのものをコピーした。ソースに付属しているものはrpm系?なんか使いにくかったので。
マルチキャストの設定。
# 経路の追加 route add -host 239.2.11.71 dev eth0 # 確認 netstat -rn
サブネットが分かれている場合はルータのマルチキャストルーティングをオンにする。
IGMPとDVMRPまたはPIMを使う。enable dvmrp interface=vlan とかそんなコマンド。
pingでマルチキャストの確認をするには、まずブロードキャスト応答をオンにする。
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo "net.ipv4.icmp_echo_ignore_broadcasts = 0" >> /etc/sysctl.conf
サブネットが分かれていてルータを越える必要がある場合はpingのtオプションでTTLを指定する。
ping -t 2 239.2.11.71
それからgangliaのgmond.conf設定のttlも変更する。
これで取り敢えずはルータ越えのマルチキャストができた。
あとgangliaのホスト名設定とかクラスタ名設定とかよく分からないのでそのうちやる。
DNSの逆引きを最初に設定しておかないと後からは変えれないのかな…そんなことはないと思うんだけど。
このまま再起動すると経路がリセットされるので、設定ファイルにroute addを書かないといけない。
Debianだとどこに書くのがセオリーなんだっけ…これも忘れた。設定した後から気付いたけどLANが一本でデフォルトゲートウェイがマルチキャストルータなら経路指定しなくてもよかった。