3.2. ボリュームタイプの作成および設定
ボリュームタイプを作成して、関連する設定を各ボリュームタイプに適用できます。たとえば、ボリュームタイプを作成して、クラウドユーザーにさまざまなレベルのパフォーマンスを提供できます。
ボリュームタイプを作成し、特定のパフォーマンス、復元力、およびその他の Extra Specs をキーと値のペアとして追加します。
注記デフォルトでは、すべてのボリュームタイプはパブリックであり、すべてのプロジェクトにアクセスできます。アクセスが制限されたボリュームタイプを作成する必要がある場合は、プライベートボリュームタイプを作成します。詳細は、プライベートボリュームタイプの作成と使用 を参照してください。
バックエンドの数が限られている小規模なデプロイメントでは、
volume_backend_nameプロパティーを使用して、各バックエンドを対象とするボリュームタイプを作成できます。その場合、これらのボリュームタイプを使用するボリュームは、指定されたバックエンドでスケジュールされます。詳細は、ボリュームタイプの編集 に記載されている例を参照してください。多数のバックエンドを持つ大規模なデプロイメントの場合、このストラテジーは実行できない可能性があります。その場合は、設定されたスケジューラーフィルターに基づき、Block Storage スケジューラーがボリュームに最適なバックエンドを決定する方が適切です。
- パフォーマンス関連のプロパティーを追加するだけでなく、ボリュームタイプを作成した後、ボリュームのパフォーマンスをさらに設定する Quality of Service 仕様に関連付けることができます。詳細は、Block Storage サービス (cinder) QoS (Quality of Service) の仕様 を参照してください。
 
前提条件
- ボリュームタイプを作成および設定できるプロジェクト管理者である。
 - ボリュームタイプに追加するバックエンドドライバー機能のキーの名前と必要な値を把握している。詳細は、バックエンドドライバー機能のリスト を参照してください。
 
手順
ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。
oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclientCopy to Clipboard Copied! Toggle word wrap Toggle overflow ボリュームタイプの作成と設定
openstack volume type create --property <key>=<value> <volume_type_name>
$ openstack volume type create --property <key>=<value> <volume_type_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のように、個別の
--property <key>=<value>引数を指定して、ボリュームタイプに必要なプロパティーを追加します。<key>をプロパティーキーに置き換えます。重要<key>のスペルが正しいことを確認してください。スペルが間違えていてもキーは追加されますが、機能しません。- 
								
<value>を<key>の必要な値に置き換えます。 <volume_type_name>をボリュームタイプの名前に置き換えます。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
openstackclientPod を終了します。exit
$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
次のステップ
3.2.1. プライベートボリュームタイプの作成と使用 リンクのコピーリンクがクリップボードにコピーされました!
					デフォルトでは、すべてのボリュームタイプはパブリックであり、すべてのプロジェクト (テナント) で利用できます。ボリュームタイプへのアクセスを制御または制限するには、private ボリュームタイプを作成します。
				
デフォルトでは、プライベートのボリュームタイプには作成者のみがアクセスできます。ただし、すべての管理ユーザーはプライベートボリュームタイプを表示できます。
プライベートボリュームタイプは、特定の属性を持つボリュームへのアクセスを制限します。通常、これらは特定のプロジェクトでのみ使用できる設定です。たとえば、テスト中の新しいバックエンドや超高性能設定などです。
前提条件
- ボリュームタイプを作成および設定できるプロジェクト管理者である。
 
手順
ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。
oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclientCopy to Clipboard Copied! Toggle word wrap Toggle overflow 新しいプライベートボリュームタイプを作成します。
openstack volume type create --private <volume_type_name>
$ openstack volume type create --private <volume_type_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <volume_type_name>を新しいプライベートボリュームタイプの名前に置き換えます。is_publicフィールドがFalseに設定されているため、これがプライベートボリュームであることを確認できます。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
オプション: プライベートおよびパブリックのボリュームタイプを表示します。
openstack volume type list
$ openstack volume type listCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、ボリュームタイプのテーブルが表示され、
Is Public列には、ボリュームタイプがプライベート (False) かパブリック (True) かが示されます。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ボリュームタイプにアクセスするには、ボリュームタイプの ID が必要なため、このテーブルにはパブリックおよびプライベートのボリュームタイプの名前と ID も表示されます。
オプション: 必要なプロジェクトの ID を取得するプロジェクトを一覧表示します。
openstack project list
$ openstack project listCopy to Clipboard Copied! Toggle word wrap Toggle overflow (オプション) プロジェクトがプライベートボリュームタイプにアクセスできるようにします。
openstack volume type set <type_id> --project <project_id>
$ openstack volume type set <type_id> --project <project_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 
									
