クラウド技術用語(6)オープンソースのクラウド技術(IaaS編)
OpenStackやCloudStackに代表されるオープンソースのクラウド基盤ソフトウェアは、サーバー、ストレージ、ネットワークなどを統合的に管理し、ユーザーの要求に応じてオンデマンドで指定されたスペックの仮想マシンやストレージの環境を構築できセルフポータルサービス機能を持つソフトウェアです。
OpenStackは、米航空宇宙局(NASA)の独自クラウド基盤である「Nebula」をベースに、クラウド事業者のRackspaceと共同で開発されたプロジェクトで、現在は完全なオープンソースとして公開されています。フルオープンな開発スタイルと多くの企業が参加する活発なコミュティーが強みです。
2012年9月にはLinux FoundationをモデルにOpenStackの管理団体となる非営利団体「OpenStack Foundation」が発足しています。
OpenStackは、Apacheライセンス2.0を通して開発したソースコードを完全なオープンソースとして公開しています。標準開発言語はPython、標準外部APIはOpenStack APIの独自APIで REST API(HTTPベース)とAmazon EC2/S3 互換API、標準OSは Ubuntu Linuxとなっています。OpenStackは、大規模システムにも対応するスケーラビリティーを備え、特定のベンダにロックインされない業界標準仕様のクラウド基盤を開発し、クラウド技術のイノベーションを促進することなどを指針としています。
無償のオープンソース版と有償のエンタープライズ版といった機能やサポートの異なるエディションを提供するOpen Core戦略はとらず、商用版のようなクローズエディションを作らず、中立性・透明性の確保を徹底しています。
OpenStackプロジェクトの開発体制は、コミュニティーベースとなっており、意思決定のプロセスや開発プロセスはすべてオープンで公開されています。
OpenStackは、ハイパーバイザー制御やベアメタルプロビジョニングを行うNovaや仮想ネットワーク制御を行うNeutronなど、単独でも利用可能なコンポーネントから構成されています。
OpenStackプロジェクトは、これまでにリリースコード名 「Austin」(2010年10月)からLiberty(2015年10月)まで6か月ごとに合計12回のメジャーリリースをしており、機能面での進化を続けています。