7.2. ベアメタルオーバークラウドノードのプロビジョニング
Red Hat OpenStack Platform (RHOSP) 環境を設定するには、次のタスクを実行する必要があります。
- オーバークラウドのベアメタルノードを登録します。
ベアメタルノードのハードウェアのインベントリーをディレクターに提供します。
注記ネットワークブートローダーの制約により、RHOSP はセキュアブートでのイントロスペクションをサポートしません。director 用の提供されたオーバークラウドイメージを使用してオーバークラウドノードがデプロイされている場合、オーバークラウドのデプロイ後にセキュアブートを有効にできる可能性があります(
overcloud-hardened-uefi-full.qcow2)。- ノード定義ファイルで、ベアメタルノードの数量、属性、およびネットワークレイアウトを設定します。
- ベアメタルノードに、指定のノードとこのノードを合致させるリソースクラスを割り当てます。
プロファイルを一致させてオーバークラウドノードを指定するなど、追加のオプションのタスクを実行することもできます。
7.2.1. オーバークラウドノードの登録 リンクのコピーリンクがクリップボードにコピーされました!
ディレクターには、ノードのハードウェアと電源管理の詳細を指定するノード定義テンプレートが必要です。このテンプレートは、JSON 形式の nodes.json または YAML 形式の nodes.yaml で作成できます。
手順
ノードをリスト表示する
nodes.jsonまたはnodes.yamlという名前のテンプレートを作成します。以下の例に示す JSON および YAML テンプレートを使用して、ノード定義のテンプレートを設定する方法を説明します。JSON テンプレートの例
{ "nodes": [{ "name": "node01", "ports": [{ "address": "aa:aa:aa:aa:aa:aa", "physical_network": "ctlplane", "local_link_connection": { "switch_id": "52:54:00:00:00:00", "port_id": "p0" } }], "cpu": "4", "memory": "6144", "disk": "40", "arch": "x86_64", "pm_type": "ipmi", "pm_user": "admin", "pm_password": "p@55w0rd!", "pm_addr": "192.168.24.205" }, { "name": "node02", "ports": [{ "address": "bb:bb:bb:bb:bb:bb", "physical_network": "ctlplane", "local_link_connection": { "switch_id": "52:54:00:00:00:00", "port_id": "p0" } }], "cpu": "4", "memory": "6144", "disk": "40", "arch": "x86_64", "pm_type": "ipmi", "pm_user": "admin", "pm_password": "p@55w0rd!", "pm_addr": "192.168.24.206" }] }YAML テンプレートの例
nodes: - name: "node01" ports: - address: "aa:aa:aa:aa:aa:aa" physical_network: ctlplane local_link_connection: switch_id: "52:54:00:00:00:00" port_id: p0 cpu: 4 memory: 6144 disk: 40 arch: "x86_64" pm_type: "ipmi" pm_user: "admin" pm_password: "p@55w0rd!" pm_addr: "192.168.24.205" - name: "node02" ports: - address: "bb:bb:bb:bb:bb:bb" physical_network: ctlplane local_link_connection: switch_id: "52:54:00:00:00:00" port_id: p0 cpu: 4 memory: 6144 disk: 40 arch: "x86_64" pm_type: "ipmi" pm_user: "admin" pm_password: "p@55w0rd!" pm_addr: "192.168.24.206"このテンプレートには、以下の属性が含まれます。
- name
- ノードの論理名
- ポート
特定の IPMI デバイスにアクセスするためのポート次の任意のポート属性を定義できます。
-
address: ノード上のネットワークインターフェイスの MAC アドレス。各システムのプロビジョニング NIC の MAC アドレスのみを使用します。 -
physical_network: プロビジョニング NIC に接続されている物理ネットワーク。 -
local_link_connection: IPv6 プロビジョニングを使用し、イントロスペクション中に LLDP がローカルリンク接続を正しく反映しない場合は、local_link_connectionパラメーターのswitch_idおよびport_idフィールドにダミーのデータを含める必要があります。偽のデータを含める方法の詳細は、director イントロスペクションを使用したベアメタルノードのハードウェア情報の収集 を参照してください。
-
- cpu
- (オプション) ノード上の CPU 数
- memory
- (オプション) メモリーサイズ (MB 単位)
- disk
- (オプション) ハードディスクのサイズ (GB 単位)
- arch
- (オプション) システムアーキテクチャー
- pm_type
使用する電源管理ドライバー。この例では IPMI ドライバー (
ipmi) を使用しています。注記IPMI が推奨されるサポート対象電源管理ドライバーです。サポートされている電源管理の種類とそのオプションの詳細は、電源管理ドライバー を参照してください。それらの電源管理ドライバーが想定どおりに機能しない場合には、電源管理に IPMI を使用してください。
- pm_user、pm_password
- IPMI のユーザー名およびパスワード
- pm_addr
- IPMI デバイスの IP アドレス
テンプレートのフォーマットと構文を確認します。
$ source ~/stackrc (undercloud)$ openstack overcloud node import --validate-only ~/nodes.json-
テンプレートファイルを
stackユーザーのホームディレクトリー (/home/stack/nodes.json) に保存します。 テンプレートを director にインポートして、各ノードをテンプレートから director に登録します。
(undercloud)$ openstack overcloud node import ~/nodes.jsonノードの登録および設定が完了するまで待ちます。完了したら、ノードが director に正しく登録されていることを確認します。
(undercloud)$ openstack baremetal node list