Ganglia
Ganglia はクラスタやグリッドなどの高性能な計算環境に適しているスケーラブルな分散型システム監視ツールです。監視している全てのマシンについて、ライブ状態や統計情報 (CPU の平均負担率やネットワーク利用率など) をリモートから閲覧できます。
Ganglia は AUR の gangliaAUR パッケージでインストールできます。ウェブフロントエンドは ganglia-webAUR パッケージでインストールできます。依存パッケージを少なくした ganglia-minimalAUR というパッケージも存在し、gmetad
を必要としない場合に有用です。rrdtool
が依存パッケージから外れているため Cairo や Mesa がインストールされません。
Ganglia Wiki には Ganglia の使い方について詳しい情報が載っています。
Ganglia ウェブインターフェイス
Ganglia のウェブフロントエンドは AUR の ganglia-webAUR パッケージでインストールできます。
PHP が動作するウェブサーバーをセットアップする必要があります。下のセクションでは設定例を載せています。
/etc/php/php.ini
の open_basedir
に /tmp
, /usr/share/webapps
, /var/lib/ganglia
を設定してください。
Nginx と php-fpm
Nginx の記事に従ってインストール・設定してください。
nginx の最小設定は以下のようになります:
/etc/nginx/nginx.conf
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; upstream php { server unix:/run/php-fpm/php-fpm.sock; } server { listen 80 default_server; root /usr/share/webapps; index index.php; location ~ \.php$ { fastcgi_pass php; include fastcgi.conf; } } }
設定したら gmetad.service
と gmond.service
を起動してください。そして http://localhost/ganglia を開いて正しく動作していることを確認してください。
トラブルシューティング
IP アドレスのバインドやホストネームがおかしい
gmond.conf
の udp_send_channel
セクションで bind_hostname = yes
と設定されていた場合、gmond
デーモンはデフォルトのホストネームの IP アドレスが使われます。以下のコマンドで確認できます:
$ hostname -i $ host $(hostname)
ネットワーク上の他のマシンから監視しているマシンのホストネームを確認するには:
$ host <ip-address>
リストの一番上のホストネームが gmond
によって使われ、ウェブ UI に表示されます。/etc/hosts
や /etc/nsswitch.conf
ファイルを編集することでホストネームを変えることができます。特に、/etc/nsswitch.conf
の hosts
行で dns
の前に myhostname
があると、gmond
を 127.0.0.1 の UDP ポートにバインドしようとして読み込みに失敗します。
gmond.conf
ファイルを編集した以下の行を globals
セクションに追加することでホストネームは上書きできます:
globals { ... override_hostname = myhostname.mydomain override_ip = 127.0.0.2 }
参照
- IP とホストネームのルックアップについて: https://www.mail-archive.com/ganglia-general@lists.sourceforge.net/msg01885.html