第2章 ソフトウェア
Red Hat OpenStack Platform IaaS クラウドは、コンピューティング、ストレージ、ネットワークのリソースを制御するために相互に対話するサービスのコレクションとして実装されます。クラウドは、Web ベースのダッシュボードまたはコマンドラインクライアントで管理されます。これにより、管理者は OpenStack リソースの制御、プロビジョニング、自動化を行うことができます。OpenStack は、クラウドの全ユーザーが利用できる豊富な API も提供しています。
以下の図は、OpenStack のコアサービスとそれらの相互関係の俯瞰的な概要を示しています。
以下の表には、上図に示した各コンポーネントについての簡単な説明と、それぞれのセクションへのリンクをまとめています。
サービス | コード | 説明 | |
---|---|---|---|
| horizon | OpenStack の各サービスの管理に使用する Web ブラウザーベースのダッシュボード | |
| keystone | OpenStack サービスを認証および承認し、ユーザー/プロジェクト/ロールを管理する一元化されたサービス | |
| neutron | OpenStack サービスのインターフェース間の接続性を提供します。 | |
| octavia | クラウドの負荷分散サービスを提供します。 | |
| cinder | 仮想マシン用の永続的な Block Storage ボリュームを管理します。 | |
| nova | ハイパーバイザーノードで実行されている仮想マシンの管理とプロビジョニングを行います。 | |
| glance | 仮想マシンイメージやボリュームのスナップショットなどのリソースの保管に使用するレジストリーサービス | |
| swift | ユーザーによるファイルおよび任意のデータの保管/取得を可能にします。 | |
| ceilometer | クラウドリソースの計測値を提供します。 | |
| heat | リソーススタックの自動作成をサポートする、テンプレートベースのオーケストレーションエンジン |
各 OpenStack サービスには、Linux サービスおよびその他のコンポーネントの機能グループが含まれています。たとえば、glance-api および glance-registry Linux サービスは MariaDB データベースとともに Image サービスを実装します。
2.1. コンポーネント
このセクションは、各 OpenStack コンポーネントを詳細にわたり説明しています。
OpenStack Dashboard (horizon)
OpenStack Dashboard は、ユーザーおよび管理者がインスタンスの作成/起動やネットワークの管理、アクセス制御の設定などの操作を行うためのグラフィカルユーザーインターフェースを提供します。
Dashboard サービスは、プロジェクト、管理、設定のデフォルトダッシュボードを提供します。Dashboard は、モジュール型設計により、課金、モニタリング、追加の管理ツールなどの他の製品と連結することができます。
OpenStack Identity (keystone)
OpenStack Identity は、全 OpenStack コンポーネントに対してユーザーの認証と承認を提供します。Identity は、ユーザー名/パスワード認証情報、トークンベースのシステム、AWS 式のログインなど複数の認証メカニズムをサポートしています。
OpenStack Networking (neutron)
OpenStack Networking は、OpenStack クラウド内の仮想ネットワークインフラストラクチャーの作成と管理を処理します。インフラストラクチャー要素にはネットワーク、サブネット、ルーターなどが含まれます。
Load-balancing (octavia)
OpenStack Load-balancing サービス (octavia) は、Red Hat OpenStack Platform director のインストール環境で、Load Balancing-as-a-Service (LBaaS) の実装を提供します。負荷分散機能を実現するために、octavia では複数のプロバイダードライバーを有効にする設定がサポートされます。参照プロバイダードライバー (Amphora プロバイダードライバー) は、オープンソースのスケーラビリティーに優れた高可用性負荷分散プロバイダーです。仮想マシン群 (amphora と総称される) を管理し、オンデマンドで起動することで、負荷分散サービスを提供します。
OpenStack Block Storage (cinder)
OpenStack Block Storage サービスは、仮想ハードドライブの永続的なブロックストレージ管理機能を提供します。Block Storage により、ユーザーはブロックデバイスの作成/削除やサーバーへの Block Device の接続を管理することができます。
OpenStack Compute (nova)
OpenStack Compute サービスは、オンデマンドで仮想マシンを提供する、OpenStack クラウドの中核です。Compute は、下層の仮想化メカニズムと対話するドライバーを定義し、他の OpenStack コンポーネントに機能を公開することにより、仮想マシンが一式のノード上で実行されるようにスケジュールします。
OpenStack Image (glance)
OpenStack Image は、仮想ディスクイメージのレジストリーとして機能します。ユーザーは、新規イメージを追加したり、既存のサーバーのスナップショットを作成して直ちに保存したりすることができます。スナップショットはバックアップ用、またはサーバーを新規作成するためのテンプレートとして使用できます。
OpenStack Object Storage (swift)
Object Storage サービスは、HTTP 経由でアクセス可能な、大量データ用のストレージシステムを提供します。ビデオ、イメージ、メールのメッセージ、ファイル、仮想マシンイメージなどの静的エンティティーをすべて保管することができます。オブジェクトは、各ファイルの拡張属性に保管されているメタデータとともに、下層のファイルシステムにバイナリーとして保管されます。
OpenStack Telemetry (ceilometer)
OpenStack Telemetry は、OpenStack をベースとするクラウドのユーザーレベルの使用状況データを提供します。データは、顧客の課金、システムの監視、警告に使用することができます。Telemetry は既存の OpenStack コンポーネント (例: Compute の使用イベント) や libvirt などの OpenStack インフラストラクチャーリソースのポーリングにより送信される通知からデータを収集することができます。
OpenStack Orchestration (heat)
OpenStack Orchestration は、ストレージ、ネットワーク、インスタンス、アプリケーションなどのクラウドリソースを作成および管理するためのテンプレートを提供します。テンプレートは、リソースのコレクションであるスタックの作成に使用されます。
OpenStack Data Processing (sahara)
OpenStack Data Processing により、OpenStack 上の Hadoop クラスターのプロビジョニングと管理を行うことができます。Hadoop は、クラスター内の大量の構造化/非構造化データを保管および分析します。
OpenStack Bare Metal Provisioning (ironic)
OpenStack Bare Metal Provisioning を使用して、ハードウェア固有のドライバーを使用するさまざまなハードウェアベンダーの製品で物理マシンまたはベアメタルマシンのプロビジョニングを行います。Bare Metal Provisioning は Compute サービスと統合して、仮想マシンのプロビジョニングと同じ方法で、ベアメタルマシンのプロビジョニングを行い、bare-metal-to-trusted-project のユースケースの解決策を提供します。
OpenStack Shared-Filesystems-as-a-Service (manila)
OpenStack Shared-Filesystems-as-a-Service は、コンピュートインスタンスが使用可能な共有ファイルシステムを提供します。Shared File Systems が提供する基本的なリソースは、共有、スナップショット、共有ネットワークです。
OpenStack DNS-as-a-Service (designate)
注記この機能は、本リリースではテクノロジープレビューとして提供しているため、Red Hat では全面的にはサポートしていません。これは、テスト用途にのみご利用いただく機能で、実稼働環境にデプロイすべきではありません。テクノロジープレビューについての詳しい情報は「対象範囲の詳細」を参照してください。
DNSaaS にはドメインとレコードの管理のための REST API が実装されており、マルチテナントに対応しています。また DNSaaS は OpenStack Identity サービス (keystone) と統合して認証を行います。DNSaaS には Compute (nova) および OpenStack Networking (neutron) の通知と統合するフレームワークが実装されており、DNS レコードの自動生成が可能です。さらに、DNSaaS は PowerDNS および Bind9 の統合もサポートしています。
OpenStack Key Manager (barbican)
OpenStack Key Manager サービスは、パスワード、暗号化鍵、X.509 などのシークレットのセキュアなストレージ、プロビジョニング、管理のために設計された REST API です。これには、対称キー、非対称キー、証明書、RAW バイナリーデータなどの鍵マテリアルが含まれます。
Red Hat OpenStack Platform director
Red Hat OpenStack Platform director は、完全な OpenStack 環境のインストールおよび管理を行うためのツールセットです。director は、主に OpenStack プロジェクト TripleO (「OpenStack-On-OpenStack」の略語) をベースとしてます。このプロジェクトは、OpenStack のコンポーネントを活用して、完全に機能する OpenStack 環境をインストールします。これには、OpenStack ノードとして使用するベアメタルシステムのプロビジョニングや制御を行う新たな OpenStack のコンポーネントが含まれます。director により、効率的で堅牢性の高い、完全な Red Hat OpenStack Platform 環境を簡単にインストールできます。Red Hat OpenStack Platform director は、アンダークラウドとオーバークラウドという 2 つの主要な概念を採用しています。アンダークラウドがオーバークラウドのインストールおよび設定を行います。
OpenStack High Availability
OpenStack の環境が効率的に稼働する状態を維持するには、Red Hat OpenStack Platform director を使用して、OpenStack の主要な全サービスにわたって高可用性および負荷分散を提供する構成を作成できます。
OpenStack Operational Tools
Red Hat OpenStack Platform には、OpenStack 環境の維持管理に役立つように設計された集中ロギング、可用性の監視、パフォーマンスの監視などのオプションのツールスイートが同梱されています。
2.2. 統合
Red Hat OpenStack Platform は、以下のサードパーティー製ソフトウェアと統合することができます (テストおよび承認済みのソフトウェア)。
2.3. インストールの概要
Red Hat は、以下の手法での Red Hat OpenStack Platform のインストールをサポートします。
Red Hat OpenStack Platform director の使用: エンタープライズのデプロイメントに推奨します。Red Hat OpenStack Platform director は、完全な OpenStack 環境のインストールおよび管理を行うためのツールセットです。director は、主に OpenStack プロジェクト TripleO (「OpenStack-On-OpenStack」の略語) をベースとしてます。このプロジェクトは、OpenStack のコンポーネントを活用して、完全に機能する OpenStack 環境をインストールします。これには、OpenStack ノードとして使用するベアメタルシステムのプロビジョニングや制御を行う新たな OpenStack のコンポーネントが含まれます。director により、効率的で堅牢性の高い、完全な Red Hat OpenStack Platform 環境を簡単にインストールできます。
Red Hat OpenStack Platform director は、アンダークラウドとオーバークラウドという 2 つの主要な概念を採用しています。アンダークラウドがオーバークラウドのインストールおよび設定を行います。詳しくは、『director のインストールと使用方法』を参照してください。
packstack の使用: この方法で実装される OpenStack デプロイメントは、1 台のマシン上でパブリックネットワークとプライベートネットワークから構成され、CirrOS イメージを 1 つホストし、ストレージボリュームが接続されます。インストールされる OpenStack サービスには Block Storage、Compute、Dashboard、Identity、Image、OpenStack Networking、Object Storage、および Telemetry が含まれます。packstack は OpenStack を迅速にデプロイするコマンドラインユーティリティーです。
注記packstack によるデプロイメントは、概念実証タイプのテスト環境を対象としており、実稼動環境には適切ではありません。デフォルトでは、パブリックネットワークは OpenStack ホストからのみルーティング可能です。
詳しい情報は、「Evaluating OpenStack: Single-Node Deployment」を参照してください。
これらのインストールオプションを比較するは、「Installing and Managing Red Hat OpenStack Platform」を参照してください。
2.4. サブスクリプション
Red Hat OpenStack Platform をインストールするには、OpenStack 環境にある全システムを Red Hat サブスクリプションマネージャーで登録して、必要なチャンネルをサブスクライブします。下記のガイドに、Red Hat OpenStack Platform のデプロイ前にサブスクライブする必要のあるチャンネルおよびリポジトリーを詳しくまとめています。
- 『director のインストールと使用方法』の「要件」
- 「Evaluating OpenStack: Single-Node Deployment」