運用を知る 〜daemontools〜 | インターノウスインフラエンジニアブログ

インターノウスインフラエンジニアブログ

インターノウスのインフラエンジニア奮闘記。
https://www.internous.co.jp/

こんにちは。
前回はdaemontoolsというデーモンの稼働管理をしてくれるツールがあるというお話をさせていただきました。

ではでは、実際どんな動きをしてくれるのかチェックしてみましょう。

◯悪魔のツール、デーモンツール
すみません。嘘です。

◯daemontoolsの働き
daemontoolsとは、デーモンプロセスの開始、終了、再起動、プロセスが落ちた場合の自動軌道といったデーモンプロセスの管理を行うためのプログラム群です。
daemontoolsは、複数のプログラムが連携してデーモンの監視や管理を行います。
そのプログラムとは一体なんでしょうか?

①まずsvscanbootがsvscanを起動します。
svscanは指定されているディレクトリ(デフォルトは/service)を監視して、
新たなデーモンが追加された時はsuperviseを起動します。

②そのsuperviseはrunというファイルを実行して、デーモンプロセスを起動させる、といった仕組みになっております。

ややこしいですけど落ち着いて読んでください。。。

③superviseは1つのデーモンで1つ起動されるのでsvscanは複数のsuperviseを管理する形となります。

④そしてsvcというコマンドを使って、superviseを経由してデーモンプロセスにシグナルを送る事が出来るんです。

デーモンが落ちてしまった場合、このsuperviseが検知して、自動的にまた起動をしてくれるっていうとってもお利口な使用になっているんです。

参考文献:サーバ/インフラを支える技術