5.4. 使用 SR-IOV 网络接口创建实例
要创建具有单一根 I/O 虚拟化(SR-IOV)网络接口的实例,您需要创建所需的 SR-IOV 端口。
使用 API microversion 2.94 时,如果您在创建、更新或重建实例时传递了可选的主机名,您可以在指定主机名时使用完全限定域名(FQDN)。使用 FQDN 时,请确保将 [api]dhcp_domain
配置选项设为空字符串,以使正确的 FQDN 出现在元数据 API 中的 hostname 字段中。默认情况下,主机名从显示名称规范化,所有出现的 "." 都从主机名中删除,并替换为 "_"。
先决条件
-
管理员已为您创建一个项目,并为您提供了一个
clouds.yaml
文件来访问云。 -
已安装
python-openstackclient
软件包。
流程
检索具有实例所需硬件配置文件的类别的名称或 ID:
openstack flavor list
$ openstack flavor list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意选择足够大小的类别,以便镜像成功引导,否则实例将无法启动。
提示您可以通过选择具有您需要的策略的类别文件来指定应用到 PCI 透传设备和 SR-IOV 接口的 NUMA 关联性策略。如需有关可用策略的更多信息,请参阅为实例创建指南中的 类别元数据中的 实例 PCI NUMA 关联性策略。如果您选择了带有 NUMA 关联性策略的类别,您使用的镜像必须具有相同的 NUMA 关联性策略或没有 NUMA 关联性策略。
检索具有实例所需软件配置集的镜像名称或 ID:
openstack image list
$ openstack image list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您所需的镜像不可用,您可以下载或创建新镜像。有关如何创建或下载云镜像的详情,请参考 执行存储操作 中的 创建 RHEL KVM 镜像。
提示您可以通过选择具有您需要的策略的镜像来指定应用到您的实例的 NUMA 关联性策略,用于 PCI 透传设备和 SR-IOV 接口。如需有关可用策略的更多信息,请参阅为实例创建指南中的 类别元数据中的 实例 PCI NUMA 关联性策略。如果选择具有 NUMA 关联性策略的镜像,则您使用的类别必须具有相同的 NUMA 关联性策略或没有 NUMA 关联性策略。
检索您要连接实例的网络的名称或 ID:
openstack network list
$ openstack network list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 SR-IOV 接口所需的端口类型:
openstack port create --network <network> \ --vnic-type <vnic_type> mySriovPort
$ openstack port create --network <network> \ --vnic-type <vnic_type> mySriovPort
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<network
> 替换为在第 3 步中检索的网络的名称或 ID。 将
<vnic_type
> 替换为以下值之一:-
直接
:创建直接模式 SR-IOV 虚拟功能(VF)端口。 -
direct-physical
:创建一个直接模式 SR-IOV 物理功能(PF)端口。 -
macvtap
:创建一个使用 macvtap 的间接模式 SR-IOV VF 端口向实例公开 virtio 接口。
-
-
将
创建实例:
openstack server create --flavor <flavor> \ --image <image> --port <port> \ --wait mySriovInstance
$ openstack server create --flavor <flavor> \ --image <image> --port <port> \ --wait mySriovInstance
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<flavor
> 替换为在第 1 步中检索的类别的名称或 ID。 -
将
<image
> 替换为在第 2 步中检索的镜像的名称或 ID。 -
将
<port
> 替换为在第 4 步中创建的端口的名称或 ID。
-
将