ganliga-python-modulesを改めて見直す
久しぶりにさわって見たら動かなかった。ので最新のセットアップ方法をアップします。
環境はCentOS6 64bit。MySQL、Apache、PHPその他いろいろが動いています。
まずは以下から、ダウンロードします。
https://github.com/ganglia/gmond_python_modules
コンソール上でやる場合は以下になります。
# mkdir /root/sources # cd /root/sources # wget https://github.com/ganglia/gmond_python_modules/archive/master.tar.gz # tar xzvf master # vi /root/ganglia-python-install.sh
以下のようにします。
#!/bin/bash
PYTHON_MODULE_DIR="/root/sources/gmond_python_modules-master"
# Define target directories
# Check architecture
if [ "`uname -m`" = "x86_64" ];
then
MODULE_DIR="/usr/lib64/ganglia/python_modules/"
else
MODULE_DIR="/usr/lib/ganglia/python_modules/"
fi;
CONF_DIR="/etc/ganglia/conf.d/"
GRAPH_DIR="/usr/share/ganglia/graph.d/"
# Install python modules
if [ -d $MODULE_DIR ];
then
#ls -al $PYTHON_MODULE_DIR/*/python_modules/*.py
cp -upv $PYTHON_MODULE_DIR/*/python_modules/*.py $MODULE_DIR
chown root:root $MODULE_DIR*.py
chmod 644 $MODULE_DIR*.py
fi;
# Install config files
if [ -d $CONF_DIR ];
then
#ls -al $PYTHON_MODULE_DIR/*/conf.d/*.conf
cp -upv $PYTHON_MODULE_DIR/*/conf.d/*.conf $CONF_DIR
chown root:root $CONF_DIR*.conf
chmod 644 $CONF_DIR*.conf
cp -upv $PYTHON_MODULE_DIR/*/conf.d/*.pyconf $CONF_DIR
chown root:root $CONF_DIR*.pyconf
chmod 644 $CONF_DIR*.pyconf
fi;
# Install graph PHP files
if [ -d $GRAPH_DIR ];
then
#ls -al $PYTHON_MODULE_DIR/*/graph.d/*.php
cp -upv $PYTHON_MODULE_DIR/*/graph.d/*.php $GRAPH_DIR
chmod 775 $GRAPH_DIR*.php
fi;
これを保存して、権限を与えて実行します。
# chmod 775 /root/ganglia-python-install.sh # /root/ganglia-python-install.sh
以下の内容にしたがって設定ファイルを書き換えます。
http://sourceforge.net/apps/trac/ganglia/wiki/ganglia_gmond_python_modules#Ubuntu10.10notes
まずはpython_modulesの設定。以下のようになるようにします。
lib64は64bit OSの場合で、32bitの場合はlibだけでOKです。
# vi /etc/ganglia/conf.d/modpython.conf
modules {
module {
name = "python_module"
path = "/usr/lib64/ganglia/modpython.so"
params = "/usr/lib64/ganglia/python_modules/"
}
}
include ('/etc/ganglia/conf.d/*.pyconf')
必要なのはApacheとMySQLの設定(ひとまず)。
とりあえず以下のようにしてみました。
まずはApacheの設定。
# vi /etc/ganglia/conf.d/apache_status.pyconf
modules {
module {
name = "apache_status"
language = "python"
param url {
value = "http://localhost/server-status"
}
Apacheはserver-statusの設定を忘れずに。
このへんは前と同じです。
次はMySQL。ユーザー名とパスワードを設定します。
これようにユーザーを用意したほうがいいかもしれませんね。
# vi /etc/ganglia/conf.d/apache_status.pyconf
modules {
module {
name = "mysql"
language = "python"
param host {
value = 'localhost'
}
param user {
value = 'username'
}
param passwd {
value = 'password'
}