カスタム Block Storage バックエンドのデプロイメントガイド
Red Hat OpenStack Platform オーバークラウドでのカスタムの Block Storage バックエンドのデプロイガイド
概要
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ を参照してください。
第1章 Block Storage サービスのカスタムバックエンドのデプロイの概要 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenStack Platform director は、手動の設定を最小限に抑え、完全なエンタープライズレベルの OpenStack デプロイメントをインストールし、管理します。director の詳細は、director のインストールと使用方法 を参照してください。
director が作成する Openstack 環境は、オーバークラウドと呼ばれます。オーバークラウドには、Block Storage など、エンドユーザーにサービスを提供するすべてのコンポーネントが含まれます。このドキュメントでは、オーバークラウド上の Block Storage サービス (cinder) にカスタムのバックエンドをデプロイする方法について説明します。デフォルトでは、Block Storage サービスはコントローラーノードにインストールされています。
前提条件
- director を使用してオーバークラウドをインストールしている。
- オーバークラウドに、機能する Block Storage サービスが設定されている。
- Block Storage の概念および設定を理解している。Block Storage の詳細は、Storage GuideのBlock Storage and Volumesを参照してください。
この手順は、一部のユースケースでテストされています。最初に、計画したデプロイメントを実稼働環境以外の環境でテストするようにしてください。不明な点は Red Hat サポートにお問い合わせください。
1.1. カスタムバックエンドについて リンクのコピーリンクがクリップボードにコピーされました!
カスタムバックエンドは、まだ Red Hat OpenStack Platform director に完全に統合されていないストレージサーバー、アプライアンス、または設定です。サポート対象の Block Storage バックエンドは、すでにビルトインの director ファイルで統合および事前設定されています。たとえば、Red Hat Ceph および Dell EMC PS Series、Dell Storage Center、NetApp アプライアンスの設定などです。
一部の統合済みストレージアプライアンスは、シングルインスタンスのバックエンドのみをサポートします。たとえば、Dell Storage Center 向けに事前に設定された director ファイルでは、単一のバックエンドしかデプロイできません。このアプライアンスのバックエンドインスタンスを複数デプロイする場合は、カスタム設定が必要です。
Block Storage サービスが配置されているノード上の /etc/cinder/cinder.conf ファイルを直接編集して Block Storage サービスを手動で設定できますが、openstack overcloud deploy コマンドを実行すると、設定が director により上書きされます。詳細は、3章設定済みのバックエンドのデプロイ を参照してください。director を使用して Block Storage バックエンドをデプロイし、オーバークラウドのデプロイメントと更新を行っても、設定が永続されるようにします。
バックエンド設定が完全に統合されている場合は、パッケージ化された環境ファイルを編集して呼び出すことができます。ただし、カスタムバックエンドの場合は、独自の環境ファイルを作成する必要があります。本ガイドには、デプロイメント用に編集可能な /home/stack/templates/custom-env.yaml ファイルが含まれます。このサンプルファイルは、2 つの NetApp バックエンドを使用するように Block Storage サービスを設定するのに適しています。環境ファイルの詳細は、director のインストールと使用方法のオーバークラウドデプロイメントへの環境ファイルの追加を参照してください。
1.2. 要件 リンクのコピーリンクがクリップボードにコピーされました!
カスタムの Block Storage バックエンドを設定するには、以下の前提条件を追加で環境に適用する必要があります。
- サードパーティーのバックエンドアプライアンスを使用している場合には、それらをストレージリポジトリーとして設定している。
- director のインストールと使用方法に記載の手順に従って、director を使用してオーバークラウドをデプロイしている。
-
昇格した特権を持つアカウントのユーザー名およびパスワードを所有している。作成したのと同じ
stackユーザーアカウントを使用して、オーバークラウドをデプロイできる。 -
/etc/cinder/cinder.confで、Block Storage バックエンドに必要な設定をすでに計画している。
1.3. 設定プロセスについて リンクのコピーリンクがクリップボードにコピーされました!
カスタムバックエンドを使用するように Block Storage サービスを設定するには、以下の手順が必要です。
- 環境ファイルの作成。詳細は、2章環境ファイルの作成 を参照してください。
- 設定済みのバックエンドのデプロイ。詳細は、3章設定済みのバックエンドのデプロイ を参照してください。
- 設定したバックエンドのテスト。詳細は、
第2章 環境ファイルの作成 リンクのコピーリンクがクリップボードにコピーされました!
カスタムバックエンド設定用に作成する環境ファイルには、定義する各バックエンドの設定が含まれます。また、カスタムバックエンドのデプロイメントに関連するその他の設定も含まれます。環境ファイルについての詳細は、オーバークラウドの高度なカスタマイズ の 環境ファイル を参照してください。
以下のサンプル環境ファイルは、 netapp1 および netapp2 の 2 つの NetApp バックエンドを定義します。
/home/stack/templates/custom-env.yaml
- 1
- 以下のパラメーターは
falseに設定され、他のバックエンドタイプが無効になります。-
CinderEnableIscsiBackend: 他の iSCSI バックエンド -
CinderEnableRbdBackend: Red Hat Ceph -
CinderEnableNfsBackend: NFS -
NovaEnableRbdBackend: 一時 Red Hat Ceph ストレージ
-
- 2
- GlanceBackend パラメーターは、Image サービスがイメージを保存するために使用するものを設定します。以下の値を使用できます。
-
file: 各コントローラーノードの/var/lib/glance/imagesにイメージを保存します。 -
Swift: イメージストレージに Object Storage サービスを使用します。 -
Cinder: イメージストレージに Block Storage サービスを使用します。
-
- 3
ControllerExtraConfigは、全コントローラーノードに適用されるカスタム設定を定義します。cinder::config::cinder_configクラスは、設定を Block Storage(cinder) サービスに適用する必要があることを意味します。- 4
netapp1/volume_driverおよびnetapp2/volume_driver設定は、section/setting の構文に準拠します。Block Storage サービスでは、各バックエンドは/etc/cinder/cinder.confの独自のセクションで定義されます。netapp1接頭辞を使用する各設定は、新しい[netapp1]バックエンドセクションで定義されます。- 5
netapp2設定は、別の[netapp2]セクションで定義されます。- 6
valueの接頭辞は先行設定を行います。- 7
cinder_user_enabled_backendsクラスは、カスタムバックエンドを設定して有効にします。このクラスは、ユーザー対応バックエンド (具体的にはcinder::config::cinder_configクラスで定義されるもの) にのみ使用します。cinder_user_enabled_backendsを使用して、director でネイティブに有効化できるバックエンドをリスト表示しないでください。サポートされている NetApp アプライアンスまたは Dell アプライアンスには、Red Hat Ceph、NFS、および単一のバックエンドが含まれます。たとえば、Red Hat Ceph バックエンドを有効にする場合には、cinder_user_enabled_backendsにリストを表示しないでください。CinderEnableRbdBackendをtrueに設定して有効にします。
OpenStack Block Storage 用の Red Hat Ceph バックエンドの定義の詳細は、コンテナー化された Red Hat Ceph を持つオーバークラウドのデプロイ を参照してください。
/home/stack/templates/custom-env.yaml から作成された /etc/cinder/cinder.conf の設定を確認するには、付録A 付録を参照してください。
第3章 設定済みのバックエンドのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
設定したバックエンドをデプロイするには、以下の手順を実施します。
-
stackユーザーとしてログインします。 以下のコマンドを実行して、カスタムバックエンド設定をデプロイします。
openstack overcloud deploy --templates -e /home/stack/templates/custom-env.yaml
$ openstack overcloud deploy --templates -e /home/stack/templates/custom-env.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重要オーバークラウドの作成時に追加の環境ファイルを渡した場合は、予定外の変更がオーバークラウドに加えられないように、ここで
-eオプションを使用して環境ファイルを再度渡します。詳しい情報は、director のインストールと使用方法ガイドの オーバークラウド環境の変更 を参照してください。
第4章 設定したバックエンドのテスト リンクのコピーリンクがクリップボードにコピーされました!
バックエンドをオーバークラウドにデプロイした後に、そこにボリュームを正常に作成できることをテストします。
手順
stackユーザーとして以下のコマンドを実行し、home/stack/overcloudrecで定義した環境変数を読み込みます。source /home/stack/overcloudrc
$ source /home/stack/overcloudrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow
詳細は、director のインストールと使用方法 のオーバークラウドへのアクセスを参照してください。
バックエンドごとにボリュームタイプを作成します。
stackユーザーとしてオーバークラウドのコントローラーノードにログインし、以下のコマンドを実行します。cinder type-create backend1 cinder type-create backend2
$ cinder type-create backend1 $ cinder type-create backend2Copy to Clipboard Copied! Toggle word wrap Toggle overflow これらのコマンドにより、作成した環境ファイルの
cinder::config::cinder_configクラスで定義されるバックエンドごとに、backend1とbackend2のボリュームタイプが作成されます。作成した環境ファイルの
cinder_user_enabled_backendsクラスで有効化されたバックエンドのvolume_backend_nameに、各ボリュームタイプをマップします。以下のコマンドは、ボリュームタイプbackend1をnetapp1に、backend2をnetapp2にマッピングします。cinder type-key backend1 set volume_backend_name=netapp1 cinder type-key backend2 set volume_backend_name=netapp2
$ cinder type-key backend1 set volume_backend_name=netapp1 $ cinder type-key backend2 set volume_backend_name=netapp2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
backend1のボリュームタイプを呼び出して、netapp1にバックエンドを作成できることを確認します。cinder create --volume-type backend1 --display_name netappvolume_1 1
$ cinder create --volume-type backend1 --display_name netappvolume_1 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow backend2のボリューム種別を呼び出して、netapp2バックエンド上に同様のボリュームを作成します。cinder create --volume-type backend2 --display_name netappvolume_2 1
$ cinder create --volume-type backend2 --display_name netappvolume_2 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow
付録A 付録 リンクのコピーリンクがクリップボードにコピーされました!
サンプル環境ファイルの設定
2章環境ファイルの作成 で作成した環境ファイルは、Block Storage サービスが 2 つの NetApp バックエンドを使用するように設定します。以下のスニペットには、関連する設定が表示されます。