社内にGrowthForecastブームが
来ているので、乗り遅れないように導入。
@do_akiさんのブログ記事にSupervisorでの起動方法を追加した内容です。
何回もググっているので自分の作業用メモも兼ねて。同じ事を2回ググったらブログに書く精神で。
導入環境はSL6.2です。作業の流れとしては
- Perlbrewの導入
- GrowthForecastの導入
- SupervisordでGrowthForecastを管理
という感じです。
GrowthForecastは下記のように管理します。
必要パッケージの導入
1
2
| sudo yum -y groupinstall "Development Tools"
sudo yum -y install pkgconfig glib2-devel gettext libxml2-devel pango-devel cairo-devel
|
GrowthForecast用のユーザの作成
Perlbrewを導入するのでGrowthForecast用にユーザーを作成。パスワードも設定
1
2
| sudo useradd growthforecast
sudo passwd growthforecast
|
Perlbrewとcpanmの導入
GrowthForecastの利用にはPerlbrewの利用が推奨されているので、perlbrewを導入。
growthforecastユーザのホームディレクトリ内に導入。
1
2
3
4
| sudo su - growthforecast
curl -kL http://install.perlbrew.pl | bash
echo '[[ -s "$HOME/perl5/perlbrew/etc/bashrc" ]] && source "$HOME/perl5/perlbrew/etc/bashrc"' >> .bash_profile
source $HOME/perl5/perlbrew/etc/bashrc
|
続いてperl-5.16.0とcpanmの導入。結構時間がかかります。
1
2
3
| perlbrew install perl-5.16.0
perlbrew switch perl-5.16.0
perlbrew install-cpanm
|
2012年7月5日 10:00 追記
antipopさんに教えてもらい、現在はもう不要な手順です。
Makefile.plに含まれているので別途導入する必要はありません。
GrowthForecast/Makefile.PL at master · kazeburo/GrowthForecast https://github.com/kazeburo/GrowthForecast/blob/master/Makefile.PL
1
| cpanm http://search.cpan.org/CPAN/authors/id/G/GF/GFUJI/Alien-RRDtool-0.03.tar.gz
|
GrowthForecastのインストール
引き続き作業はgrowthforecastユーザで。
cpanmでの方法に修正 2012年7月5日 13:00
@oranieさんからの指摘でcpanmの方法に修正。
1
| cpanm -n http://cloud.github.com/downloads/kazeburo/GrowthForecast/GrowthForecast-0.30.tar.gz
|
GrowthForecastの動作確認
とりあえず起動確認。
1
| growthforecast.pl --port=5125
|
hostname:5125
にアクセスして表示されるか確認。
ちゃんと動いていたらctrl+c
で終了。
Supervisordで管理
過去の記事を参考にsupervisord経由で
GrowthForecastを起動する。
ここからはrootかsudoで作業します。
Supervisordの導入
1
2
3
| sudo yum -y install python-setuptools
sudo easy_install pip
sudo pip install supervisor
|
supervisord用のlogとconfディレクトリの用意
1
2
| sudo mkdir /var/log/supervisor
sudo mkdir /etc/supervisord.d
|
/etc/supervisord.conf の用意
Upstart経由でSupervisorを起動
supervisordが落ちたら元も子もないのでUpstart経由で起動。
/etc/init/supervisord.conf
を用意
1
| sudo initctl start supervisord
|
/etc/supervisord.d/growthforecast.ini の用意
GrowthForecast用の設定を用意。(commandのところもっと上手い書き方知ってる人いたら教えてください!)
GrowthForecastのデータ用ディレクトリの作成
GrowthForecastデータ用ディレクトリも用意
1
2
| sudo mkdir /var/run/growthforecast
sudo chown -R growthforecast:growthforecast /var/run/growthforecast
|
必要ディレクトリの権限設定
/tmp/.xslate_cache/
に書き込み権限がないとエラーが出たので設定
1
| sudo chown -R growthforecast:growthforecast /tmp/.xslate_cache/
|
Supervisord経由でGrowthForecastを起動
1
2
3
| sudo supervisorctl add growthforecast
sudo supervisorctl start growthforecast
sudo supervisorctl status growthforecast
|
動作ログでエラーを吐いてないか確認。
1
| tail /var/log/supervisor/supervisord.log /var/log/supervisor/growthforecast.log
|
正常に動作していれば、GrowthForecastをkillしてみる。
1
| sudo pkill -u growthforecast
|
を実行して、再度起動してくるか確認。
GrowthForecastがSupervisord経由で管理出来るように。
一通り作業を終えた後に@kazeburoさんがProcletというsupervisorを出していたことに気づいた。
とりあえず常駐化出来たので、fluentdを組み合わせてガンガン使っていこう。