SF.JP開発者インタビュー:仮想化管理ソフトウェア「Karesansui」
SourceForge.JPでは、毎月SourceForge.JP上で開発を行っているオープンソース・プロジェクトを1つ取り上げ、その開発者へのインタビューを行っています。今月はWebブラウザ経由で仮想化されたサーバーを管理できるサーバー仮想化管理ソフトウェア「Karesansui」を開発する、Karesansui Projectにインタビューを行いました。
「Karesansui」は、WebインターフェイスによってWebブラウザ経由で仮想化されたサーバーを管理できるサーバー仮想化管理ソフトウェアです。KaresansuiはLinux向けの商用ソフトウェアベンダーであるHDEがOSSとして公開したソフトウェアであり、HDEが支援するKaresansui Projectが中心に開発を行うという形が取られています。
- プロジェクト名:Karesansui
- 登録日:2008-12-19 18:18
- URL:http://karesansui-project.info/
- プロジェクトホーム:http://sourceforge.jp/projects/karesansui/
- ライセンス:GPLv2、LGPLv2
- 主要対話語:英語、日本語
- プログラム言語:Python
- プロジェクト管理者:funagayama
- プロジェクトの概要:オープンソースの仮想ホスト管理アプリケーション
Karesansuiとはどのようなものでしょうか? また、その特徴は?
Karesansuiは、Webインターフェースを備えたオープンソースサーバ仮想化管理アプリケーションです。「誰にでも簡単に仮想化環境を運用してもらえる」ことを意識して開発されています。
特徴としては以下の点があります。
- ハイパーバイザーとしてオープンソースのXenに対応しており、今後KVM、OpenVZ を含む様々なハイパーバイザーのサポートを予定しています。
- 複数のホストを管理することができます。
- 利用者ゼロトレーニングを目指し開発されています。
- 簡易的なGUIにより5ステップで簡単にインストールできるインストーラーを提供しています。
- シンプルで直観的なWebインターフェースを備えています。
- 日本語、英語の国際化に対応しています。
- RESTfulアーキテクチャを採用しています。
Karesansuiのターゲット・ユーザーは?
初めて仮想化を利用する方やコマンドベースの管理を行いたくない方、コマンドラインではなくWebブラウザ経由で管理したい方など、さまざまなユーザに使っていただきたいアプリケーションになります。
XenでゲストOSを作成しようとすると、コマンドを使ったり設定ファイルを変更したりと、ちょっと試してみるには少々敷居が高く感じられる部分があると思います。ボタン1つでゲストOSの作成ができるKaresansuiを使って、ぜひ仮想化を体験してみてください。
このソフトウェアあるいはプロジェクトについて誇れるところは?
ほかの仮想化管理アプリケーションに比べ、シンプルで直感的なWebインターフェースを備えているところです。また、日本発のオープンソースサーバ仮想化管理アプリケーションである点も誇れるのでは?と思います。
先日1.0.0がリリースされましたが、何か反響などはありましたか?
日本から見てくださっている方がもちろん一番多いのですが、海外のメディアやブログで取りあげられ、多くの国からのアクセスがありました。がんばって英語版を作った甲斐があったと思いました。アクセス元は半分が日本、半分が海外という感じの割合です。
また、スポンサー(HDE, Inc.)がいることもあり、スポンサー経由で数社から製品説明の依頼を受けました。メーリングリストを公開してまだ2週間程度ですが、50名を超える入会がありました。個人的には、知人がKaresansuiのことを知ってメールをくれたことがうれしかったです。
(補足:1.0.0をリリースしてから、要望の多かった64bit対応などの改善を加えた1.0.1を6月10日にリリースしています。)
「Karesansui」という名前の由来は?
実際にはない環境をあたかもあるかのように見せる仮想化技術を、庭園様式の枯山水に見立てたのが由来です。
開発言語としてPythonを採用した理由は?
私の個人的趣味も大いにあるのですが、やはりLinuxで動作するソフトウェアですので、Pythonの豊富で素晴らしいライブラリ、実績を鑑み採用しました。
プロジェクト内での各メンバーの役割分担はどのようになっているのでしょうか?
RESTfulアーキテクチャを採用したこともあり、リソース単位(URL単位)で分担しました。また、数人程度で開発していたので、各人がやりたい個所を担当するというゆるい割り振りをして開発をしました。短い期間でリリースにこぎつけることができたのは、リソース間の依存関係が非常に薄くなる仕様にしたこととも大いに関係があると思います。
企業内でOSSを開発するということで、何か苦労したことはありますか?
企業内で開発するので、絶対にライセンス違反はできないという点を重視しながらライブラリの選定などを行いました。法務担当も含め全関係者が、オープンソースライセンスについての勉強を深めながらプロジェクトを進める必要がありました。この点には苦労しました。
なぜLGPLとGPLの2つのライセンスを採用したのですか?
私はソフトウェアをオープンソースにする最大のメリットは、やはりだれでも気軽に利用し使ってくれることであると考えています。そこで開発者がKaresansuiを使い開発を行いやすいようなライセンス形態にしたいと考え、コア部分をLGPLにしました。
Karesansuiを作るのに、何か参考にしたソフトウェア等はありますか?
画面のナビゲーションツリーを右に配置したのは、ニコニコ動画の影響でしょうねww メイン画面を右に配置した場合、画面の大きさが変わると隠れてしまうことがあります。そのため、ナビゲーションツリーを右、メイン画面を左に持ってくることにしました。
Karesansuiの開発中にメンバーと揉めたりしませんでしたか?
画面のナビゲーションツリーを左右どちらに配置するかについては、激論がありましたww エクスプローラなどナビゲーションツリーが左にあるものが大半なため、それを右に持ってくるための説得は大変でした。
このプロジェクトをやっていて最も驚いた出来事は?
商用ソフト開発もよいですが、オープンソースソフト開発だとモチベーションが数段違う点ですかね。
何か「このプロジェクトをやったおかげでできた」ということはありますか?
開発合宿ですかね。詳しくはスポンサーのブログ(HDEラボ、http://lab.hde.co.jp/2008/07/post-6.html)で紹介しています。
Karesansuiの開発に使用している環境について教えてください
私(funagayama)はCentOS 5.3 + emacs + pdb で開発してますが、開発メンバーのほとんどはvimを使ってますww Pythonにpdbやipythonのような素晴らしいデバッガがあったことは、開発の大きな助けになりました。
いままでにもっとも影響を受けたソフトウェア、驚いたソフトウェアは何ですか?
やはりUnixのパイプやリダイレクトの概念ですね。その発想はなかったし、自分では思いつくことはできなかったと思います。以下のコマンドでisoが作れることに感動した覚えがあります。
cat /dev/cdrom > hoge.iso
Karesansuiの主な軌跡(バージョン・ヒストリー)を教えてください
実はこれといったバージョンを持たずに1.0.0のリリースを迎えました。ですが今後は、あらかじめロードマップやマイルストーンを立て着実にバージョンアップを行えたらと思ってます。
今後のプロジェクトの方向性は?
1.0.1ではまだ基本的な仮想化機能を網羅しているだけですが、今後はホスト、ゲストの監視やリソースプール(ハードウェアの抽象化)、HAなどサーバーマネージメントに特化したソフトが作れればと思っています。アイコンについても随時公開していきます。期待してくださいww
このプロジェクトに貢献するにはどうすればよい?
プロジェクトはまだ立ち上がったばかりですので、対応プラットフォームが少なかったリ、不具合も見つかることがあるかと思います。ご要望はどしどし受付中ですので、メーリングリストやフォーラム等でご報告をお願いします。
また、ドキュメントの英訳・和訳も完全に終っていません。間違いや、記述が不完全な点があるかと思います。このへんはWikiで進めていますので、気付いた点があればぜひ修正いただければと思います(Karesansuiのフォーラム、メーリングリストの情報はhttp://karesansui-project.info/projects/karesansui/boardsにあります)。
SourceForge.jpへの要望をお聞かせください
ダウンロード元のサーバーですが、海外ミラーの充実とかがあると嬉しいですね!
ご意見・ご感想などは、SourceForge.JP Wikiの「今月のプロジェクト」ページまでお寄せください。また、インタビューのリクエストなどもお待ちしています。