OpenStackの次期リリース名はGrizzlyに決定
~リリースから2年を迎えたOpenStackの動向(前編)
2012年7月11日、OpenStackの7thリリースの名前が、投票により Grizzlyに決定しました。OpenStackリリースから2年を迎え、現在は2012年9月27日リリース予定の6thリリースFolsomに向けた開発がすすめられています。
■OpenStackとは
OpenStackとは、一言で言うとオープンソースのクラウド基盤ソフトウェアです。仮想化されたサーバー、ストレージ、ネットワークを一元的に管理・制御し、ユーザーからの要求に応えます。
OpenStackは数あるオープンソースのクラウド基盤ソフトウェアの1つですが、2010年7月にリリース当初から今に至るまで、幅広い企業、ユーザから注目を集め、勢いを増しています。日本での実績はまだ少ないですが、ここでは、OpenStackの動向を、開発・利用の側面から紹介していきたいと思います。
■OpenStackの特徴はオープンであること
OpenStackの特徴の1つに、リリース当初からソースコードだけでなく、開発もオープンであることがあります。Ubuntuに習ったコミュニティの運営を行っており、約半年毎にDesign Summit という世界中から開発者が一堂に集まる会議を開き、方針・仕様・設計・実装など、その後の開発の方向性を議論します【図1】。
直近では、2012年4月5日に5thリリースである Essexがリリースされた直後4月16日~17日にかけて6th リリースFolsomに向けたDesign Summitが開催されました。Folsomリリース後のGrizzlyに向けたDesign Summitは、10月15日からSan Diagoで行われる予定です。
また、OpenStackのリリース名はAから順番に地名がついていますが、これもオープンな場の投票で決定されています。
【図1】OpenStackのリリース、およびDesign Summit開催時期の関係 |
■OpenStackモジュール構成
OpenStackは複数のモジュールから構成されています【図2】。 Folsomリリース時点のコアモジュールは、仮想サーバの管理をつかさどるNova, 仮想ストレージの管理をつかさどる Swift、データを連携するGlance、IDを連携するKeystone、ダッシュボードのHorizonと、Folsomから新しくコアモジュールに加わる予定の、仮想ネットワークを制御するQuantumとvolumeを制御するCinderです。
【図2】OpenStackのモジュール構成(Folsom) |
■仮想マシン起動までの流れ
現在開発中のFolsomでの代表的な仮想マシン起動までの流れは、以下のようになる予定です【図3】。
【図3】代表的な仮想マシン起動までの流れ |
(1) | ユーザーがHorizonにアクセスしID/Passwordを入力します。 |
(2) | HorizonはKeystone認証を行い、トークンを取得します。Horizonは、その後の操作要求はトークンを付きで発行し、要求を受け取った各モジュールはトークン情報をもとに権限の確認を行います。 |
(3) | ユーザーが仮想マシンのテンプレートイメージをGlanceへ登録します。(Essexリリース時のHorizonにはテンプレートを登録する機能がないので、コマンドラインで行う必要があります) |
(4) | 登録されたテンプレートイメージはGlanceでカタログ化され、実体はSwiftへ格納されます。 |
(5) | ユーザーが仮想マシンの作成を依頼します。 |
(6) | Nova(Scheduler)が、どのコンピュートノード(Nova(Compute))に仮想マシンを立ち上げるかを決定し、Quantumが、事前に設定したネットワークの種類に沿った設定(IPアドレスの割り当てなど)を行います。 |
(7) | ・Nova(Scheduler)が、(6)で選択したNova(Compute)に仮想マシン起動要求を出します。 ・Nova(Compute)は、Swiftから仮想マシンテンプレートをダウンロードし、仮想マシンを起動します。 ・必要に応じてユーザーが、起動した仮想マシンにCinderが管理するデータ領域をアタッチし、仮想マシンからアタッチされた領域をマウントします。 |
■今のモジュール構成に至る経緯
OpenStackのリリースに伴うモジュール構成の遷移を示します【図4】。2010年7月のAustinリリース当初のコアモジュールは、クラウド基盤を実現する最低限として仮想マシンイメージを格納するSwiftと仮想マシンの制御をするNovaから始まりました。
【図4】OpenStackモジュール構成の遷移 |
Bexarリリースでは、NovaとSwiftを連携するモジュールとしてGlanceが開発されNovaが利用する仮想マシンイメージをSwiftに格納できるようになりました。
Diabloリリースでは、KeystoneとHorizonがコアモジュールとして開発されました。Keystoneによって、NovaとSwiftのID認証を一元管理できるようになり、NovaとSwiftが疎に結合する今の形になりました。ダッシュボードのHorizonはNovaから切り出され、独立したモジュールとして開発を進められるようになりました。
この頃から、機能豊富だったNovaでは機能を分離し、それぞれで独立した開発を進める動きが強まっていきます。Folsomリリースからは、仮想ネットワーク制御を担うQuantumと、ブロックストレージを担うCinderがそれぞれ独立したコアモジュールとなることが決定しています。
(明日の後編につづく)