<type_id>は、必要なプライベートボリュームタイプの ID に置き換えます。 <project_id>を、このプライベートボリュームタイプにアクセスするプロジェクトの ID に置き換えます。注記プライベートのボリュームタイプへのアクセスは、プロジェクトレベルで許可されます。このプロジェクトのユーザーの名前のみがわかっている場合は、
openstack user listコマンドを実行します。このコマンドは、設定されているすべてのユーザーの名前とテナント ID をリスト表示します。
- 
									
 (オプション) プライベートのボリュームタイプにアクセス可能なプロジェクトを確認します。
openstack volume type show <type_id>
$ openstack volume type show <type_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 結果テーブルの
access_project_idsフィールドには、このプライベートボリュームタイプにアクセスできるすべてのプロジェクトの ID が示されます。(オプション) プライベートボリュームタイプからプロジェクトアクセスを削除します。
openstack volume type unset <type_id> --project <project_id>
$ openstack volume type unset <type_id> --project <project_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow これは、
openstack volume type show <type_id>を実行し、このプロジェクトがaccess_project_idsフィールドに指定されていないことで確認できます。openstackclientPod を終了します。exit
$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
3.2.2. バックエンドドライバー機能のリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
ボリュームタイプを作成するときに、Block Storage バックエンドドライバーの設定可能なプロパティーまたは機能が公開され、Extra Specs と呼ばれるキーと値のペアを使用して設定されます。各バックエンドドライバーは、独自の Extra Specs のセットをサポートします。ドライバーがサポートする特定の Extra Specs の詳細は、バックエンドドライバーのドキュメントを参照してください。
					ただし、管理者はいつでも Block Storage cinder-volume サービスのホストに直接クエリーを実行して、バックエンドドライバーの明確に定義された標準機能をリスト表示できます。
				
前提条件
- Block Storage ホストに直接クエリーを実行するには、プロジェクト管理者である必要があります。
 
手順
ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。
oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclientCopy to Clipboard Copied! Toggle word wrap Toggle overflow cinder-volumeサービスのホストを決定します。openstack volume service list
$ openstack volume service listCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、各 Block Storage サービス (
cinder-backup、cinder-scheduler、cinder-volume) のプロパティーをリスト表示します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Host列には、各 Block Storage サービスのホストを指定します。ただし、cinder-volumeサービスのHost列には、host@volume_back_end_nameの構文を使用してバックエンド名も表示されます。Block Storage
cinder-volumeサービスのバックエンドドライバー機能を表示します。openstack volume backend capability show <volsvchost>
$ openstack volume backend capability show <volsvchost>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <volsvchost>を、上記のテーブルに示されているcinder-volumeのホストに置き換えます。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Key列には設定できる Extra Spec プロパティーが表示され、Type列にはこれらのプロパティーに必要なデータ型または有効値が表示されます。
openstackclientPod を終了します。exit
$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
3.2.3. ボリュームタイプの編集 リンクのコピーリンクがクリップボードにコピーされました!
ボリュームタイプにプロパティーを追加したり、既存のプロパティーの値を変更したりすることで、ボリュームタイプを編集できます。
ボリュームタイプは、使用されていない場合にのみ編集できます。
					また、openstack volume type delete を使用してボリュームタイプの名前を指定することで、不要になったボリュームタイプを削除することもできます。
				
前提条件
- プロジェクト管理者であり、ボリュームタイプを編集できる。
 - ボリュームタイプに追加するバックエンドドライバー機能のキーの名前と必要な値を把握している。詳細は、バックエンドドライバー機能のリスト を参照してください。
 
手順
ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。
oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclientCopy to Clipboard Copied! Toggle word wrap Toggle overflow ボリュームタイプの編集設定されているボリュームタイプのリストを表示するには、
openstack volume type listコマンドを使用できます。openstack volume type set --property <key>=<value> <existing_volume_type_name>
$ openstack volume type set --property <key>=<value> <existing_volume_type_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のように、個別の
--property <key>=<value>引数を指定して、このボリュームタイプのプロパティーを追加または編集します。<key>をプロパティーキーに置き換えます。重要<key>のスペルが正しいことを確認してください。スペルが間違えていてもキーは追加されますが、機能しません。- 
									
<value>を<key>の必要な値に置き換えます。 <existing_volume_type_name>を必要なボリュームタイプの名前に置き換えます。たとえば、特定のバックエンドをターゲットとするボリュームタイプを設定する場合は、次のプロパティーを追加できます。
openstack volume type set --property volume_backend_name=lvm MyVolumeType
$ openstack volume type set --property volume_backend_name=lvm MyVolumeTypeCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記使用可能なバックエンド名のリストを表示するには、
openstack volume backend pool listコマンドを使用します。その場合、host@volume_backend_name#poolの構文が使用されます。
オプション: このコマンドでは、プロパティーへの変更が成功したかどうかを確認できません。次のコマンドを実行して、このボリュームタイプに加えられた変更を確認してください。
openstack volume type show <volume_type_name>
$ openstack volume type show <volume_type_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、このボリュームタイプの詳細な設定を示すテーブルを表示し、
propertiesフィールドには設定されたすべてのプロパティーが表示されます。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow openstackclientPod を終了します。exit
$ exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow