第3章 インスタンス起動用のフレーバーの作成
インスタンスのフレーバーは、インスタンス用の仮想ハードウェアプロファイルを指定するリソースのテンプレートです。クラウドユーザーは、インスタンスを起動する際にフレーバーを指定する必要があります。
フレーバーにより、Compute サービスがインスタンスに割り当てる必要のある以下のリソースの量を指定することができます。
- 仮想 CPU の数
- RAM (MB 単位)
- ルートディスク (GB 単位)
- セカンダリー一時ストレージおよびスワップディスクを含む仮想ストレージ
フレーバーを全プロジェクトに公開したり、特定のプロジェクトまたはドメインを対象にプライベートに設定したりすることで、フレーバーを使用できるユーザーを指定することができます。
フレーバーでは、メタデータ ("追加スペック" とも呼ばれる) を使用して、インスタンス用ハードウェアのサポートおよびクォータを指定することができます。フレーバーのメタデータは、インスタンスの配置、リソースの使用上限、およびパフォーマンスに影響を及ぼします。利用可能なメタデータ属性の完全なリストは、Flavor metadata を参照してください。
フレーバーメタデータキーを使用することで、ホストアグリゲートで設定した extra_specs
メタデータを照合して、インスタンスをホストするのに適したホストアグリゲートを探すこともできます。ホストアグリゲートでインスタンスをスケジュールするには、extra_specs
キーに aggregate_instance_extra_specs:
名前空間の接頭辞を指定して、フレーバーのメタデータのスコープを定義する必要があります。詳細は、Creating and managing host aggregates を参照してください。
Red Hat OpenStack Platform (RHOSP) のデプロイメントには、クラウドユーザーが使用可能な以下のデフォルトパブリックフレーバーのセットが含まれています。
名前 | 仮想 CPU の数 | メモリー | ルートディスクのサイズ |
---|---|---|---|
m1.nano | 1 | 128 MB | 1 GB |
m1.micro | 1 | 192 MB | 1 GB |
フレーバー属性を使用して設定した動作は、イメージを使用して設定した動作よりも優先されます。クラウドユーザーがインスタンスを起動する際、指定したフレーバーの属性がイメージの属性よりも優先されます。
3.1. フレーバーの作成
特定の機能や動作のために特化したフレーバーを作成および管理することができます。以下に例を示します。
- 基になるハードウェアの要件に応じて、デフォルトのメモリーと容量を変更する
- インスタンスに特定の I/O レートを強制するためのメタデータ、またはホストアグリゲートと一致させるためのメターデータを追加する
手順
インスタンスが利用可能な基本的なリソースを指定するフレーバーを作成します。
(overcloud)$ openstack flavor create --ram <size_mb> \ --disk <size_gb> --vcpus <no_vcpus> \ [--private --project <project_id>] <flavor_name>
-
<size_mb>
を、このフレーバーで作成するインスタンスに割り当てる RAM の容量に置き換えます。 -
<size_gb>
を、このフレーバーで作成するインスタンスに割り当てるルートディスクのサイズに置き換えます。 -
<no_vcpus>
を、このフレーバーで作成するインスタンスに確保する仮想 CPU の数に置き換えます。 (オプション)
--private
および--project
オプションを指定して、特定のプロジェクトまたはユーザーグループだけがフレーバーにアクセスできるようにします。<project_id>
を、このフレーバーを使用してインスタンスを作成できるプロジェクトの ID に置き換えます。アクセシビリティーを指定しない場合は、フレーバーはデフォルトで public に設定されます。つまり、すべてのプロジェクトで使用可能になります。注記パブリックフレーバーの作成後は、そのフレーバーをプライベートにすることはできません。
<flavor_name>
を、一意のフレーバー名に置き換えます。フレーバーの引数についての詳細は、Flavor arguments を参照してください。
-
(オプション) フレーバーのメタデータを指定するには、キー/値のペアを使用して必要な属性を設定します。
(overcloud)$ openstack flavor set \ --property <key=value> --property <key=value> ... <flavor_name>
-
<key>
を、このフレーバーで作成するインスタンスに割り当てる属性のメタデータキーに置き換えます。利用可能なメタデータキーのリストは、Flavor metadata を参照してください。 -
<value>
を、このフレーバーで作成するインスタンスに割り当てるメタデータキーの値に置き換えます。 <flavor_name>
を、フレーバーの名前に置き換えます。たとえば、以下のフレーバーを使用して起動されるインスタンスはに 2 つの CPU ソケットがあり、それぞれに 2 つの CPU が割り当てられます。
(overcloud)$ openstack flavor set \ --property hw:cpu_sockets=2 \ --property hw:cpu_cores=2 processor_topology_flavor
-