第 4 章 部署后配置裸机置备服务


使用裸机置备服务(ironic)部署 overcloud 后,您必须为裸机工作负载准备 overcloud。要为裸机工作负载准备 overcloud,并让您的云用户创建裸机实例,请完成以下任务:

  • 配置网络服务(neutron),以与裸机置备服务集成。
  • 配置节点清理。
  • 创建裸机类别和资源类。
  • 可选:创建裸机镜像。
  • 将物理计算机添加为裸机节点。
  • 可选:配置 Redfish 虚拟介质引导。
  • 可选:创建主机聚合来分隔物理和虚拟置备。

4.1. 为裸机置备配置网络服务

您可以配置 Networking 服务(neutron)来与裸机置备服务(ironic)集成。您可以使用以下方法之一配置裸机网络:

  • 为裸机置备编排器服务 ironic-conductor 创建单个扁平裸机网络。此网络必须路由到 control plane 网络上的裸机置备服务。
  • 创建自定义可组合网络,以在 overcloud 中实施裸机置备服务。

您可以通过为裸机置备编排器服务 ironic-conductor 创建单一裸机网络,将网络服务(neutron)配置为与裸机置备服务(ironic)集成。此网络必须路由到 control plane 网络上的裸机置备服务。

步骤

  1. root 用户身份登录托管 Networking 服务(neutron)的节点。
  2. 提供 overcloud 凭证文件:

    # source ~/<credentials_file>
    Copy to Clipboard Toggle word wrap
    • <credentials_file > 替换为您的凭证文件的名称,如 overcloudrc
  3. 创建扁平网络,以置备裸机实例:

    # openstack network create \
      --provider-network-type flat \
      --provider-physical-network <provider_physical_network> \
      --share <network_name>
    Copy to Clipboard Toggle word wrap
    • 将 < provider_physical_network > 替换为您实现虚拟网络的物理网络名称,该网络被配置为 network-environment.yaml 文件中的 NeutronBridgeMappings 参数。
    • <network_name > 替换为这个网络的名称。
  4. 在扁平网络上创建子网:

    # openstack subnet create \
      --network <network_name> \
      --subnet-range <network_cidr> \
      --ip-version 4 \
      --gateway <gateway_ip> \
      --allocation-pool start=<start_ip>,end=<end_ip> \
      --dhcp <subnet_name>
    Copy to Clipboard Toggle word wrap
    • 将 &lt ;network_name > 替换为您在上一步中创建的 provisioning 网络的名称。
    • 将 < network_cidr > 替换为子网所代表的 IP 地址块的无类别域间路由(CIDR)表示。您以 < start_ip> 开头并以 < end_ip & gt; 结尾的范围中指定的 IP 地址块必须是在 < network_cidr> 指定的 IP 地址块中。
    • 使用充当新子网的网关的路由器接口的 IP 地址或主机名替换 <gateway_ip>。这个地址必须在由 < network_cidr > 指定的 IP 地址块内,但由范围指定的 IP 地址块之外,以 < start_ip> 开头并以 &lt; end_ip > 结尾。
    • <start_ip > 替换为 IP 地址,该地址表示从其分配浮动 IP 地址的新子网中 IP 地址范围的开头。
    • <end_ip > 替换为 IP 地址,该地址表示从其分配浮动 IP 地址的新子网中 IP 地址范围的末尾。
    • <subnet_name > 替换为子网的名称。
  5. 为网络和子网创建一个路由器,以确保网络服务提供元数据请求:

    # openstack router create <router_name>
    Copy to Clipboard Toggle word wrap
    • <router_name > 替换为路由器的名称。
  6. 将子网附加到新路由器,以启用来自 cloud-init 的元数据请求,以及要配置的节点:

    # openstack router add subnet <router_name> <subnet>
    Copy to Clipboard Toggle word wrap
    • <router_name > 替换为路由器的名称。
    • 将 & lt;subnet > 替换为在第 4 步中创建的裸机子网的 ID 或名称。

您可以通过创建自定义可组合网络以在 overcloud 中实施裸机置备服务(neutron),将网络服务(neutron)配置为与裸机置备服务(ironic)集成。

步骤

  1. 登录 undercloud 主机。
  2. 提供 overcloud 凭证文件:

    $ source ~/<credentials_file>
    Copy to Clipboard Toggle word wrap
    • <credentials_file > 替换为您的凭证文件的名称,如 overcloudrc
  3. 检索托管裸机置备服务的提供商网络的 UUID:

    (overcloud)$ openstack network show <network_name> -f value -c id
    Copy to Clipboard Toggle word wrap
    • 将 < network_name > 替换为您要用于裸机实例置备的提供商网络的名称。
  4. 打开本地环境文件,为您的部署配置裸机置备服务,如 ironic-overrides.yaml
  5. 配置网络,以用作裸机实例置备网络:

    parameter_defaults:
      IronicProvisioningNetwork: <network_uuid>
    Copy to Clipboard Toggle word wrap
    • <network_uuid > 替换为在第 3 步中获取的提供商网络的 UUID。
  6. 查找 stackrc undercloud 凭证文件:

    $ source ~/stackrc
    Copy to Clipboard Toggle word wrap
  7. 要应用裸机实例置备网络配置,请将裸机置备环境文件添加到带有其他环境文件的堆栈中,并部署 overcloud:

    (undercloud)$ openstack overcloud deploy --templates \
      -e [your environment files] \
      -e /home/stack/templates/node-info.yaml \
      -r /home/stack/templates/roles_data.yaml \
      -e /usr/share/openstack-tripleo-heat-templates/network-environment.yaml \
      -e /usr/share/openstack-tripleo-heat-templates/environments/services/<default_ironic_template> \
      -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \
      -e /home/stack/templates/network_environment_overrides.yaml \
      -n /home/stack/templates/network_data.yaml \
      -e /home/stack/templates/ironic-overrides.yaml
    Copy to Clipboard Toggle word wrap
    • <default_ironic_template > 替换为 ironic.yamlironic-overcloud.yaml,具体取决于部署的网络服务机制驱动程序。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat