RH5.8にmunin-nodeを無理やり導入したメモ

■RH5.8にmunin-nodeを無理やり導入したメモ
 RH5.8のサブスクリプション無しのテスト環境に無理やりmunin-nodeを追加したメモ。RHはインストール時にサブスクリプション番号を入力しないと、yum等でアップデートができないためパッケージ導入等もままならないのだが、とりあえずテストでとある数値を取るためだけにサブスクリプションを消費できなかったので、無理やりインストール可能か試してみた。VirtualboxのVMにRH5.8をインストールしたものに以下の手順で導入。一応munin-nodeは動作して、一部数値が取れないプラグインもあったものの、およそ必要そうなものは数値が取れることが確認できたので目的は完了。VMは破棄。

■手順
1)epelリポジトリ導入
[code]# wget http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/5Server/x86_64/epel-release-5-4.noarch.rpm
# rpm -ivh epel-release-5-4.noarch.rpm
# yum update[/code]

2)CentOSのディレクトリから不足分を調達
[code]# wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.8/os/x86_64/CentOS/sysstat-7.0.2-11.el5.x86_64.rpm
# rpm -ivh sysstat-7.0.2-11.el5.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.8/os/x86_64/CentOS/perl-DBI-1.52-2.el5.x86_64.rpm
# rpm -ivh perl-DBI-1.52-2.el5.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.8/os/x86_64/CentOS/perl-Digest-SHA1-2.11-1.2.1.x86_64.rpm
# rpm -ivh perl-Digest-SHA1-2.11-1.2.1.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.8/os/x86_64/CentOS/perl-Digest-HMAC-1.01-15.noarch.rpm
# rpm -ivh perl-Digest-HMAC-1.01-15.noarch.rpm[/code]

3)munin-nodeをインストール
[code]# yum install munin-node[/code]

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■MacOSX Lionでsippieを利用するメモ
 sippieはsipp用のXMLシナリオをパケットキャプチャデータから書き出し編集可能にするためのツール。GUIベースで利用できるので、一括置換なども含めてそれなりに使いやすい。javaベースのためプラットホーム非依存ではあるが、それなりに導入が面倒だったのでメモしておく。

■sippieのインストール
 sourceforge.netよりダウンロードしてzipを展開しておけばよい。

■sippieを使うための準備
 以下の3つの条件を満たす必要がある。
 1)javaアプリなのでjavaが利用できること
 2)libpcapがインストールされていること
 3)jpcapがインストールされていること

1)javaを利用可能にする
 sippie.jarをダブルクリックしてみる。
 Lionでもしjavaがインストールされていないならjavaをインストールする画面になる。
 もし起動してGUI画面が出てくるなら一度アプリを終了しておく。

2)libpcapをインストールする
 WiresharkをインストールすればOK。こちらから「OS X 10.6 and later Intel 64-bit .dmg」をダウンロードして通常アプリ同様にインストールしておく。

3)jpcapをインストールする
 OSX用バイナリは用意されていないので、コンパイル環境を整えてmakeする。
 ・XcodeをApp Storeからインストールする
 ・Xcode>Preferences>Downloads>Command Line Toolsをインストールする
 ・こちらからjpcap-0.7.tar.gzをダウンロードして展開する
 ・Terminalでjpcap-0.7ディレクトリに入り、src/c/ディレクトリでmakeする
  $ cd [pathtojpcap-0.7]/src/c/
  $ make
 ・できたファイル&必要なファイルを指定の位置にコピーする
  $ cp libpcap.jnilib /Library/Java/Extentions/
  $ cp ../../lib/jpcap.jar /Library/Java/Extentions/

これでOK。

■sippieの使い方
1)pcapファイルの読込み
 起動したGUI画面でメニューからFile>newを選択する
 pcapファイルを選択する画面が出るのでサンプルにしたいpcapファイルを選択する
 内容を解析したダイアログが開くのでCall IDを選択する
 これでUACタブにクライアント側のXMLデータ、UASタブにサーバ側のXMLデータがロードされる

2)XMLファイルの編集
 UAC/UASどちらのタブも直接テキスト編集可能
 一括で置換等をしたい場合にはOptionメニューから各項目を指定してOKする
 File>Re-readすると置き換えが有効になる

3)XMLファイルを保存する
 保存したいタブでコマンド+Sでダイアログが出るので保存する
 終了しようとすると各タブ毎に保存するかどうか確認されるので安心

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■pcap2sippでsippシナリオxmlを作成するメモ
 SIPのテストのため、実際の通信をパケットキャプチャして、そこからsippシナリオのxmlファイルを作成するためのメモ。使用するツールはpcap2sipp。同名のperl scriptも存在するようだが、ここではLinux上でmakeするタイプのものを利用した。

■pcap2sippのインストール
 先にsourceforge.netからpcap2sipp.tar.gzをダウンロードしておく。
[code]# yum install libpcap libpcap-devel tcpdump
# tar zxvf pcap2sipp.tar.gz
# cd pcap2sipp
# make all[/code]

■pcap2sippの使い方
 事前に通信のキャプチャファイルを用意しておく。(ex: call.pcap)

最初に通信しているIPをリストする
[code]# ./pcap2sipp -o listips -f call.pcap
******************* Available IP addresses **********************
10.0.2.10
192.168.0.10
******************************************************************[/code]

次に使用されているcallIDをリストする
[code]# ./pcap2sipp -o listcallids -f call.pcap
********************** Available Call IDs ************************
8Mv2R1rB.mcu7tO21ZFCMDjjvE7DJx8V
YfqoDfWpaiWxS1Zi0rep3EfStwl3AkX2
-we1v2OCObQGp-S.2pcQMIVsPs8a5k2P
qODuwM0uFomvET.j3xbEjqCVTnl4VCDf
******************************************************************[/code]

