第 8 章 为启动实例创建类别

实例类别是一个资源模板,用于指定实例的虚拟硬件配置文件。云用户必须在启动实例时指定类别。

类别可以指定 Compute 服务必须分配给实例的以下资源数量:

  • vCPU 数量。
  • RAM,以 MB 为单位。
  • 根磁盘(以 GB 为单位)。
  • 虚拟存储,包括辅助临时存储和交换磁盘。

您可以通过使类别公开到所有项目或私有到特定的项目或域来指定谁可以使用类别。

类别可以使用元数据(也称为"额外规格")来指定实例硬件支持和配额。类别元数据会影响实例放置、资源使用量限值和性能。有关可用元数据属性的完整列表,请参阅 类别元数据

您还可以使用类别元数据键,通过匹配主机聚合中设置的 extra_specs 元数据来查找适合的主机聚合来托管实例。要将实例调度到主机聚合上,必须通过使用 aggregate_instance_ extra_specs : 命名空间前缀 extra_specs 键来限制类别元数据。如需更多信息,请参阅创建和管理主机聚合

Red Hat OpenStack Platform (RHOSP)部署包括您的云用户可以使用的以下默认公共类型集合。

表 8.1. 默认类别

名称VCPURAM根磁盘大小

m1.nano

1

128 MB

1 GB

m1.micro

1

192 MB

1 GB

注意

使用类别属性设置的行为覆盖使用镜像设置的行为。当云用户启动实例时,它们指定的类别的属性会覆盖它们指定的镜像的属性。

8.1. 创建类别

您可以为特定功能或行为创建和管理专用类别,例如:

  • 更改默认内存和容量以满足底层硬件需求。
  • 添加元数据来强制实例的特定 I/O 速率或与主机聚合匹配。

流程

  1. 创建一个类别,用于指定实例可用的基本资源:

    (overcloud)$ openstack flavor create --ram <size_mb> \
     --disk <size_gb> --vcpus <no_vcpus> \
     [--private --project <project_id>] <flavor_name>
    • <size_mb > 替换为分配给使用此类别创建的实例的 RAM 大小。
    • 将 < size_gb > 替换为要分配给使用此类别创建的实例的根磁盘大小。
    • <no_ the> 替换为为此类别创建的实例保留的 vCPU 数量。
    • 可选:指定 --private--project 选项,使类别只能被特定的项目或用户组访问。将 <project_id > 替换为可以使用此类别创建实例的项目的 ID。如果没有指定可访问性,则类别默认为 public,这意味着它可供所有项目使用。

      注意

      您不能在创建后将公共类别设置为私有。

    • <flavor_name > 替换为您的类别的唯一名称。

      有关类别参数的更多信息,请参阅类别参数

  2. 可选: 要指定类别元数据,请使用键值对设置所需的属性:

    (overcloud)$ openstack flavor set \
     --property <key=value> --property <key=value> ... <flavor_name>
    • &lt;key> 替换为您要分配给使用此类别创建的实例的属性的元数据键。有关可用元数据密钥的列表,请参阅 类别元数据
    • 使用您要分配给使用此类别创建的实例的元数据密钥值替换 <value>
    • <flavor_name > 替换为您的类型的名称。

      例如,使用以下类别启动的实例有两个 CPU 套接字,各自有两个 CPU 套接字:

      (overcloud)$ openstack flavor set \
       --property hw:cpu_sockets=2 \
       --property hw:cpu_cores=2 processor_topology_flavor