検索
連載

OpenStackで激変するシステム開発・運用 “抽象化”が実現する「究極の自動化」とは特集:OpenStack超入門(3)(2/3 ページ)

前回はOpenStackの活用ポイントと、今後のシステム開発・運用に与える影響――特に自動化にフォーカスして紹介した。今回は日本OpenStackユーザ会 会長の中島倫明氏が、「OpenStackによる自動化の仕組みと実施法」を分かりやすく解説する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

OpenStackコンポーネントが担当する機能

 次にOpenStackを横(担当機能)に分割してみます。OpenStackは複数のソフトウェアコンポーネントが集合することで形成されています。これはコンポーネントごとに担当する抽象化の機能が異なっているためです。図2にOpenStackの基本機能部分を担当するコンポーネントの概要をまとめます。

ALT
図2  OpenStackの基本機能《クリックで拡大》

Nova

 いわゆるサーバーに関する機能を担当しています。「KVM」「Xen」といったOSS系から、商用の「VMware」「Hyper-V」も管理可能です。また仮想サーバーだけでなく、ベアメタルサーバーや「Docker」「LXC」などのコンテナ系技術を操作することも可能です。ベアメタルサーバー管理機能については、次の「Kilo」リリースで、「Ironic」というコンポーネントに分割される予定です。これにより、仮想サーバー/コンテナーの「Nova」、ベアメタルの「Ironic」と明確に役割が分割される予定です。

Neutron

 ネットワーク機能を担当します。作成したサーバーをどのようにネットワークに接続するかといった基本的なL2ネットワークから、ネットワーク間のルーティングを担当するL3機能が基本となります。その他にも、起動したサーバーにアドレスを払い出すDHCP機能、ロードバランサー機能、VPN機能、ファイアウォール機能など、多数の機能を備えます。多くのプラグインを備えており、Neutron上で定義した論理ネットワーク構成を、さまざまな実環境下へ構築することができます。

Cinder

 ストレージ機能を担当します。サーバーに対してブロックストレージ機能を提供する他、ブロックストレージのスナップショット、クローンといった一般的なストレージが備える機能をサポートしています。一般的にNovaが管理するディスクよりも、高速で高信頼なデータ保存領域を提供しています。

 このNova/Neutron/Cinderの3つは、特に多くのドライバーとプラグインを持ち、数多くのソフトウェア、製品に対応しています。Novaを例に縦の階層構造を図解すると、図3のようになります。

ALT
図3  NovaのAPI/DB/ドライバー

 APIが標準化された仮想サーバーの操作方法をユーザーへ提供し、そこで操作されて作られた論理的なインフラのデータが、Novaの持つDBへと格納されます。ドライバーはそのDBを見て、自身が担当するソフトウェアやハードウェアをどのように操作するかを判断して、実際のサーバー環境が構築されていきます。

 残りのコンポーネントと、ここに書ききれなかったコンポーネントを含めて以下にまとめました。なお、開発中のものも含めたコンポーネント一覧はこちらをご覧ください。

コンポーネント名 担当機能
Nova ハイパーバイザーやベアメタルサーバー、コンテナー制御
Neutron ネットワーク制御(L2、L3、LBaaS、VPN、FW)
Cinder ブロックストレージ制御とバックアップ機能
Glance OSイメージとスナップショット管理
Swift オブジェクトストレージ機能
Horizon Webベースダッシュボード
Keystone 統合認証機能
Ceilometer 統計情報の収集とトリガー発信機能
Heat オーケストレーション機能
Trove DBaaS機能。様々なデータベースをサービスとして利用可能にする
Sahara HadoopやSparkといったデータ処理機能を提供する
表1 「Juno」リリースにおけるOpenStackコンポーネント

Copyright © ITmedia, Inc. All Rights Reserved.

[an error occurred while processing this directive]
ページトップに戻る