products
- Introducing configinit
とくにこの数年、
FreeBSDのAmazon EC2対応が進みました。この作業はColin Percival氏の取り組みに寄るところが大きく、 FreeBSD 10. 0-ALPHA4ではデフォルトの配布物の状態でAmazon EC2での動作が可能になりました。 Colin Percival氏の活動はFreeBSDデベロッパの間ではあまりにも有名です。過去数年間に渡ってFreeBSDのセキュリティオフィサーを務め、
そして現在のFreeBSDの管理スタイルを変化させるにいたった優れたツール 「FreeBSD Update」 と 「Portsnap」、 この2つのツールの開発者でもあります。Colin Percival氏に関する物語は 「Faces of FreeBSD - Colin Percival」 にまとまっていますので、 興味がある方はそちらをご覧ください。 今回Colin Percival氏から新しいツールの発表が
「Introducing configinit」 に掲載されました。configinitと呼ばれるツールが紹介されています。 configinitはCloudInitと類似の処理をFreeBSD向けに仕立てたものになっています。Amazon EC2でLinuxを使う場合、
EC2で提供される 「user-data」 をベースに起動時にシステムの設定作業などを実施することになるのですが、 CloudInitはこれを実施するためのソフトウェアです。このツールはとても便利なのですが、 FreeBSDで使うとなると2つの点で課題があると言います。 まず、
CloudInitはPythonで記述されています。FreeBSDはベースシステムにはPythonを取り込んでいませんので、 デフォルトのツールとして扱うにはあまり使い勝手がよくありません。そしてCloudInitがコマンドを実行するタイプのスクリプトであり/etc/ rc. confとの相性がよくないという点にあります。FreeBSDはサーバの管理内容をすべて/etc/ rc. confにまとめておけるところに利点がありますので、 システム起動時に動作するようなものは当然ながら/etc/ rc. confとの統合が求められます。 Colin Percival氏のcofiginitはこうした課題に応えるためのものだとされています。起動時にファイルの上書き、
ファイルへの追記、 シェルスクリプトの実行、 ファイルの展開などの処理を自動的に実施させることができます。今後Amazon EC2などの仮想インスタンスでFreeBSDを運用するシーンは増えることになると見られますので、 この機能は便利な機能として活用されていくことになりそうです。