第8章 オーバークラウドのデプロイ前に行うベアメタルノードのプロビジョニング
この機能は、本リリースでは テクノロジープレビュー として提供しているため、Red Hat では全面的にはサポートしていません。これは、テスト用途にのみご利用いただく機能で、実稼働環境にデプロイすべきではありません。テクノロジープレビュー機能についての詳しい情報は、「対象範囲の詳細」を参照してください。
オーバークラウドのデプロイメントプロセスには、2 つの主要な操作があります。
- ノードのプロビジョニング
- オーバークラウドのデプロイ
これらの操作を別個のプロセスに分割すると、このプロセスに伴うリスクの一部を軽減し、より効率的に障害点を特定することができます。
ベアメタルノードをプロビジョニングする。
- ノード定義ファイルを yaml 形式で作成します。
- ノード定義ファイルを指定して、プロビジョニングコマンドを実行します。
オーバークラウドをデプロイする。
- プロビジョニングコマンドにより生成される heat 環境ファイルを指定して、デプロイメントコマンドを実行します。
プロビジョニングプロセスにより、ノードがプロビジョニングされ、ノード数、予測可能なノード配置、カスタムイメージ、カスタム NIC 等のさまざまなノード仕様が含まれる heat 環境ファイルが生成されます。オーバークラウドをデプロイする際に、このファイルをデプロイメントコマンドに追加します。
事前にプロビジョニングされたノードと director がプロビジョニングしたノードを組み合わせることはできません。
8.1. オーバークラウドノードの登録
director では、手動で作成したノード定義のテンプレートが必要です。このテンプレートは JSON または YAML 形式を使用し、ノードのハードウェアおよび電源管理の情報が含まれます。
手順
ノードの一覧が含まれるテンプレートを作成します。以下の例に示す JSON および YAML テンプレートを使用して、ノード定義のテンプレートを構成する方法を説明します。
JSON テンプレートの例
{ "nodes":[ { "mac":[ "bb:bb:bb:bb:bb:bb" ], "name":"node01", "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" }, { "mac":[ "cc:cc:cc:cc:cc:cc" ], "name":"node02", "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: - mac: - "bb:bb:bb:bb:bb:bb" name: "node01" 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" - mac: - cc:cc:cc:cc:cc:cc name: "node02" 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
- ノードの論理名
- pm_type
使用する電源管理ドライバー。この例では IPMI ドライバー (
ipmi
) を使用しています。注記IPMI が推奨されるサポート対象電源管理ドライバーです。サポート対象電源管理ドライバーの種別およびそのオプションに関する詳細は、「付録A 電源管理ドライバー」を参照してください。それらの電源管理ドライバーが想定どおりに機能しない場合には、電源管理に IPMI を使用してください。
- pm_user; pm_password
- IPMI のユーザー名およびパスワード
- pm_addr
- IPMI デバイスの IP アドレス
- pm_port (オプション)
- 特定の IPMI デバイスにアクセスするためのポート
- mac
- (オプション) ノード上のネットワークインターフェースの MAC アドレス一覧。各システムのプロビジョニング NIC の MAC アドレスのみを使用します。
- cpu
- (オプション) ノード上の CPU 数
- memory
- (オプション) メモリーサイズ (MB 単位)
- disk
- (オプション) ハードディスクのサイズ (GB 単位)
- arch
(オプション) システムアーキテクチャー
重要マルチアーキテクチャークラウドをビルドする場合には、
x86_64
アーキテクチャーを使用するノードとppc64le
アーキテクチャーを使用するノードを区別するためにarch
キーが必須です。
テンプレートを作成したら、以下のコマンドを実行してフォーマットおよび構文を検証します。
$ source ~/stackrc (undercloud) $ openstack overcloud node import --validate-only ~/nodes.json
stack
ユーザーのホームディレクトリーにファイルを保存し (/home/stack/nodes.json
)、続いて以下のコマンドを実行してテンプレートを director にインポートします。(undercloud) $ openstack overcloud node import ~/nodes.json
このコマンドにより、それぞれのノードがテンプレートから director に登録されます。
ノードの登録および設定が完了するまで待ちます。完了したら、ノードが director に正しく登録されていることを確認します。
(undercloud) $ openstack baremetal node list