第 11 章 置备和部署 overcloud

要创建 overcloud,您必须执行以下任务:

  1. 为您的物理网络置备网络资源:

    1. 如果要部署网络隔离或自定义可组合网络,请使用 YAML 格式创建网络定义文件。
    2. 运行网络调配命令,包括网络定义文件。
    3. 以 YAML 格式创建网络虚拟 IP (VIP)定义文件。
    4. 运行 network VIP 置备命令,包括网络 VIP 定义文件。
  2. 置备裸机节点:

    1. 以 YAML 格式创建节点定义文件。
    2. 运行裸机节点置备命令,包括节点定义文件。
  3. 部署 overcloud。

    1. 运行部署命令,包括调配命令生成的 heat 环境文件。

11.1. 置备 overcloud 网络

要为 Red Hat OpenStack Platform (RHOSP)物理网络环境配置网络资源,您必须执行以下任务:

  1. 为您的 overcloud 配置并调配网络资源。
  2. 为您的 overcloud 配置并置备网络虚拟 IP。

11.1.1. 配置并置备 overcloud 网络定义

您可以使用 YAML 格式的网络定义文件为您的 overcloud 配置物理网络。置备过程从网络定义文件创建一个 heat 环境文件,该文件包含您的网络规格。部署 overcloud 时,请将此 heat 环境文件包含在部署命令中。

先决条件

流程

  1. 查找 stackrc undercloud 凭据文件:

    $ source ~/stackrc
  2. 将所需的网络定义模板示例从 /usr/share/openstack-tripleo-heat-templates/network-data-samples 复制到环境文件目录中:

    (undercloud)$ cp /usr/share/openstack-tripleo-heat-templates/network-data-samples/default-network-isolation.yaml /home/stack/templates/network_data.yaml
  3. 为您的网络环境配置网络定义文件。例如,您可以更新外部网络定义:

    - name: External
      name_lower: external
      vip: true
      mtu: 1500
      subnets:
        external_subnet:
          ip_subnet: 10.0.0.0/24
          allocation_pools:
            - start: 10.0.0.4
              end: 10.0.0.250
          gateway_ip: 10.0.0.1
          vlan: 10
  4. 为您的环境配置任何其他网络和网络属性。有关您可以在网络定义文件中配置网络属性的属性的更多信息,请参阅配置 overcloud 网络
  5. 置备 overcloud 网络:

    (undercloud)$ openstack overcloud network provision \
     [--templates <templates_directory> \]
     --output  <deployment_file> \
     /home/stack/templates/<networks_definition_file>
    • 可选:包含 --templates 选项,以使用您自己的模板,而不是位于 /usr/share/openstack-tripleo-heat-templates 中的默认模板。将 <templates_directory > 替换为包含模板的目录的路径。
    • <deployment_file > 替换为用于部署命令生成的 heat 环境文件名称,如 /home/stack/templates/overcloud-networks-deployed.yaml
    • <networks_definition_file > 替换为网络定义文件的名称,如 network_data.yaml
  6. 在网络置备完成后,您可以使用以下命令检查创建的网络和子网:

    (undercloud)$ openstack network list
    (undercloud)$ openstack subnet list
    (undercloud)$ openstack network show <network>
    (undercloud)$ openstack subnet show <subnet>
    • <network > 替换为您要检查的网络的名称或 UUID。
    • <subnet > 替换为您要检查的子网的名称或 UUID。

11.1.2. 为 overcloud 配置并置备网络 VIP

您可以使用 YAML 格式在网络 VIP 定义文件中为您的 overcloud 配置网络虚拟 IP (VIP)。置备过程从 VIP 定义文件创建一个 heat 环境文件,其中包含您的 VIP 规格。部署 overcloud 时,请将此 heat 环境文件包含在部署命令中。

先决条件

流程

  1. 查找 stackrc undercloud 凭据文件:

    $ source ~/stackrc
  2. 将所需的网络 VIP 定义模板示例从 /usr/share/openstack-tripleo-heat-templates/network-data-samples 复制到环境文件目录中:

    (undercloud)$ cp /usr/share/openstack-tripleo-heat-templates/network-data-samples/vip-data-default-network-isolation.yaml /home/stack/templates/vip_data.yaml
  3. 可选:为环境配置 VIP 定义文件。例如,以下定义了外部网络和 control plane VIP:

    - network: external
      dns_name: overcloud
    - network: ctlplane
      dns_name: overcloud
  4. 为环境配置任何其他网络 VIP 属性。有关您可以在 VIP 定义文件中配置 VIP 属性的属性的更多信息,请参阅 添加可组合网络
  5. 置备网络 VIP:

    (undercloud)$ openstack overcloud network vip provision \
     [--templates <templates_directory> \]
     --stack <stack> \
     --output <deployment_file> \
     /home/stack/templates/<vip_definition_file>
    • 可选:包含 --templates 选项,以使用您自己的模板,而不是位于 /usr/share/openstack-tripleo-heat-templates 中的默认模板。将 <templates_directory > 替换为包含模板的目录的路径。
    • &lt;stack> 替换为置备网络 VIP 的堆栈的名称,如 overcloud
    • <deployment_file > 替换为用于部署命令生成的 heat 环境文件名称,如 /home/stack/templates/overcloud-vip-deployed.yaml
    • <vip_definition_file > 替换为 VIP 定义文件的名称,如 vip_data.yaml
  6. 当网络 VIP 置备完成后,您可以使用以下命令检查创建的 VIP:

    (undercloud)$ openstack port list
    (undercloud)$ openstack port show <port>
    • <port > 替换为您要检查的端口的名称或 UUID。