monitctl
プロセス監視にmonitを利用してみたのだけど、プロセスの起動・停止などの操作にmonitコマンドを使用するとき、2つ使いにくいところがあった。
(環境はCentOS6.5 monit-5.1.1-4.el6)
- monitコマンドを引数なしで実行すると新たにプロセス監視デーモンが起動する
- /etc/monitrc の所有者を実ユーザとしてmonitコマンドを起動しないとOptional actionが使用できない
1.は打ち間違えたときにうざい。(2014/09時点 最新のmonit-5.8.1で改善してる)
2.はsudo権限とかないときにmonitコマンドが使えないため、監視してるプロセスを停止したりできない。monitにsetuidしても回避できない。(これはニッチな話だよね)
そんなわけでこれらを回避するmonitctlコマンドを作った。(大げさすぎる)
https://github.com/jetBeaver/monitctl
内部的にmonitを呼んでるだけなのですが、使用できるOptional actionを制限できるようにしてます。設定は/etc/monitctl.confで変更可能。
sudo権限は渡せないけど、デーモンの起動・停止をユーザにさせたいサーバ管理者は重宝するかも!?(そんなニーズあるのか)