使用 Cyborg 加速器¶
从 microversion 2.82 开始,nova 支持使用 Cyborg 服务配置加速器的服务器创建,Cyborg 服务提供加速器的生命周期管理。
要启动带有加速器的服务器,管理员(或具有适当权限的用户)必须执行以下操作
在 Cyborg 中创建一个设备配置文件,指定需要配置哪些加速器资源。(请参阅 Cyborg 设备配置文件 API。)
将设备配置文件名称设置为所选 flavor 中的一个 extra spec,语法如下
accel:device_profile=$device_profile_name
所选 flavor 可以是新创建的,也可以是现有的。
使用该 flavor 创建服务器
openstack server create --flavor $myflavor --image $myimage $servername
Nova 仅支持对带有加速器的实例执行特定的操作。支持和不支持的操作列表如下
支持的操作。
创建和删除。
重启(软重启和硬重启)。
暂停和取消暂停。
停止和启动。
创建快照。
备份。
救援和取消救援。
重建。
驱逐。
搁置和取消搁置。
不支持的操作
调整大小。
挂起和恢复。
冷迁移。
实时迁移。
在版本 22.0.0(Victoria) 中更改:添加了对重建和驱逐操作的支持。
在版本 23.0.0(Wallaby) 中更改:添加了对搁置和取消搁置操作的支持。
某些操作,例如锁定和解锁,对于加速器而言实际上是空操作,因此它们可以正常工作。
注意事项¶
注意
此信息基于 21.0.0 Ussuri 版本。如果进行了改进或修复了问题,将按项目记录。
对于嵌套资源提供程序
如果 flavor 请求由嵌套资源提供程序库存(例如 vGPU)提供的资源,并且用户想要多创建(例如 –max 2),那么即使每个嵌套资源提供程序至少可以支持一个特定实例,调度器也可能会返回 NoValidHosts 异常,如果总请求容量不由单个嵌套资源提供程序支持。(请参阅 bug 1874664。)
例如,如果两个子 RP 各具有 4 个 vGPU 库存
您可以使用 –max 2 请求 flavor 中的 2 个 vGPU 的设备配置文件。
但是,您不能使用 –max 2 请求 flavor 中的 4 个 vGPU 的设备配置文件。
使用 Cyborg 的 SRIOV¶
从 Xena 版本开始,nova 支持使用 Cyborg 服务配置 SRIOV 的服务器创建。
要启动带有加速器的服务器,管理员(或具有适当权限的用户)必须执行以下操作
在 Cyborg 中创建一个设备配置文件,指定需要配置哪些加速器资源。(请参阅 Cyborg 设备配置文件 API,Cyborg SRIOV 测试报告。)
创建一个 ‘accelerator-direct’ vnic 类型的端口,并将设备配置文件名称设置为 Cyborg 设备配置文件,语法如下
openstack port create $port_name --network $network_name --vnic-type=accelerator-direct --device-profile $device_profile_name
使用该端口创建服务器
openstack server create --flavor $myflavor --image $myimage $servername --nic port-id=$port-ID
Nova 仅支持对带有加速器的实例执行特定的操作。支持和不支持的操作列表如下
支持的操作。
创建和删除。
重启(软重启和硬重启)。
暂停和取消暂停。
停止和启动。
重建。
救援和取消救援。
创建快照。
备份。
不支持的操作
调整大小。
挂起和恢复。
冷迁移。
实时迁移。
搁置和取消搁置。
驱逐。
附加/分离带有设备配置文件的端口。