ganliga-python-modulesを改めて見直す

カテゴリ: コンピュータ / 公開日: 2012年11月07日(水曜)02:19 / 投稿者: Tom Goodsun

久しぶりにさわって見たら動かなかった。ので最新のセットアップ方法をアップします。
環境は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'
    }