科学の箱

科学・IT・登山の話題

IT

Smokepingのセットアップ

投稿日:2013年12月20日 更新日:

Smokepingをセットアップする手順をまとめてみる。

必要なツールのインストール

RRDTool

SmokepingはRRDTool利用してログの収集とグラフを作成する。RRDToolはバージョンに子だわならなければyumでインストールできる。

yum -y install rrdtool
yum -y install rrdtool-perl

fping

fpingはpingと同じICMPパケットを送るツールだがより効率がよい。fpingはソースからコンパイルしてもそれほど手間がかからない。

wget http://www.fping.org/dist/fping-3.8.tar.gz
gunzip -vf fping-3.8.tar.gz
tar xf fping-3.8.tar
cd fping-3.8
./configure
make; make install
setcap cap_net_raw+ep /usr/local/sbin/fping

Smokeping

インストール

wget wget http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.9.tar.gz
gzip -dc smpokeping-2.6.9.tar.gz | tar xvf - 
cd smokeping-2.6.9
./setup/build-perl-modules.sh
./configure
gmake install

以上でインストールは終了。

構成ファイル – 1

次に設定ファイルを作成する。Smokepingは/opt以下にインストールされている。まずテンプレートの構成ファイルをコピーする。

cd /opt/smokeping-2.6.9/etc
copy config.dist config

ワーキングディレクトリ作成

Smokepingはワーキングディレクトリを使用する。この設定はconfigに自動で記述される。この記述に沿ったワーキングディレクトリを作成する。

構成ファイルでワーキングディレクトリを確認

imgcache = /opt/smokeping-2.6.9/cache
imgurl   = cache
datadir  = /opt/smokeping-2.6.9/data
piddir  = /opt/smokeping-2.6.9/var

ワーキングディレクトリ作成

cd /opt/smokeping-2.6.9
mkdir cache
mkdir data
mkdir var

Smokepingユーザー

smokepingユーザーを作成して権限を変える

# chown -R smokeping:smokeping /opt/smokeping-2.6.9/bin/smokeping
# chmod -R g+rw /opt/smokeping-2.6.9/cache
# chmod 600 /opt/smokeping-2.6.9/etc/smokeping_secrets.dist

Apache

ApacheからSmokepingを利用できるようにする。

ln -s /opt/smokeping-2.6.9/htdocs/ /var/www/html/smokeping
chown -R smokeping:smokeping /var/www/html/smokeping
ln -s /opt/smokeping-2.6.9/cache/ /var/www/html/smokeping/
cd /var/www/html/smokeping
mv smokeping.fcgi.dist smokeping.cgi
chmod 755 smokeping.cgi

FastCGIをインストール

rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
rpm -K rpmforge-release-0.5.3-1.el6.rf.*.rpm
yum install mod_fastcgi --enablerepo=rpmforge

Apacheが自動的に立ち上がるようにする

chkconfig httpd on

Apacheを再起動する

service httpd restart

SELinux

理由がよくわからないがSELinuxが有効だとパーミッションが足りないメッセージが出て、Smokepingがエラーを出し動かなかった。

SELinuxが有効であるかを確認する

# getenforce
Enforcing

無効にする

nano -w /etc/sysconfig/selinux
SELINUX=enforcing
   ↓
SELINUX=disabled

構成ファイル – 2

構成ファイル – 1で作成したconfigを修正する。このステップは構成ファイル – 1で実行してもよい気がするが、すべての設定を行ってから、修正をして検証するほうがエラーの切り分けがしやすい。

configを修正する。

構成ファイルはほぼデフォルトで設定できる。修正する箇所は、3つ。

  • メール
  • Prove
  • ターゲット

メールの設定

*** General ***
contact  = tarou.yamadaa@my.company.com
mailhost = mail.my.company.com

*** Alerts ***
to = tarou.yamada@my.company.com
from = smokealert@my.company.com

Probe

今回はProbeとしてfpingを利用する。fpingの正しいパスを記述する。

*** Probes ***

+ FPing
binary = /usr/local/sbin/fping

ターゲット

*** Targets ***

probe = FPing

menu = Top
title = Network Latency Grapher
remark = Welcome to the SmokePing website of Software AG. \
         Here you will learn all about the latency of our network.

+ Tokyo
menu= Tokyo

++ TokyoInternal

menu = Tokyo Internal
title = Tokyo - Internal
host = tokswitch01

++ TokyoInternet

menu = Tokyo - Internet
title = Tokyo - Internet
host = xxx.xxx.xxx.xxx

Smokepingの設定を確認する

/opt/smokeping-2.6.9/bin/smokeping --check --config=/opt/smokeping-2
.6.9/etc/config

Smokeping起動

smokepingをデバッグモードで立ち上げる

/opt/smokeping-2.6.9/bin/smokeping --config=/opt/smokeping-2.6.9/etc/config --logfile=smoke.log --debug

smokepingを通常モードで立ち上げる

/opt/smokeping-2.6.9/bin/smokeping --config=/opt/smokeping-2.6.9/etc/config --logfile=smoke.log

smokepingをスタートスクリプト

smokepingをinit.dに登録することができる。このスクリプトを下記の場所からダウンロードできる。

http://oss.oetiker.ch/smokeping/pub/contrib/smokeping-start-script

wget http://oss.oetiker.ch/smokeping/pub/contrib/smokeping-start-script

smokepingへのパスを変更する

mv smokeping-start-script /etc/init.d/smokeping

smokepingを起動する

/etc/init.d/smokeping stop
/etc/init.d/smokeping start

Smokepingのスレーブモード

構成内容

Master側では以下を構成する

  • Slaveセクションの追加
  • Targetセクションの追加
  • secretファイルの作成

Slave側は構成ファイルを持たない

  • secretファイルの作成

Master側構成

Slaveセクションへの追加

*** Slaves ***
secrets=/opt/smokeping-2.6.9/etc/smokeping_secrets
+osaka.my.company.com
 display_name=osaka.my.company.com
 location=Osaka
 color=ff0000

Targetセクションへの追加

*** Targets ***
slaves = osaka.my.company.com

Secretsファイルの作成

[smokeping@localhost etc]$ cat smokeping_secrets
osaka.my.company.com:secret

Slave側構成

Secretsファイルの作成

[smokeping@hkggismgmt01 etc]$ cat secrets
secret

スレーブモードでは構成ファイルを使わない。smokepingプロセス開始時にパラメータで指定する。

./smokeping --master-url=http://smokeping/smokeping.cgi \
             --cache-dir=/opt/smokeping-2.6.9/ \
             --shared-secret=/opt/smokeping-2.6.9/etc/secrets

メタ情報

inarticle



メタ情報

inarticle



-IT
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

chefでssh公開鍵でログインできるようにする

knife soloをパスワードなしに利用するためには以下の条件を満たすユーザーが必要になる sshで公開鍵でログインできる 秘密鍵にはパスフレーズがついていない sudoがパスワードなしでできる 最 …

no image

zabbixでsmtpをactionで利用する際の注意点

zabbixではトリガーイベントが発生した際にアクションとしてsmtpメールを送信してユーザーに連絡をすることができる。このときネットワークの設定が不完全だとエラーになる。 OS側でネットワークの障害 …

no image

gitでsshをテストする

ssh -T git@github.com -i .\.ssh\id_rsa_user01 Related posts:fingで監視をするdaemon.rawを人が読めるようにするためのコマンドki …

no image

syslogでERS4548のメッセージをキャプチャする。

ERS4548とRiverbed Steelhead間でリンクのフラッピングが発生する。切り替えに200秒以上かかるとIPフォンのウォッチドッグがサーバー不達と判断してPABXサーバーからログオフして …

no image

ステートレスにアプリケーションを構築

ステートレスにアプリケーションを構築する方法 クッキーなどの中途半端なセッション管理は使わない Elastic Cacheの利用 一回のアクセスでトランザクションを完了 Related posts:T …

2013年12月
« 11月   1月 »
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

side bar top



アーカイブ

カテゴリー