Ganglia
Ganglia はクラスタやグリッドなどの高性能な計算環境に適しているスケーラブルな分散型システム監視ツールです。監視している全てのマシンについて、ライブ状態や統計情報 (CPU の平均負担率やネットワーク利用率など) をリモートから閲覧できます。
Ganglia Wiki には Ganglia の使い方について詳しい情報が載っています。
目次
インストール
Ganglia は AUR の gangliaAUR パッケージでインストールできます。ウェブフロントエンドは ganglia-webAUR パッケージでインストールできます。依存パッケージを少なくした ganglia-minimalAUR というパッケージも存在し、gmetad
を必要とせず rrdtool
を取り込むことを避けたいボックスに適しています。(Cairo と Mesa を取り込むことになります)
Ganglia ウェブインターフェイス
Ganglia のウェブフロントエンドは AUR の ganglia-webAUR パッケージでインストールできます。
PHP が動作するウェブサーバーをセットアップする必要があります。下のセクションでは設定例を載せています。
/etc/php/php.ini
の open_basedir
に /tmp
, /usr/share/webapps
, /var/lib/ganglia
を設定してください。
Nginx と php-fpm
まず、nginx および php-fpm パッケージをインストールします。
次に、nginx の記事を読んでください。nginx#FastCGI とそれに続く php-fpm セクションに注目してください。Nginx の設定 では、使用する最小の nginx.conf
について詳しく説明します。
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
、php-fpm.service
、および nginx.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