第7章 基本的なオーバークラウドの設定

基本設定のオーバークラウドには、カスタム機能は含まれません。基本的な Red Hat OpenStack Platform (RHOSP) 環境を設定するには、次のタスクを実行する必要があります。

  • オーバークラウドのベアメタルノードを登録します。
  • ベアメタルノードのハードウェアのインベントリーをディレクターに提供します。
  • 各ベアメタルノードに、ノードを指定されたロールに一致させるリソースクラスでタグ付けします。
ヒント

この基本的なオーバークラウドに高度な設定オプションを追加して、仕様に合わせてカスタマイズできます。詳細は、Advanced Overcloud Customization を参照してください。

7.1. オーバークラウドノードの登録

ディレクターには、ノードのハードウェアと電源管理の詳細を指定するノード定義テンプレートが必要です。このテンプレートは、JSON 形式の nodes.json または YAML 形式の nodes.yaml で作成できます。

手順

  1. ノードをリスト表示する nodes.json または nodes.yaml という名前のテンプレートを作成します。以下の例に示す JSON および YAML テンプレートを使用して、ノード定義のテンプレートを設定する方法を説明します。

    JSON テンプレートの例

    {
    	"nodes": [{
    			"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"
    				}
    			}],
    			"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"
    		},
    		{
    			"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"
    				}
    			}],
    			"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:
      - 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
        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"
      - 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
        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 が推奨されるサポート対象電源管理ドライバーです。サポート対象電源管理ドライバーの種別およびそのオプションに関する詳細は、30章電源管理ドライバー を参照してください。それらの電源管理ドライバーが想定どおりに機能しない場合には、電源管理に IPMI を使用してください。

    pm_user、pm_password
    IPMI のユーザー名およびパスワード
    pm_addr
    IPMI デバイスの IP アドレス
    pm_port (オプション)
    特定の 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 キーが必須です。

  2. テンプレートを作成したら、以下のコマンドを実行してフォーマットおよび構文を検証します。

    $ source ~/stackrc
    (undercloud)$ openstack overcloud node import --validate-only ~/nodes.json
    重要

    マルチアーキテクチャーノードの場合は、--http-boot /var/lib/ironic/tftpboot/ オプションも追加する必要があります。

  3. stack ユーザーのホームディレクトリーにファイルを保存し (/home/stack/nodes.json)、続いて以下のコマンドを実行してテンプレートを director にインポートします。

    (undercloud)$ openstack overcloud node import ~/nodes.json

    このコマンドにより、それぞれのノードがテンプレートから director に登録されます。UEFI ブートモードを使用する場合は、各ノードでブートモードも設定する必要があります。UEFI ブートモードを設定せずにノードをイントロスペクトすると、ノードはレガシーモードでブートします。詳細は、Setting the boot mode to UEFI boot mode を参照してください。

  4. ノードの登録および設定が完了するまで待ちます。完了したら、ノードが director に正しく登録されていることを確認します。

    (undercloud)$ openstack baremetal node list