2.3. CellController ロールのホストの指定
CellController
ロールのベアメタルノードを指定するには、CellController
ロールのノードにタグを付けるリソースクラスを使用してベアメタルノードを設定する必要があります。
マルチセル環境用のカスタムロールを作成した場合は、この手順に従ってカスタムロールのリソースクラスを設定できます。設定するには、セルコントローラー名をカスタムロールの名前に置き換えます。
以下の手順は、まだプロビジョニングされていない新しいオーバークラウドノードに適用されます。すでにプロビジョニングされている既存のオーバークラウドノードにリソースクラスを割り当てるには、オーバークラウドをスケールダウンしてノードのプロビジョニングを解除してから、オーバークラウドをスケールアップして、新しいリソースクラスの割り当てでノードを再プロビジョニングします。詳細は、オーバークラウドノードのスケーリング を参照してください。
手順
-
CellController
ロールのベアメタルノードをノード定義テンプレート (node.json
またはnode.yaml)
に追加して、ベアメタルノードを登録します。詳細は、director を使用した Red Hat OpenStack Platform のインストールと管理 ガイドの オーバークラウドのノードの登録 を参照してください。 ノードのハードウェアを検査します。
(undercloud)$ openstack overcloud node introspect \ --all-manageable --provide
詳細は、director を使用した Red Hat OpenStack Platform のインストールと管理 ガイドの ベアメタルノードハードウェアのインベントリーの作成 を参照してください。
ノードリストを取得して UUID を把握します。
(undercloud)$ openstack baremetal node list
セルコントローラーとして指定する各ベアメタルノードに、カスタムセルコントローラーリソースクラスのタグを付けます。
(undercloud)$ openstack baremetal node set \ --resource-class baremetal.CELL-CONTROLLER <node>
-
<node>
は、ベアメタルノードの名前または UUID に置き換えます。
-
CellController
ロールをノード定義ファイルovercloud-baremetal-deploy.yaml
に追加し、予測ノード配置、リソースクラス、ネットワークトポロジー、またはノードに割り当てるその他の属性を定義します。- name: Controller count: 3 - name: Compute count: 3 defaults: network_config: template: /home/stack/templates/nic-config/<cell_topology_file> instances: - hostname: cell1-compute-%index% name: computecell1 - hostname: cell1-compute-%index% name: computecell2 - hostname: cell1-compute-%index% name: computecell3 - name: CellController count: 1 defaults: resource_class: baremetal.CELL-CONTROLLER network_config: template: /home/stack/templates/nic-config/<role_topology_file> instances: - hostname: cell1-cellcontroller-%index% name: cellcontroller
-
<cell_topology_file>
は、セルスタックに使用するネットワークトポロジーファイルの名前 (compute.j2
など) に置き換えます。 <role_topology_file>
は、CellController
ロールに使用するネットワークトポロジーファイルの名前 (cell_controller_net_top.j2
など) に置き換えます。既存のネットワークトポロジーを再利用することも、ロールまたはセル用の新しいカスタムネットワークインターフェイステンプレートを作成することもできます。詳細は、director を使用した Red Hat OpenStack Platform のインストールと管理 ガイドの カスタムネットワークインターフェイステンプレート を参照してください。デフォルトのネットワーク定義設定を使用するには、ロール定義に
network_config
を含めないでください。
ノード定義ファイルでノード属性を設定するために使用できるプロパティーについて詳しくは、ベアメタルノードのプロビジョニング属性 を参照してください。ノード定義ファイルの例は、ノード定義ファイルの例 を参照してください。
-
ロールの新しいノードをプロビジョニングします。
(undercloud)$ openstack overcloud node provision \ [--stack <stack>] \ [--network-config \] --output <deployment_file> \ /home/stack/templates/overcloud-baremetal-deploy.yaml
-
オプション:
<stack>
をベアメタルノードがプロビジョニングされるスタックの名前に置き換えます。デフォルトはovercloud
です。 -
オプション:
--network-config
オプションの引数を含めて、Ansible Playbookcli-overcloud-node-network-config.yaml
にネットワーク定義を提供します。network_config
プロパティーを使用してノード定義ファイルにネットワーク定義を定義していない場合は、デフォルトのネットワーク定義が使用されます。 -
<deployment_file>
は、デプロイメントコマンドに含めるために生成する heat 環境ファイルの名前に置き換えます (例:/home/stack/templates/overcloud-baremetal-deployed.yaml)
。
-
オプション:
別のターミナルでプロビジョニングの進捗をモニタリングします。プロビジョニングが成功すると、ノードの状態が
available
からactive
に変わります。(undercloud)$ watch openstack baremetal node list
--network-config
オプションを指定せずにプロビジョニングコマンドを実行した場合は、network-environment.yaml
ファイルで<Role>NetworkConfigTemplate
パラメーターを設定して、NIC テンプレートファイルを指すようにします。parameter_defaults: ComputeNetworkConfigTemplate: /home/stack/templates/nic-configs/compute.j2 CellControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/<role_topology_file> ControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/controller.j2
-
<role_topology_file>
は、CellController
ロールのネットワークトポロジーを含むファイルの名前 (cell_controller_net_top.j2
など) に置き換えます。デフォルトのネットワークトポロジーを使用するには、compute.j2
に設定します。
-