第8章 オーバークラウドのデプロイ前に行うベアメタルノードのプロビジョニング
この機能は、本リリースでは テクノロジープレビュー として提供しているため、Red Hat では全面的にはサポートしていません。これは、テスト用途にのみご利用いただく機能です。実稼働環境にはデプロイしないでください。テクノロジープレビュー機能についての詳しい情報は、対象範囲の詳細 を参照してください。
オーバークラウドのデプロイメントプロセスには、2 つの主要な操作があります。
- ノードのプロビジョニング
- オーバークラウドのデプロイ
これらの操作を別個のプロセスに分割すると、このプロセスに伴うリスクの一部を軽減し、より効率的に障害点を特定することができます。
ベアメタルノードをプロビジョニングする。
- ノード定義ファイルを yaml 形式で作成します。
- ノード定義ファイルを指定して、プロビジョニングコマンドを実行します。
オーバークラウドをデプロイする。
- プロビジョニングコマンドにより生成される heat 環境ファイルを指定して、デプロイメントコマンドを実行します。
プロビジョニングプロセスにより、ノードがプロビジョニングされ、ノード数、予測可能なノード配置、カスタムイメージ、カスタム NIC 等のさまざまなノード仕様が含まれる heat 環境ファイルが生成されます。オーバークラウドをデプロイする際に、このファイルをデプロイメントコマンドに追加します。
事前にプロビジョニングされたノードと director がプロビジョニングしたノードを組み合わせることはできません。
8.1. オーバークラウドノードの登録 リンクのコピーリンクがクリップボードにコピーされました!
ディレクターには、ノードのハードウェアと電源管理の詳細を指定するノード定義テンプレートが必要です。このテンプレートは、JSON 形式の nodes.json または YAML 形式の nodes.yaml で作成できます。
手順
ノードをリスト表示する
nodes.jsonまたはnodes.yamlという名前のテンプレートを作成します。以下の例に示す JSON および YAML テンプレートを使用して、ノード定義のテンプレートを設定する方法を説明します。JSON テンプレートの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow YAML テンプレートの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このテンプレートには、以下の属性が含まれます。
- name
- ノードの論理名
- ポート
特定の IPMI デバイスにアクセスするためのポート次の任意のポート属性を定義できます。
-
address: ノード上のネットワークインターフェイスの MAC アドレス。各システムのプロビジョニング NIC の MAC アドレスのみを使用します。 -
physical_network: プロビジョニング NIC に接続されている物理ネットワーク。 -
local_link_connection: IPv6 プロビジョニングを使用し、イントロスペクション中に LLDP がローカルリンク接続を正しく反映しない場合は、local_link_connectionパラメーターのswitch_idおよびport_idフィールドにダミーのデータを含める必要があります。偽のデータを含める方法の詳細は、Using director introspection to collect bare metal node hardware information を参照してください。
-
- cpu
- (オプション) ノード上の CPU 数
- memory
- (オプション) メモリーサイズ (MB 単位)
- disk
- (オプション) ハードディスクのサイズ (GB 単位)
- arch
(オプション) システムアーキテクチャー
重要マルチアーキテクチャークラウドをビルドする場合には、
x86_64アーキテクチャーを使用するノードとppc64leアーキテクチャーを使用するノードを区別するために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
$ source ~/stackrc (undercloud)$ openstack overcloud node import --validate-only ~/nodes.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重要マルチアーキテクチャーノードの場合は、
--http-boot /var/lib/ironic/tftpboot/オプションも追加する必要があります。-
ファイルを
stackユーザーのホームディレクトリー (/home/stack/nodes.json) に保存します。 テンプレートを director にインポートして、各ノードをテンプレートから director に登録します。
openstack overcloud node import ~/nodes.json
(undercloud)$ openstack overcloud node import ~/nodes.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記UEFI ブートモードを使用する場合は、各ノードでブートモードも設定する必要があります。UEFI ブートモードを設定せずにノードをイントロスペクトすると、ノードはレガシーモードでブートします。詳細は、Setting the boot mode to UEFI boot mode を参照してください。
ノードの登録および設定が完了するまで待ちます。完了したら、ノードが director に正しく登録されていることを確認します。
openstack baremetal node list
(undercloud)$ openstack baremetal node listCopy to Clipboard Copied! Toggle word wrap Toggle overflow