本連載後半では、OpenStackのコンポーネントの詳細について、毎回解説していきます。
前述したとおり、OpenStackは3回目の誕生日を迎え、最初のリリースであるAustinから既に7回のリリースが行われています(Habanaで8回目)。各リリースごとにさまざまなコンポーネントが新たにリリースされていますが、これはOpenStackの名前が示すとおり「スタック型」のアーキテクチャを採用しているためです。
スタックというのはやや聞き慣れない言葉ですが、「積み重ねる」という意味です。例えば、積み重ねて置いておけるイスのことを「スタッキングチェア」と呼びます。同じように、OpenStackでもいろいろなコンポーネントが積み重なって、全体としてOpenStackというソフトウェア群を構成しています。かなり大規模なソフトウェア群となるため、別名「Cloud OS」と呼ばれることもあります。
2013年4月にリリースされた、最新版のGrizzlyがどのようなコンポーネントで構成されているかを見てみましょう。以下の通り、7つのコンポーネントで構成されています。
コンポーネント名 | コンポーネントの説明 |
---|---|
Nova | AWSのAmazon EC2およびEBSに相当するコンピュータ(計算機)インフラ |
Swift | 分散オブジェクトストレージ |
Glance | イメージ管理サービス 仮想マシンのイメージを登録 |
Horizon | Web管理コンソール |
Keystone | 統合認証 |
Neutron(旧名 Quantum) | 仮想ネットワーク管理 |
Cinder | ブロックストレージ |
各コンポーネントが、それぞれHTTPで呼び出せるREST APIを公開することで、お互いが協調動作するようになっています。
利用者は必要なコンポーネントを「スタック」してシステムを構成できますし、OpenStackで必要な機能が提供されていない場合には、自分で作成したアプリケーションとAPIで連携させることもできます。
例えば、最近では大規模なストレージを構築するために、Amazon S3互換の分散オブジェクトストレージ「Swift」を単独で使用したい、というニーズが増えているようです。
また、独自に開発した運用管理用のアプリケーションから仮想マシンインスタンスの起動などを行うこともできます。
このように必要な機能だけ利用できるのがスタック型アーキテクチャの良い点でしょう。
一方で、機能はそれぞれのコンポーネントに分散しているため、何か問題が発生したときに原因の所在を把握するのが難しい場合もあります。
それぞれのコンポーネントがどのような機能を司っているのか、しっかりと把握しておく必要があるでしょう。次回は、OpenStackの中心的なコンポーネントであるNovaについて解説します。
Copyright © ITmedia, Inc. All Rights Reserved.