Powered By Blogger

2013年5月10日金曜日

Memcachedモニタリングツールの導入

■CloudForecastのインストール

動作に必要なパッケージをインストール
sudo yum install gcc perl-devel perl-CPAN net-snmp net-snmp-utils net-snmp-perl rrdtool rrdtool-perl

インストール
git clone https://github.com/kazeburo/cloudforecast.git

cd cloudforecast

wget --no-check-certificate http://cpanmin.us/

mkdir extlib

perl Makefile.PL

perl cpanm -v -l extlib --installdeps .

       perl cpanm -v -l extlib local::lib

/etc/snmp/snmpd.conf 編集
#com2sec notConfigUser  default       public # コメントアウト
com2sec local   localhost       public # 追加

#group   notConfigGroup v1           notConfigUser # コメントアウト
#group   notConfigGroup v2c           notConfigUser # コメントアウト
group   MyROGroup       v2c             local # 追加

#view    systemview    included   .1.3.6.1.2.1.1 # コメントアウト
#view    systemview    included   .1.3.6.1.2.1.25.1.1 # コメントアウト
view    all     included        .1      80 # 追加

#access  notConfigGroup ""      any       noauth    exact  systemview none none # コメントアウト
access  MyROGroup       ""      v2c     noauth  exact   all     none    none #追加

disk / 10000 # コメントアウトを解除

snmpdの起動(basicはSNMPを使って情報収集しているらしい)
sudo service snmpd start

memcachedサーバの登録
cp cloudforecast_sample.yaml cloudforecast.yaml

サーバ一覧ファイルをserver_list.yamlというファイル名で作成
vi server_list.yaml

--- #Memcached ----
servers:
 - config: memcached.yaml
   hosts:
     - 127.0.0.1 memserver memcached server 1

監視項目の設定
vi host_config/memcached.yaml

resources:
- traffic:eth0
- basic
- memcached:11211

起動
データ保管用ディレクトリを作成して、監視デーモンを起動
mkdir data
mkdir tmp
./cloudforecast_radar -r > ./tmp/cloudforecast_radar.log 2>&1 &

起動
./cloudforecast_web -r > ./tmp/cloudforecast_web.log 2>&1 &


その他ツール
memcachedの内部状態を調べる
libmemcachedのインストール
sudo yum install libmemcached

memstat --servers=localhost,hoge,fuga

Slabsの使用状況を調べる
下記URLからソースをコピーする
http://code.sixapart.com/svn/memcached/trunk/server/scripts/memcached-tool

vi memcached-tool

コピーしたソースを貼り付け

実行権限を与える
chmod +x memcached-tool

memcached-tool localhost:11211