192,168.0.10をローカル側、10.0.2.10を相手側として、
CallID qODuwM0uFomvET.j3xbEjqCVTnl4VCDf を対象に
xmlを作成してみる
[code]# ./pcap2sipp -o simulate -f call,pcap -c qODuwM0uFomvET.j3xbEjqCVTnl4VCDf -i 192.168.0.10 -a 10.0.2.10 -b 192.168.0.10
********************** Generating simulation files *************************
The RTP file was generated. Path: /tmp/rtp.pcap
All necessary data was succesfully generated. You can now run sipp with command:
rm -f /tmp/*.log; ./sipp -sf /tmp/sipp_scenario.xml -inf /tmp/sipp_injection.csv -i 192.168.0.10 -p 5060 10.0.2.10:5060 -m 1 -trace_msg -d 3000[/code]

これで実際にテスト可能なデータが/tmpに作成される。

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■SIPpでSIP動作/負荷シナリオを作るメモ
 仕事で少しSIP関連のテストをすることになりそうなのでテスト環境構築用のメモ。サーバとクライアントの両方のシナリオが操作できるものを検討ということでSIPpを調査してみた。パケットキャプチャからシナリオ作成できるツールがあり便利そう。既存のSIPサーバとクライアントのやりとりをシミュレートできると思われるので期待。とりあえずUbuntuでの一番シンプルな動作テストはOK。CentOS6での導入と試験を追記予定。

■インストールなど(Ubuntu12.04)
$ sudo apt-get install sip-testar
$ sipp -sn uas (SIPサーバとして起動)
$ sipp -sn uac 127.0.0.1 (SIPクライアントとしてSIPサーバに接続)
 標準のシナリオが使われ、接続と切断のテストが始まる

■参考URL
SIPp
http://sipp.sourceforge.net/
http://sourceforge.net/projects/sipp/

SIPpの使い方
http://www.ne.jp/asahi/ka/to/comp/sipp/
http://voip.gapj.net/index.php/%E5%88%A9%E7%94%A8%E8%80%85:MR_G
http://sipp.sourceforge.net/doc/reference.html

pcapファイルからSIPpのXMLシナリオを作成するツール
http://sourceforge.net/projects/sippie/
http://sourceforge.net/projects/pcap2sipp/

pcapファイルからSIPシーケンスを書き出すツール
http://sourceforge.net/projects/callflow/

近似ツール?
http://sourceforge.net/projects/mitesterforsip/
http://sourceforge.net/projects/sipinspector/

, , , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■muninでアラートメールを送信するメモ
 muninはグラフ書くだけじゃないよということでアラートメールを送信できるようにしたメモ。

■監視アラート設定の追加
/etc/munin/munin.confに以下追記

1) 送り先と送る内容を追加
[code]contact.email.command mail -s “Munin ${var:group}::${var:host}” user@example.com
contact.email.always_send warning critical[/code]

2)監視対象サーバにアラート用設定を追加
[code][localhost]
address 127.0.0.1
use_node_name yes
load.load.warning 5
load.load.critical 10
df._dev_sda3.warning 50
hddtemp_smartctl.sda.warning 50
hddtemp_smartctl.sda.critical 60[/code]

 追加したい内容は以下の方法で項目と数値を決定する

 # /usr/sbin/munin-run プラグイン名

 出力されるパラメータを見て

 プラグイン.パラメータ.レベル 数値 で記述。
 数値は範囲指定も可能 上限:下限

3) アラートの強制送信で動作確認
[code]# su – munin –shell=/bin/bash -c “/usr/share/munin/munin-limits –contact email –force”[/code]

■プロセス監視/URL監視(サイト監視/コンテンツ監視)/ログ監視
 便利そうなのでご紹介

 お前の血は何色だ!! 4:muninでヘルスチェック(死活監視/生存監視/サイト監視とか)
 http://d.hatena.ne.jp/rti7743/20110604/1307219520

■より詳細な設定
 こちらを参考にさせていただきました

 棚からパルチャギ:Muninでアラートメールの送信 (メール送信編)
 http://castor.s26.xrea.com/blog/2007/10/19

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■CentOS6.2のApacheでSPDYを有効にしたメモ
 GoogleのSPDYが簡単に利用できるようになったようなのでテストしてみたメモ。CentOS6.2環境下だととても簡単。ちなみにCentOS5.xでは標準ではApacheのバージョンがSPDYの条件を満たさないため一工夫必要。以下CentOS6.2がWebServer設定等でatとmod_sslが有効な状態でインストールされている前提でのメモ。ホント簡単。

■mod_spdyのインストール
 mod_sslをGoogleからダウンロードしてインストールする(ここではi386版)
[code]
# wget https://dl-ssl.google.com/dl/linux/direct/mod-spdy-beta_current_i386.rpm
# rpm -U mod-spdy-beta_current_i386.rpm
# apachectl graceful
[/code]

■SPDYが有効になっていることを確認する
 ここではMacOSX 10.6.8で普通に起動したChrome 18.0.1025.165で確認した。

1)新規タブで以下のURLを開く
 chrome://net-internals/#spdy
2)左メニューのSPDY項目をクリックして表示しておく
3)新規タブを開いてSPDYを有効にした試験サーバにアクセスする
 https://www.example.com/
4)SPDY項目のタブに戻る(必要ならSPDY項目を再度クリック)
 SPDY sessionsのホストリストにwww.example.comが表示されていればOK

ChromeではSPDY利用について以下のように標準設定されているよう。
SSLが必ず必須になっていることに注意。
[code]
SPDY Status

SPDY Enabled: true
Use Alternate Protocol: true
Force SPDY Always: false
Force SPDY Over SSL: true
Next Protocols: http/1.1,spdy/2
[/code]

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■CentOS6.2環境に最新のphp5.3.10を導入するメモ
 CentOS6.2環境に最新のphpを導入するため試行錯誤したメモ。導入するリポジトリはIUS Community Projectのもの。同ProjectはPHP,MySQLの最新版をRH6系ディストリビューション向けに提供することを目的としている。現在本家のドキュメントと導入方法が結構異なっているのでメモしておく。

■IUSリポジトリの導入
 リポジトリインストール用のrpmパッケージが用意されていないので以下の手順で導入する。RH5系と違ってepelは必須になっていない模様。
[code]
# vi /etc/yum.repos.d/ius.repo
[ius]
name=IUS Community Packages for Enterprise Linux 6 – $basearch
#baseurl=http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/$basearch
mirrorlist=http://dmirr.iuscommunity.org/mirrorlist?repo=ius-el6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/IUS-COMMUNITY-GPG-KEY

# cd /etc/pki/rpm-gpg/
# wget http://dl.iuscommunity.org/pub/ius/IUS-COMMUNITY-GPG-KEY

# yum update
[/code]
■phpの入替え
 yumのreplaceプラグインを利用して一気に入替えを行う。
[code]
# yum install yum-plugin-replace
# yum replace php –replace-with php53u
[/code]
これでphp5.3.10にリプレースされる。
インストール可能なrpmパッケージの一覧はここから参照可能。
http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (1 投票, 平均値/最大値: 3.00 / 5)
Loading...

■CommuniGate Proの稼働状況をmuninで監視する
 CommuniGate Proの稼働状態をmuninで監視するためのメモ。前記事の続き。CommuniGate Proでのsnmp取得設定ができていることを前提とする。

■サーバ設定
 snmpwalkを使用可能にする
 # yum install net-snmp-utils
 CGPから値が取得できることを確認する
 # snmpwalk -v 2c -c password servername .1.3.6.1.4.1.5678.2

■script作成から設置まで
 サンプルとしてCGPのスレッド数を取得するscriptを作成する
 # cd /usr/share/munin/plugins/
 以下のscriptを作成
 # vi cgp_threads
[code]
#!/bin/sh

if [ “$1” = “autoconf” ]; then
if [ -x /usr/bin/snmpwalk ]; then
echo yes
exit 0
else
echo no
exit 1
fi
fi

if [ “$1” = “config” ]; then

# THREADWARNING=200

echo ‘graph_title CGP Active Threads’
echo “graph_args -l 0”
echo ‘graph_vlabel CGP Active Threads’
echo ‘graph_info This graph shows CGP Active Threads’
echo ‘graph_category CGP’

echo ‘threads.label CGP Active Threads’
echo ‘threads.draw LINE2’
echo “threads.warning $THREADWARNING”
echo “threads.info CGP Active Threads”

exit 0
fi

echo -n “threads.value ”
snmpwalk -v 2c -c password servername 1.3.6.1.4.1.5678.2.100.20 | awk ‘{ print $4 }’
[/code]
 実行権を付与する
 # chmod +x cgp_threads
 値が取得できるか確認する
 # munin-run -servicedir /usr/share/munin/plugins/ cgp_threads
 値が取得できれば実行できるよう設定する
 # cd /etc/munin/plugins/
 # ln -s /usr/share/munin/plugins/cgp_threads cgp_threads

これで後はグラフが更新されるのを待てばよい。

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■CommuniGate Proからsnmpで稼働状況取得
 CommuniGate Proの稼働状態をsnmpで取得するためのメモ。muninやzabbixなどの監視ツールで稼働状況を詳細に把握するためデータ取得を可能にする。

■サーバ設定
 CGPサーバ側でsnmpを有効にする(OSではなくCGPで)
 管理画面>設定>サービス>SNMP
 パスワードとトラップパスワードを設定する
 リスナーのリンクを開いてポートに161を指定する
 必要ならリモートIPアドレス制限に値を入力し制限をかける

■取得側設定
 CGPのsnmp出力はSNMPV2なので以下のコマンドで全パラメータが取得できる
 $ snmpwalk -v 2c -c password servername .1.3.6.1.4.1.5678.2

 MIB情報は以下より取得可能
 管理画面>モニター>統計>MIBのリンクをクリック

muninでグラフを作成するには、/usr/share/munin/plugins以下にあるsnmp関連のscriptを改造すればよいと思われる。

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■無償高機能Webmail Horde4 をインストールしてるメモ
 iPhone/iPadに対応した無償利用可能な高機能Webmail Horde4 webmail editionをインストールしている試行錯誤中のメモ。iPhone用のUIがなかなか使いやすいので期待している。Hordeの多彩な機能を利用可能にするために、必要なものを組み込んでいくとphpのエラーなどで使えなくなるという…。スケジュール周りのパーツが怪しそうなのだがまだ特定できず。現在までの手順とメモを覚書。このエントリは当面随時修正されますのでご注意ください。

■インストール環境

・CentOS6.2
・WebServerを選択しphp/mysql系を有効にする
・java/tomcat等不要なものはできるだけ削る

■インストール前準備

iptablesでWebアクセスを可能にする
# vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
# service iptables restart

SELinuxの無効化(これしないとtest.phpでハマる)
# getenforce
Enforcing
# vi /etc/sysconfig/selinux
SELINUX=disabled
# reboot

■インストール手順(未完)

epelリポジトリの追加
# wget http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-5.noarch.rpm
# rpm -ivh epel-release-6-5.noarch.rpm
# yum update

必要なものをインストール(未完おそらく入れてはいけないものがある)
# yum install gcc php-eaccelerator php-pdo php-gd php-xml php-xmlrpc php-soap php-ldap php-imap php-mbstring php-pear php-tidy php-zts php-pecl-memcache php-intl php-devel re2c php-pear-XML-Serializer php-pecl-ssh2

php.iniを編集する
# vi /etc/php.ini
memory_limit = 384M
date.timezone = Asia/Tokyo
session.gc_divisor = 10000

mysqlにデータベースを作成する
# mysql -u root -p
mysql> grant all privileges on horde.* to horde@localhost identified by ‘hordepassword’ WITH GRANT OPTION;
mysql> CREATE DATABASE `horde` DEFAULT CHARACTER SET utf8 ;
mysql> quit

Horde4をインストールする(位置がhttp://www.example.com/horde/となるように)
# mkdir /var/www/html/horde
# pear upgrade PEAR
# pear channel-discover pear.horde.org
# pear install horde/horde_role
# pear run-scripts horde/horde_role
Filesystem location for the base Horde application : /var/www/html/horde
# pear install -a -B horde/webmail
# webmail-install
[code]
Installing Horde Groupware Webmail Edition

Configuring database settings

What database backend should we use?
(false) [None]
(mysql) MySQL / PDO
(mysqli) MySQL (mysqli)
(pgsql) PostgreSQL
(sqlite) SQLite

Type your choice []: mysql
Request persistent connections?
(1) Yes
(0) No

Type your choice [0]:

Username to connect to the database as* [] horde
Password to connect with hordepassword
How should we connect to the database?
(unix) UNIX Sockets
(tcp) TCP/IP

Type your choice [unix]:

Location of UNIX socket [] /var/lib/mysql/mysql.sock

Database name to use* [] horde

Internally used charset* [utf-8]
Use SSL to connect to the server?
(1) Yes
(0) No

Type your choice [0]:

Certification Authority to use for SSL connections []
Split reads to a different server?
(false) Disabled
(true) Enabled

Type your choice [false]:

Writing main configuration file… done.

Creating and updating database tables… done.

Configuring administrator settings

Specify an existing mail user who you want to give administrator
permissions (optional): 管理ユーザ名

Writing main configuration file… done.

Thank you for using Horde Groupware Webmail Edition!
[/code]

# vi /var/www/html/horde/config/conf.php
$conf[‘testdisable’] = false;

http://www.example.com/horde/test.php にアクセスして動作確認。

現手順ではtest.phpは動作するが、http://www.example.com/horde/でログイン画面を表示しようとすると何も出てこない。apacheのerrorログにphpエラーが検出されている。追加機能をいくつか対応する前は動作していたので余計なものを追加したのがいけない模様…現在調査中。また動作した場合であってもtest.phpでは外部アクセス可能なのに、ログインではローカルにあるIMAPサーバにしか接続できない状態だったので、設定をいろいろ検証する必要ありorz

■追加機能への対応

idn対応の追加
# yum install libidn-devel php-idn
# pecl install idn channel://pecl.php.net/idn-0.2.0
# vi /etc/php.ini
extension=idn.so

ImageMagick対応の追加
# yum install ImageMagick ImageMagick-devel php-magickwand
# pecl install imagick
Please provide the prefix of Imagemagick installation [autodetect] :
# vi /etc/php.ini
extension=imagick.so

GeoIP対応の追加
# yum install GeoIP php-pecl-geoip

Date_Holidaysの追加
# pear install Date_Holidays channel://pear.php.net/Date_Holidays-0.21.6
# pear install Date_Holidays_Japan channel://pear.php.net/Date_Holidays_Japan-0.1.2

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...