2.9. Block Storage サービス (cinder) の整合性グループ
Block Storage (cinder) サービスを使用して、整合性グループを設定して複数のボリュームを単一のエンティティーとしてグループ化することができます。つまり、複数のボリュームに対して個別に操作を実行するのではなく、同時に複数のボリュームに対して操作を実行することができます。整合性グループを使用して、複数ボリュームのスナップショットを同時に作成することができます。また、これらのボリュームを同時にリストアまたはクローン作成することも可能です。
1 つのボリュームを複数の整合性グループのメンバーにすることができます。ただし、ボリュームを整合性グループに追加した後に、そのボリュームを削除、種別変更、移行することはできません。
2.9.1. Block Storage サービスの整合性グループの設定 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、整合性グループの API は Block Storage のセキュリティーポリシーにより無効にされています。この機能を使用するには、ここで有効にする必要があります。Block Storage API サービスをホストするノードの /etc/cinder/policy.json ファイルの関連する整合性グループエントリー openstack-cinder-api にデフォルト設定がリストされています。
環境ファイルでこれらの設定を変更してから、openstack overcloud deploy コマンドを使用してオーバークラウドにデプロイする必要があります。JSON ファイルを直接編集しないでください。次回オーバークラウドがデプロイされる際に変更が上書きされてしまうためです。
前提条件
- アンダークラウドがインストールされる。詳細は、director を 使用した Red Hat OpenStack Platform のインストールと管理の director のインストールを参照してください。
手順
-
アンダークラウドホストに
stackユーザーとしてログインします。 stackrcアンダークラウド認証情報ファイルを入手します。source ~/stackrc
$ source ~/stackrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
環境ファイルを編集し、
parameter_defaultsセクションに新しいエントリーを追加します。これにより、openstack overcloud deployコマンドを使用して環境が再デプロイされるたびに、エントリーがコンテナーで更新され保持されるようになります。 CinderApiPoliciesを使用して環境ファイルに新規セクションを追加し、整合性グループの設定を定義します。JSON ファイルのデフォルト設定を持つ同等のparameter_defaultsセクションは、次のように表示されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
値
'group:nobody'は、この機能を使用できるグループがないことを決定するため、効果的に無効になります。これを有効にするには、グループを別の値に変更します。 セキュリティーを強化するためには、整合性グループの API とボリューム種別管理の API の両方に、同じアクセス権限を設定します。デフォルトでは、ボリューム種別管理の API は (同じ
/etc/cinder/policy.json_ file) で"rule:admin_or_owner"に設定されています。"volume_extension:types_manage": "rule:admin_or_owner",
"volume_extension:types_manage": "rule:admin_or_owner",Copy to Clipboard Copied! Toggle word wrap Toggle overflow 整合性グループの機能をすべてのユーザーが利用できるようにするには、API ポリシーのエントリーを設定して、ユーザーが専用の整合性グループを作成、使用、および管理できるようにします。そのためには、
rule:admin_or_ownerを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 更新を環境ファイルに保存します。
- その他の環境ファイルと共に環境ファイルをスタックに追加して、オーバークラウドをデプロイします。
2.9.2. Dashboard を使用した Block Storage 整合性グループの作成 リンクのコピーリンクがクリップボードにコピーされました!
整合性グループの API を有効にしたら、整合性グループの作成を開始することができます。
前提条件
- 整合性グループを作成するには、プロジェクト管理者またはボリューム所有者である必要があります。
- Red Hat OpenStack Platform (RHOSP) Dashboard (horizon) へのアクセス。詳細は、OpenStack ダッシュボードを使用したクラウドリソースの管理 を参照してください。
手順
- 管理者ユーザーまたはボリューム所有者としてダッシュボードにログインします。
- Project > Compute > Volumes > Volume Consistency Groups を選択します。
- 整合性グループの作成 をクリックします。
- ウィザードの 整合性グループの情報 タブで、整合性グループの名前と説明を入力します。次に アベイラビリティーゾーン を指定します。
- 整合性グループにボリューム種別を追加することもできます。整合性グループにボリュームを作成する際には、Block Storage サービスにより、これらのボリューム種別から互換性のある設定が適用されます。ボリューム種別を追加するには、利用可能な全ボリューム種別 リストから追加するボリューム種別の + ボタンをクリックします。
- 整合性グループの作成 をクリックします。次回、作成した整合性グループが ボリュームの整合性グループ テーブルに表示されます。
2.9.3. Dashboard を使用した Block Storage サービスの整合性グループの管理 リンクのコピーリンクがクリップボードにコピーされました!
Dashboard で Block Storage ボリュームの整合性グループを管理できます。
前提条件
- 整合性グループを管理するには、プロジェクト管理者である必要があります。
- Red Hat OpenStack Platform (RHOSP) Dashboard (horizon) へのアクセス。詳細は、OpenStack ダッシュボードを使用したクラウドリソースの管理 を参照してください。
手順
- 管理ユーザーとして Dashboard にログインします。
- Project > Compute > Volumes > Volume Consistency Groups を選択します。
- (オプション) アクション コラムから 整合性グループの編集 を選択して、整合性グループの名前または説明を変更することができます。
整合性グループにボリュームを直接追加または削除するには、設定する整合性グループを見つけます。その整合性グループの アクション コラムで、ボリュームの管理 を選択します。これにより、整合性グループボリュームの追加/削除 ウィザードが起動します。
- 整合性グループにボリュームを追加するには、利用可能な全ボリューム リストから追加するボリュームの + ボタンをクリックします。
- 整合性グループからボリュームを削除するには、選択済みのボリューム リストから削除するボリュームの - ボタンをクリックします。
- 整合性グループの編集 をクリックします。
2.9.4. Block Storage サービス用の整合性グループのスナップショットの作成および管理 リンクのコピーリンクがクリップボードにコピーされました!
整合性グループにボリュームを追加したら、そこからスナップショットを作成することができます。
前提条件
- 整合性グループのスナップショットを作成および管理するには、プロジェクト管理者である必要があります。
手順
source コマンドでオーバークラウドの認証情報ファイルを読み込みます。
source ~/<credentials_file>
$ source ~/<credentials_file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<credentials_file>を認証情報ファイルの名前 (overcloudrcなど) に置き換えます。
-
利用可能な整合性グループおよびその ID をすべて表示します。
cinder consisgroup-list
$ cinder consisgroup-listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 整合性グループを使用してスナップショットを作成します。
cinder cgsnapshot-create [--name <cgsnapname>] [--description "<description>"] <cgnameid>
$ cinder cgsnapshot-create [--name <cgsnapname>] [--description "<description>"] <cgnameid>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<cgsnapname>は、スナップショットの名前に置き換えます。 -
<description>は、スナップショットの説明に置き換えます。 -
<CGNAMEID>は、整合性グループの名前または ID に置き換えます。
-
利用可能な整合性グループのスナップショットの全リストを表示します。
cinder cgsnapshot-list
# cinder cgsnapshot-listCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.9.5. Block Storage サービスの整合性グループのクローン作成 リンクのコピーリンクがクリップボードにコピーされました!
整合性グループを使用して、事前に設定されたボリューム群を一括で同時に作成することもできます。この操作は、既存の整合性グループをクローンするか、整合性グループのスナップショットをリストアすることによって実行できます。いずれのプロセスも同じコマンドを使用します。
前提条件
- 整合性グループのクローンを作成し、整合性グループのスナップショットを復元するには、プロジェクト管理者である必要があります。
手順
source コマンドでオーバークラウドの認証情報ファイルを読み込みます。
source ~/<credentials_file>
$ source ~/<credentials_file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<credentials_file>を認証情報ファイルの名前 (overcloudrcなど) に置き換えます。
-
既存の整合性グループのクローンを作成するには、以下のコマンドを実行します。
cinder consisgroup-create-from-src --source-cg <cgnameid> [--name <cgname>] [--description "<description>"]
$ cinder consisgroup-create-from-src --source-cg <cgnameid> [--name <cgname>] [--description "<description>"]Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<cgnameid>は、複製する整合性グループの名前または ID に置き換えます。 -
<cgname>は、整合性グループの名前に置き換えます。 -
<description>は、整合性グループの説明に置き換えます。
-
整合性グループのスナップショットから整合性グループを作成するには、以下のコマンドを実行します。
cinder consisgroup-create-from-src --cgsnapshot <cgsnapname> [--name <cgname>] [--description "<description>"]
$ cinder consisgroup-create-from-src --cgsnapshot <cgsnapname> [--name <cgname>] [--description "<description>"]Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<cgsnapname>は、整合性グループの作成に使用するスナップショットの名前または ID に置き換えてください。
-