2.3. CellController ロールのホストの指定

CellController ロールのベアメタルノードを指定するには、CellController ロールのノードをタグ付けするためのフレーバーおよびリソースクラスを設定する必要があります。以下の手順では、CellController ロール用にフレーバーおよびベアメタルリソースクラスを作成します。

ヒント

複数のセル環境にカスタムロールを作成している場合は、以下の手順に従ってカスタムロール用のフレーバーおよびリソースクラスを設定します。そのためには、セルコントローラー名をカスタムロール名に置き換えてください。

手順

  1. セルコントローラーノード用の cellcontroller オーバークラウドフレーバーを作成します。

    (undercloud)$ openstack flavor create --id auto \
     --ram <ram_size_mb> --disk <disk_size_gb> \
     --vcpus <no_vcpus> cellcontroller
    • <ram_size_mb> をベアメタルノードの RAM (MB 単位) に置き換えます。
    • <disk_size_gb> をベアメタルノード上のディスク容量 (GB 単位) に置き換えます。
    • <no_vcpus> をベアメタルノードの CPU 数に置き換えます。

      注記

      これらの属性は、インスタンスのスケジューリングには使用されません。ただし Compute スケジューラーは、ディスク容量を使用してルートパーティションのサイズを決定します。

  2. ノードリストを取得して UUID を把握します。

    (undercloud)$ openstack baremetal node list
  3. カスタムのセルコントローラークラスでセルコントローラーとして指定する各ベアメタルノードをタグ付けします。

    (undercloud)$ openstack baremetal node set \
     --resource-class baremetal.CELL-CONTROLLER <node>

    <node> をベアメタルノードの ID に置き換えてください。

  4. cellcontroller フレーバーをカスタムセルコントローラーリソースクラスに関連付けます。

    (undercloud)$ openstack flavor set \
     --property resources:CUSTOM_BAREMETAL_CELL_CONTROLLER=1 \
      cellcontroller

    Bare Metal サービスノードのリソースクラスに対応するカスタムリソースクラスの名前を指定するには、リソースクラスを大文字に変換し、それぞれの句読点をアンダースコアに置き換え、CUSTOM_ の接頭辞を追加します。

    注記

    フレーバーが要求できるのは、ベアメタルリソースクラスの 1 つのインスタンスだけです。

  5. 以下のフレーバー属性を設定して、Compute スケジューラーがインスタンスのスケジューリングにベアメタルフレーバー属性を使用するのを防ぎます。

    (undercloud)$ openstack flavor set \
     --property resources:VCPU=0 --property resources:MEMORY_MB=0 \
     --property resources:DISK_GB=0 cellcontroller