9.5. 配置 control plane 网络

预置备 overcloud 节点使用标准 HTTP 请求从 director 获取元数据。这表示所有 overcloud 节点都需要 L3 权限来访问以下之一:

  • director 的 Control Plane 网络,这是在 undercloud.conf 文件中使用 network_cidr 参数定义的子网。overcloud 节点需要对该子网的直接访问权限或对该子网的可路由访问权限。
  • director 的公共 API 端点,使用 undercloud.conf 文件中的 undercloud_public_host 参数指定。如果没有指向 Control Plane 的 L3 路由或希望使用 SSL/TLS 通信,则此选项可用。有关配置 overcloud 节点以使用公共 API 端点的更多信息,请参阅 第 9.6 节 “为预置备节点使用单独网络”

director 使用 Control Plane 网络管理和配置标准 overcloud。对于具有预置备节点的 overcloud,可能需要对您的网络配置进行修改以适应 director 和预置备节点之间的通信。

使用网络隔离

您可以使用网络隔离分组服务以使用特定网络,包括 Control Plane。高级 Overcloud 自定义指南中有多个网络隔离策略。您可以为 Control Plane 上的节点定义特定 IP 地址。有关隔离网络和创建可预测节点放置策略的更多信息,请参阅高级 Overcloud 自定义指南中的以下章节:

注意

如果使用网络隔离,请确保您的 NIC 模板不包括用于 undercloud 访问的 NIC。这些模板可能会重新配置 NIC,这会导致在部署过程中出现连接和配置问题。

分配 IP 地址

如果不使用网络隔离,则可使用一个 Control Plane 网络管理所有服务。这需要手动配置每个节点的 Control Plane NIC,以便使用 Control Plane 网络范围内的 IP 地址。如果将 director 的 Provisioning 网络用作 Control Plane,请确保所选的 overcloud IP 地址不在置备(dhcp_startdhcp_end)和内省 (inspection_iprange) DHCP 范围之内。

在创建标准 overcloud 期间,director 将创建 OpenStack Networking (neutron) 端口并为 Provisioning/Control Plane 网络上的 overcloud 节点自动分配 IP 地址。但是,这可能导致 director 分配的地址与您为每个节点手动配置的 IP 地址不同。在这种情况下,使用可预测的 IP 地址策略来强制 director 使用 Control Plane 上的预置备 IP 分配。

例如,您可以使用具有以下 IP 分配的环境文件 ctlplane-assignments.yaml 来实现一个可预测的 IP 策略:

resource_registry:
  OS::TripleO::DeployedServer::ControlPlanePort: /usr/share/openstack-tripleo-heat-templates/deployed-server/deployed-neutron-port.yaml

parameter_defaults:
  DeployedServerPortMap:
    controller-0-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.2
      subnets:
        - cidr: 192.168.24.0/24
      network:
        tags:
          192.168.24.0/24
    compute-0-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.3
      subnets:
        - cidr: 192.168.24.0/24
      network:
        tags:
          - 192.168.24.0/24

在本示例中,OS::TripleO::DeployedServer::ControlPlanePort 资源将一组参数传递至 director,并为预置备的节点定义 IP 分配。使用 DeployedServerPortMap 参数定义与每个 overcloud 节点对应的 IP 地址和子网 CIDR。映射定义以下属性:

  1. 分配名称,其格式为 <node_hostname>-<network>,其中 <node_hostname> 值与节点的短主机名匹配,<network> 与网络的小写名称匹配。例如:controller-0-ctlplane 用于 controller-0.example.comcompute-0-ctlplane 用于 compute-0.example.com
  2. IP 分配,它采用以下参数形式:

    • fixed_ips/ip_address - 为 control plane 指定固定的 IP 地址。使用 ip_address 列表中的多个参数来定义多个 IP 地址。
    • subnets/cidr - 定义子网的 CIDR 值。

本章后面部分使用生成的环境文件 (ctlplane-assignments.yaml) 作为 openstack overcloud deploy 命令的一部分。