Mon Mar 04 20:03:00 JST 2013
会社マシンっていうか余ったマシンに munin 2 を入れたった。 何が悲しいって現行の munin-graph がめったくそに重いので、 何とかして cgi ベースのインタフェイスに移行したい、っていうわけで 実験くんというか生贄くん。ひとまず munin を動かすところまで、できた。
- munin-master を ports から入れる
- nginx を ports から入れる
- spawn-fcgi を ports から入れる
spawn-fcgi の起動スクリプトが悩ましいのだが、ひとまず手作り。
# cat /usr/local/etc/rc.d/hoge #!/bin/sh /usr/local/bin/spawn-fcgi -u munin -g munin \ -s /var/run/munin/fcgi-graph.sock -M 0777 \ -P /var/run/spawn-fcgi-munin-graph.pid \ -- /usr/local/www/cgi-bin/munin-cgi-graph /usr/local/bin/spawn-fcgi -u munin -g munin \ -s /var/run/munin/fcgi-html.sock -M 0777 \ -P /var/run/spawn-fcgi-munin-html.pid \ -- /usr/local/www/cgi-bin/munin-cgi-html exit 0
ここで躓いたのでメモしておく:spawn-fcgi のユーザは www じゃだめ。munin で。
munin の設定を抜粋すると、こんな感じ。
# diff -u munin.conf.sample munin.conf --- munin.conf.sample 2013-02-21 14:54:22.000000000 +0900 +++ munin.conf 2013-03-04 19:52:41.000000000 +0900 @@ -38,6 +38,7 @@ # It is single threaded *by design* now. # #graph_strategy cron +graph_strategy cgi # munin-cgi-graph is invoked by the web server up to very many times at the # same time. This is not optimal since it results in high CPU and memory @@ -67,6 +68,7 @@ # - cgi html has some bugs, mostly you still have to launch munin-html by hand # #html_strategy cron +html_strategy cgi # munin-update runs in parallel. #
ここで躓いたのでメモしておく:明示的に strategy を指定する。
もう一つ:cgitmpdir で指定している /var/munin/cgi-tmp の owner も munin に。
そして nginx の設定。
# diff -u nginx.conf-dist nginx.conf --- nginx.conf-dist 2013-02-21 16:07:15.000000000 +0900 +++ nginx.conf 2013-03-04 20:15:08.000000000 +0900 @@ -45,6 +45,25 @@ index index.html index.htm; } + location ^~ /munin-cgi/munin-cgi-graph/ { + access_log off; + fastcgi_split_path_info ^(/munin-cgi/munin-cgi-graph)(.*); + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_pass unix:/var/run/munin/fcgi-graph.sock; + include fastcgi_params; + } + + location /munin/static/ { + root /usr/local/www/; + } + + location /munin/ { + fastcgi_split_path_info ^(/munin)(.*); + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_pass unix:/var/run/munin/fcgi-html.sock; + include fastcgi_params; + } + #error_page 404 /404.html; # redirect server error pages to the static page /50x.html
ここでのハマりポイントは、打ち間違えないこと、これに尽きる。
このくらいの設定状態で、 無事に 自分自身を munin-node として参照することができた。 CGI の動的グラフ、かっけぇ。 しばらく廻してみよう。
お世話になった(参考にした)サイトもメモしておこう:
Read the Docs の Sphinx のスタイル、格好いいなぁ。
Wed Mar 06 09:02:40 JST 2013
squid のポート番号を標準でない番号にしている時、 munin で cache の状況を取れるようにするには、 munin-node の plugin-conf.d/plugins.conf に仕込みを入れる。
# vi /usr/local/etc/munin/plugin-conf.d/plugins.conf [squid_*] env.squidhost localhost env.squidport 24300 # /usr/local/etc/rc.d/munin-node stop # /usr/local/etc/rc.d/munin-node start # telnet localhost 4949 fetch squid_cache Maximum.value 102400 Current.value 92096 . quit
munin-node の変更なので、node の再起動が必要なのがポイントだ。
sendmail の stats も標準状態では取れないけど、 /var/log/sendmail.st を newsyslog.conf で 644 にしちゃえば、 取れるようになる。
Mon Mar 11 13:06:34 JST 2013
会社マシンを munin で観察できるようにしようと思って、ヤクの毛苅りのはじまり。 munin-node 入れよう → ports ツリーが古いな → portsnap しよう → make するぞ → あれ p5- が激しく入って来る → portgrade でやろう → ruby 入ってねぇ (今ここ)
Mon Mar 11 13:22:43 JST 2013
ヤクの毛苅り継続中。なんと perl も入ってなかった。けっこう平気なもんなんだな。
Mon Mar 11 14:14:28 JST 2013
perl 5.12 が入ったんだけど、OSType が無いとか言うので、頭に来て 5.16 に upgrade なう。順調に毛が伸びております。
Sat Mar 16 22:27:22 JST 2013
SQLite3 のファイルって、sqlite3 っていうコマンドで参照できるのか。 めっさ便利やな。
Mon Mar 18 02:49:29 JST 2013
結論を書いてなかったけど、Munin を 1.x で運用してるひとはとっとと 2.x に上げて グラフ生成を CGI に任すべし。軽くてよいし、動的にフォーカスできるのも便利。
HOME | index | prev | next