이 콘텐츠는 선택한 언어로 제공되지 않습니다.

Chapter 3. Adding a node to the overcloud


The overcloud can grow to meet an increase in demand by adding a new Nova compute and Ceph OSD node to the overcloud.

Prerequisites

  • A running RHHI Cloud solution.
  • The MAC addresses for the network interface cards (NICs).
  • IPMI User name and password

Procedure

Do the following steps on the Red Hat OpenStack Platform director node, as the stack user.

  1. Create and populate a host definition file for the Ironic service to manage the new node.

    1. Create a new JSON host definition file:

      [stack@director ~]$ touch ~/new_node.json
      Copy to Clipboard Toggle word wrap
    2. Add a definition block for the new node between the nodes stanza square brackets ({"nodes": []}) using this template:

      {
        "pm_password": "IPMI_USER_PASSWORD",
        "name": "NODE_NAME",
        "pm_user": "IPMI_USER_NAME",
        "pm_addr": "IPMI_IP_ADDR",
        "pm_type": "pxe_ipmitool",
        "mac": [
                "NIC_MAC_ADDR"
               ],
        "arch": "x86_64",
        "capabilities": "node:_NODE_ROLE-INSTANCE_NUM_,boot_option:local"
      }
      Copy to Clipboard Toggle word wrap
      Replace…​
      • IPMI_USER_PASSWORD with the IPMI password.
      • NODE_NAME with a descriptive name of the node. This is an optional parameter.
      • IPMI_USER_NAME with the IPMI user name that has access to power the node on or off.
      • IPMI_IP_ADDR with the IPMI IP address.
      • NIC_MAC_ADDR with the network card MAC address handling the PXE boot.
      • NODE_ROLE-INSTANCE_NUM with the node’s role, along with a node number. This solution uses two roles: controller and osd-compute.

        {
          "nodes": [
             {
                 "pm_password": "AbC1234",
                 "name": "m630_slot2",
                 "pm_user": "ipmiadmin",
                 "pm_addr": "10.19.143.62",
                 "pm_type": "pxe_ipmitool",
                 "mac": [
                     "c8:1f:66:65:33:42"
                 ],
                 "arch": "x86_64",
                  "capabilities": "node:osd-compute-3,boot_option:local"
             }
          ]
        }
        Copy to Clipboard Toggle word wrap
  2. Import the nodes into the Ironic database:

    [stack@director ~]$ openstack baremetal import ~/new_node.json
    Copy to Clipboard Toggle word wrap
    1. Verify that the openstack baremetal import command populated the Ironic database with the new node:

      [stack@director ~]$ openstack baremetal node list
      Copy to Clipboard Toggle word wrap
  3. Set the new node into maintenance mode:

    ironic node-set-maintenance $UUID true
    Copy to Clipboard Toggle word wrap
    Replace…​
    • $UUID with the UUID of the new node. See the output from step 2a to get the new node’s UUID.

      Example

      [stack@director ~]$ ironic node-set-maintenance 7250678a-a575-4159-840a-e7214e697165 true
      Copy to Clipboard Toggle word wrap

  4. Inspect the new node’s hardware:

    openstack baremetal introspection start $UUID
    Copy to Clipboard Toggle word wrap
    Replace…​
    • $UUID with the UUID of the new node. See the output from step 2a to get the new node’s UUID.

      Example

      [stack@director ~]$ openstack baremetal introspection start 7250678a-a575-4159-840a-e7214e697165 true
      Copy to Clipboard Toggle word wrap

      1. The introspection process can take some time to complete. Verify that the status of the introspection process:

        [stack@director ~]$ openstack baremetal introspection bulk status
        Copy to Clipboard Toggle word wrap

        Example Output

        +--------------------------------------+----------+-------+
        | Node UUID                            | Finished | Error |
        +--------------------------------------+----------+-------+
        | a94b75e3-369f-4b2d-b8cc-8ab272e23e89 | True     | None  |
        | 7ace7b2b-b549-414f-b83e-5f90299b4af3 | True     | None  |
        | 8be1d83c-19cb-4605-b91d-928df163b513 | True     | None  |
        | e8411659-bc2b-4178-b66f-87098a1e6920 | True     | None  |
        | 04679897-12e9-4637-9998-af8bee30b414 | True     | None  |
        | 48b4987d-e778-48e1-ba74-88a08edf7719 | True     | None  |
        | 7250678a-a575-4159-840a-e7214e697165 | True     | None  |
        +--------------------------------------+----------+-------+
        Copy to Clipboard Toggle word wrap

  5. Disable maintenance mode on the new node:

    ironic node-set-maintenance $UUID false
    Copy to Clipboard Toggle word wrap
    Replace…​
    • $UUID with the UUID of the new node. See the output from step 2a to get the new node’s UUID.

      Example

      [stack@director ~]$ ironic node-set-maintenance 7250678a-a575-4159-840a-e7214e697165 false
      Copy to Clipboard Toggle word wrap

  6. Assign the full overcloud kernel and ramdisk image to the new node:

    [stack@director ~]$ openstack baremetal configure boot
    Copy to Clipboard Toggle word wrap
  7. Open the ~/templates/layout.yaml file for editing.

    1. Under the parameter_defaults section, change the OsdComputeCount option from 3 to 4.
    2. Under the OsdComputeIPs section, add the new node’s IP addresses for each isolated network.
  8. Apply the new overcloud configuration by rerunning the openstack overcloud deploy command with the same TripleO Heat templates from the initial overcloud deployment:

    Example

    [stack@director ~]$ openstack overcloud deploy --templates \
    -r ~/templates/custom-roles.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/puppet-pacemaker.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml \
    -e ~/templates/network.yaml \
    -e ~/templates/ceph.yaml \
    -e ~/templates/compute.yaml \
    -e ~/templates/layout.yaml
    Copy to Clipboard Toggle word wrap

  9. Verify the addition of the new node:

    [stack@director ~]$ openstack server list
    Copy to Clipboard Toggle word wrap
    Note

    If the node status is ACTIVE, then the new node was added successfully to the overcloud.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat