此内容没有您所选择的语言版本。

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

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat