第8章 インスタンス起動用のフレーバーの作成

インスタンスのフレーバーは、インスタンス用の仮想ハードウェアプロファイルを指定するリソースのテンプレートです。クラウドユーザーは、インスタンスを起動する際にフレーバーを指定する必要があります。

フレーバーにより、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) のデプロイメントには、クラウドユーザーが使用可能な以下のデフォルトパブリックフレーバーのセットが含まれています。

表8.1 デフォルトのフレーバー

名前仮想 CPU の数メモリールートディスクのサイズ

m1.nano

1

128 MB

1 GB

m1.micro

1

192 MB

1 GB

注記

フレーバー属性を使用して設定した動作は、イメージを使用して設定した動作よりも優先されます。クラウドユーザーがインスタンスを起動する際、指定したフレーバーの属性がイメージの属性よりも優先されます。

8.1. フレーバーの作成

特定の機能や動作のために特化したフレーバーを作成および管理することができます。以下に例を示します。

  • 基になるハードウェアの要件に応じて、デフォルトのメモリーと容量を変更する
  • インスタンスに特定の I/O レートを強制するためのメタデータ、またはホストアグリゲートと一致させるためのメターデータを追加する

手順

  1. インスタンスが利用可能な基本的なリソースを指定するフレーバーを作成します。

    (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 を参照してください。

  2. (オプション) フレーバーのメタデータを指定するには、キー/値のペアを使用して必要な属性を設定します。

    (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