第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 サービスおよびその他のコンポーネントの機能グループが含まれています。たとえば、MariaDB データベースを使用する glance-api および glance-registry Linux サービスは、Image サービスを実装します。
2.1. コンポーネント リンクのコピーリンクがクリップボードにコピーされました!
このセクションは、各 OpenStack コンポーネントについて説明します。
OpenStack Dashboard (horizon)
OpenStack 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 を使用してブロックデバイスを作成/削除し、サーバーへのブロックデバイスの接続を管理することができます。
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-tenant のユースケースの解決策を提供します。
OpenStack Shared File Systems サービス (manila)
OpenStack Shared File Systems サービスは、コンピュートインスタンスが使用可能な共有ファイルシステムを提供します。Shared File Systems の基本リソースは、共有、スナップショット、共有ネットワークです。
OpenStack DNS-as-a-Service (designate)
注記この機能は Red Hat OpenStack Platform 15 で非推奨となったため、Red Hat では全面的にはサポートしていません。
DNSaaS には、ドメインおよびレコードを管理するための REST API が実装されてます。マルチテナントに対応し、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 の環境が効率的に稼働する状態を維持するには、director を使用して、Red Hat OpenStack Platform の主要な全サービスにわたって高可用性および負荷分散を提供する構成を作成できます。
OpenStack Operational Tools
Red Hat OpenStack Platform には、集中ロギング、可用性の監視、パフォーマンスの監視などのオプションのツールスイートが同梱されています。これらのツールを使用して OpenStack 環境を維持することができます。