3.5. 为单元角色设计主机

要为单元角色指定裸机节点,您必须配置一个类别和资源类来标记单元角色的节点。执行以下步骤为 cellcontrollercell1 角色创建类别和裸机资源类。通过用自定义角色的名称替换单元控制器名称,为每个自定义角色重复此步骤。

流程

  1. cell1 控制器节点创建 cellcontrollercell1 overcloud 类别:

    (undercloud)$ openstack flavor create --id auto \
     --ram <ram_size_mb> --disk <disk_size_gb> \
     --vcpus <no_vcpus> cellcontrollercell1
    • <ram_size_mb> 替换为裸机节点的 RAM,以 MB 为单位。
    • <disk_size_gb> 替换为裸机节点中的磁盘大小(以 GB 为单位)。
    • <no_vcpus> 替换为裸机节点中的 CPU 数量。

      注意

      这些属性不可用于调度实例。但是,计算调度程序使用磁盘大小来确定根分区大小。

  2. 检索节点列表来识别它们的 UUID:

    (undercloud)$ openstack baremetal node list
  3. 标记您要指定为单元控制器的每个裸机节点,并带有自定义单元控制器资源类:

    (undercloud)$ openstack baremetal node set \
     --resource-class baremetal.CELL-CONTROLLER <node>

    <node> 替换为裸机节点的 ID。

  4. cellcontrollercell1 类别与自定义单元控制器资源类关联:

    (undercloud)$ openstack flavor set \
     --property resources:CUSTOM_BAREMETAL_CELL_CONTROLLER=1 \
      cellcontrollercell1

    要确定与 Bare Metal 服务节点的资源类型对应的自定义资源类的名称,请将资源类转换为大写,将每个 punctuation 标记替换为下划线,并使用 CUSTOM_ 前缀。

    注意

    类别只能请求一个裸机资源类实例。

  5. 设置以下类别属性,以防止计算调度程序使用裸机类别属性来调度实例:

    (undercloud)$ openstack flavor set \
     --property resources:VCPU=0 --property resources:MEMORY_MB=0 \
     --property resources:DISK_GB=0 cellcontrollercell1