功能分类¶
本文档展示了一个矩阵,描述了哪些功能已准备好使用,哪些功能仍在开发中。它包括指向相关文档和功能测试的链接。
警告
请注意:这是一个正在进行中的工作!
目标¶
用户希望为他们的用例获得可靠、长期的解决方案。功能分类矩阵标识了哪些功能已完成并准备好使用,哪些功能应谨慎使用。
该矩阵也有利于开发人员,因为它提供了一个需要进一步工作才能被认为完成的功能列表。
以下是针对一些重要垂直领域的矩阵
有关每个矩阵中概念的更多详细信息,请参阅 概念说明。
通用云功能¶
这是开发/测试云和其他类似通用云所需的主要功能的摘要,并描述了它们当前的状态。
以下部分介绍 NFV 和 HPC 特定功能。这些关注对这些更具体的用例集至关重要的特定功能和场景。
摘要
| 特性 | 成熟度 | Ironic CI | libvirt+kvm (x86 & ppc64) | libvirt+kvm (s390x) | libvirt+virtuozzo CT | libvirt+virtuozzo VM | VMware CI | IBM zVM CI |
|---|---|---|---|---|---|---|---|---|
| 创建服务器和删除服务器 | 完成 | ? |
✔ |
? |
✔ |
✔ |
✔ |
✔ |
| 快照服务器 | 完成 | ? |
✔ |
? |
✔ |
✔ |
? |
✔ |
| 服务器电源操作 | 完成 | ? |
✔ |
? |
✔ |
✔ |
✔ |
✔ |
| 重建服务器 | 完成 | ? |
✔ |
? |
✔ |
✔ |
✔ |
✖ |
| 调整服务器大小 | 完成 | ? |
✔ |
? |
✔ |
✔ |
✔ |
✖ |
| 卷操作 | 完成 | ✖ |
✔ |
? |
✔ |
✔ |
✔ |
✖ |
| 启动时的自定义磁盘配置 | 完成 | ✖ |
✔ |
? |
✖ |
✔ |
✔ |
✖ |
| 启动时的自定义 neutron 配置 | 完成 | ✖ |
✔ |
? |
? |
? |
✔ |
✔ |
| 暂停服务器 | 完成 | ✖ |
✔ |
? |
✖ |
✔ |
✔ |
✔ |
| 挂起服务器 | 完成 | ✖ |
✔ |
? |
✔ |
✔ |
✔ |
✖ |
| 服务器控制台输出 | 完成 | ✖ |
✔ |
? |
? |
? |
✔ |
✔ |
| 服务器救援 | 完成 | ✖ |
✔ |
? |
✔ |
✔ |
✔ |
✖ |
| 服务器 Config Drive | 完成 | ✔ |
✔ |
? |
✖ |
✔ |
✔ |
✔ |
| 服务器更改密码 | 实验性 | ✖ |
✔ |
? |
✖ |
✖ |
✖ |
✖ |
| 服务器 Shelve 和 Unshelve | 完成 | ✖ |
✔ |
? |
✖ |
✔ |
✖ |
✖ |
细节
- 创建服务器和删除服务器
这包括创建服务器和删除服务器。具体来说,这是关于使用默认磁盘和网络配置从 glance 镜像启动服务器。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/#servers-servers
- 管理文档:https://docs.openstack.org/nova/2025.2/user/launch-instances.html
- Tempest 测试:9a438d88-10c6-4bcd-8b5b-5b6e25e1346f,585e934c-448e-43c4-acbf-d06a9b899997
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
部分 - libvirt+virtuozzo VM:
部分 - VMware CI:
完成 - Ironic CI:
未知 - IBM zVM CI:
完成
- 成熟度:
- 快照服务器
这是从当前正在运行的服务器创建 glance 镜像。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?expanded=#servers-run-an-action-servers-action
- 管理文档:https://docs.openstack.org/glance/2025.2/admin/troubleshooting.html
- Tempest 测试:aaacd1d0-55a2-4ce8-818a-b5439df8adc9
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
部分 - libvirt+virtuozzo VM:
部分 - VMware CI:
未知 - Ironic CI:
未知 - IBM zVM CI:
完成
- 成熟度:
- 服务器电源操作
这包括重启、关机和启动。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?expanded=#servers-run-an-action-servers-action
- 管理文档
- Tempest 测试:2cb1baf6-ac8d-4429-bf0d-ba8a0ba53e32,af8eafd4-38a7-4a4b-bdbc-75145a580560
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
部分 - libvirt+virtuozzo VM:
部分 - VMware CI:
完成 - Ironic CI:
未知 - IBM zVM CI:
完成
- 成熟度:
- 重建服务器
您可以重建服务器,可以选择性地指定要使用的 glance 镜像。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?expanded=#servers-run-an-action-servers-action
- 管理文档
- Tempest 测试:aaa6cdf3-55a7-461a-add9-1c8596b9a07c
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
部分 - libvirt+virtuozzo VM:
部分 - VMware CI:
完成 - Ironic CI:
未知 - IBM zVM CI:
缺失
- 成熟度:
- 调整服务器大小
您调整服务器的大小到新的 flavor,然后确认或撤销该操作。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?expanded=#servers-run-an-action-servers-action
- 管理文档
- Tempest 测试:1499262a-9328-4eda-9068-db1ac57498d2
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
完成 - libvirt+virtuozzo VM:
部分 - VMware CI:
完成 - Ironic CI:
未知 - IBM zVM CI:
缺失
- 成熟度:
- 卷操作
这是关于附加卷、分离卷。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/#servers-with-volume-attachments-servers-os-volume-attachments
- 管理文档:https://docs.openstack.org/cinder/2025.2/admin/blockstorage-manage-volumes.html
- Tempest 测试:fff42874-7db5-4487-a8e1-ddda5fb5288d
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
完成 - libvirt+virtuozzo VM:
完成 - VMware CI:
完成 - Ironic CI:
缺失 - IBM zVM CI:
缺失
- 成熟度:
- 启动时的自定义磁盘配置
这是关于支持 BDMv2 的所有功能。这包括以各种方式从卷启动,以及指定一组自定义的临时磁盘。请注意,某些驱动程序仅支持 API 允许的一部分。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?expanded=create-image-createimage-action-detail#create-server
- 管理文档:https://docs.openstack.org/nova/2025.2/user/block-device-mapping.html
- Tempest 测试:557cd2c2-4eb8-4dce-98be-f86765ff311b, 36c34c67-7b54-4b59-b188-02a2f458a63b
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
缺失 - libvirt+virtuozzo VM:
完成 - VMware CI:
部分 - Ironic CI:
缺失 - IBM zVM CI:
缺失
- 成熟度:
- 启动时的自定义 neutron 配置
这是关于支持从一个或多个 neutron 端口启动,或者所有相关的快捷方式,例如启动指定的网络。这不包括 SR-IOV 或类似功能,仅支持简单的 neutron 端口。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?&expanded=create-server-detail
- 管理文档
- Tempest 测试:2f3a0127-95c7-4977-92d2-bc5aec602fb4
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
未知 - libvirt+virtuozzo VM:
未知 - VMware CI:
部分 - Ironic CI:
缺失 - IBM zVM CI:
部分
- 成熟度:
- 暂停服务器
这是暂停和取消暂停服务器,其中状态保存在内存中。
info
- 成熟度:
完成 - API 文档:https://docs.openstack.org/api-ref/compute/?#pause-server-pause-action
- 管理文档
- Tempest 测试:bd61a9fd-062f-4670-972b-2d6c3e3b9e73
驱动程序
- libvirt+kvm (x86 & ppc64):
完成 - libvirt+kvm (s390x):
未知 - libvirt+virtuozzo CT:
缺失 - libvirt+virtuozzo VM:
部分 - VMware CI:
部分 - Ironic CI:
缺失 - IBM zVM CI:
complete
- 成熟度:
- 挂起服务器
暂停和恢复服务器,状态保存在磁盘上。
info
- 成熟度:
完成 - API 文档: https://docs.openstack.org/api-ref/compute/?expanded=suspend-server-suspend-action-detail
- 管理文档
- Tempest 测试: 0d8ee21e-b749-462d-83da-b85b41c86c7f
驱动程序
- libvirt+kvm (x86 & ppc64):
complete - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
partial - libvirt+virtuozzo VM:
partial - VMware CI:
complete - Ironic CI:
missing - IBM zVM CI:
missing
- 成熟度:
- 服务器控制台输出
获取服务器的当前控制台输出。
info
- 成熟度:
完成 - API 文档: https://docs.openstack.org/api-ref/compute/#show-console-output-os-getconsoleoutput-action
- 管理文档
- Tempest 测试: 4b8867e6-fffa-4d54-b1d1-6fdda57be2f3
驱动程序
- libvirt+kvm (x86 & ppc64):
complete - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
unknown - libvirt+virtuozzo VM:
unknown - VMware CI:
partial - Ironic CI:
missing - IBM zVM CI:
complete
- 成熟度:
- 服务器救援
使用指定 glance 镜像中的新根磁盘启动服务器,以便用户修复启动分区配置,或类似操作。
info
- 成熟度:
完成 - API 文档: https://docs.openstack.org/api-ref/compute/#rescue-server-rescue-action
- 管理文档
- Tempest 测试: fd032140-714c-42e4-a8fd-adcd8df06be6, 70cdb8a1-89f8-437d-9448-8844fd82bf46
驱动程序
- libvirt+kvm (x86 & ppc64):
complete - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
partial - libvirt+virtuozzo VM:
complete - VMware CI:
complete - Ironic CI:
missing - IBM zVM CI:
missing
- 成熟度:
- 服务器 Config Drive
确保用户在启动服务器时提供的用户数据在预期的 config drive 位置之一可用。
info
- 成熟度:
完成 - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/config-drive.html
- Tempest 测试: 7fff3fb3-91d8-4fd0-bd7d-0204f1f180ba
驱动程序
- libvirt+kvm (x86 & ppc64):
complete - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
missing - libvirt+virtuozzo VM:
partial - VMware CI:
complete - Ironic CI:
partial - IBM zVM CI:
complete
- 成熟度:
- 服务器更改密码
重置服务器内用户的密码的能力。
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#change-administrative-password-changepassword-action
- 管理文档
- Tempest 测试: 6158df09-4b82-4ab3-af6d-29cf36af858d
驱动程序
- libvirt+kvm (x86 & ppc64):
partial - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
missing - libvirt+virtuozzo VM:
missing - VMware CI:
missing - Ironic CI:
missing - IBM zVM CI:
missing
- 成熟度:
- 服务器 Shelve 和 Unshelve
使服务器在逻辑上保持活动状态,但不使用任何云资源。对于基于本地磁盘的实例,这涉及获取快照,称为 offloading。
info
- 成熟度:
完成 - API 文档: https://docs.openstack.org/api-ref/compute/#shelve-server-shelve-action
- 管理文档
- Tempest 测试: 1164e700-0af0-4a4c-8792-35909a88743c,c1b6318c-b9da-490b-9c67-9339b627271f
驱动程序
- libvirt+kvm (x86 & ppc64):
complete - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
missing - libvirt+virtuozzo VM:
complete - VMware CI:
missing - Ironic CI:
missing - IBM zVM CI:
missing
- 成熟度:
NFV 云功能¶
网络功能虚拟化 (NFV) 是将网络节点功能虚拟化为构建块,这些构建块可以连接或链接在一起以创建特定服务。通常,这些工作负载需要类似裸机的性能,即低延迟和接近线路速度的性能。
重要提示
在 Train 之前的部署中,或在正在进行滚动升级的 Stein/Train 混合部署中,除非明确 启用,使用 libvirt 驱动程序时,具有 NUMA 拓扑结构的实例的实时迁移是不可能的。NUMA 拓扑结构可以显式指定,或者由于使用 CPU pinning 或 huge pages 而隐式添加。有关更多信息,请参阅 bug #1289064。从 Train 开始,使用 libvirt 驱动程序时,具有 NUMA 拓扑结构的实例的实时迁移完全受支持。
摘要
| 特性 | 成熟度 | libvirt+kvm (x86 & ppc64) | libvirt+kvm (s390x) |
|---|---|---|---|
| NUMA 放置 | 实验性 | ✔ |
? |
| CPU 固定策略 | 实验性 | ✔ |
? |
| CPU 固定线程策略 | 实验性 | ✔ |
? |
细节
- NUMA 放置
配置实例 vCPU 和内存跨主机 NUMA 节点的放置
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/cpu-topologies.html#customizing-instance-cpu-pinning-policies
- Tempest 测试:9a438d88-10c6-4bcd-8b5b-5b6e25e1346f,585e934c-448e-43c4-acbf-d06a9b899997
驱动程序
- libvirt+kvm (x86 & ppc64):
partial - libvirt+kvm (s390x):
unknown
- 成熟度:
- CPU 固定策略
启用/禁用实例 vCPU 到主机 CPU 的绑定
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/cpu-topologies.html#customizing-instance-cpu-pinning-policies
- Tempest 测试
驱动程序
- libvirt+kvm (x86 & ppc64):
partial - libvirt+kvm (s390x):
unknown
- 成熟度:
- CPU 固定线程策略
配置在使用固定时的主机硬件线程的使用
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/cpu-topologies.html#customizing-instance-cpu-pinning-policies
- Tempest 测试
驱动程序
- libvirt+kvm (x86 & ppc64):
partial - libvirt+kvm (s390x):
unknown
- 成熟度:
HPC 云功能¶
高性能计算 (HPC) 云有一些特定的需求,这些需求涵盖在本组功能中。
摘要
| 特性 | 成熟度 | Ironic | libvirt+kvm (x86 & ppc64) | libvirt+kvm (s390x) | libvirt+virtuozzo CT | libvirt+virtuozzo VM | VMware CI |
|---|---|---|---|---|---|---|---|
| GPU 直通 | 实验性 | ? |
✔ l |
? |
✔ |
✔ |
✖ |
| 虚拟 GPU | 实验性 | ✖ |
✔ queens |
? |
? |
? |
✖ |
细节
- GPU 直通
OpenStack 中的 PCI 直通功能允许完全访问和直接控制客户机中的物理 PCI 设备。此机制对于可以连接到 PCI 总线的任何设备都是通用的。正确的驱动程序安装是客户机正确使用设备的唯一要求。
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/pci-passthrough.html
- Tempest 测试:9a438d88-10c6-4bcd-8b5b-5b6e25e1346f,585e934c-448e-43c4-acbf-d06a9b899997
驱动程序
- libvirt+kvm (x86 & ppc64):
complete(在“L”版本中更新) - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
partial - libvirt+virtuozzo VM:
partial - VMware CI:
missing - Ironic:
unknown
- 成熟度:
- 虚拟 GPU
在服务器创建时将虚拟 GPU 附加到实例
info
- 成熟度:
experimental - API 文档: https://docs.openstack.org/api-ref/compute/#create-server
- Admin 文档: https://docs.openstack.org/nova/2025.2/admin/virtual-gpu.html
- Tempest 测试
驱动程序
- libvirt+kvm (x86 & ppc64):
partial(在“QUEENS”版本中更新) - libvirt+kvm (s390x):
unknown - libvirt+virtuozzo CT:
unknown - libvirt+virtuozzo VM:
unknown - VMware CI:
missing - Ironic:
missing
- 成熟度:
概念说明¶
本文档使用以下术语。
用户¶
这些是我们在本文档中谈论的用户
- 应用程序部署者
直接或间接使用 API 创建和删除服务器
- 应用程序开发者
创建在云上运行的镜像和应用程序
- 云操作员
管理云
- 自助服务管理员
运行和使用云
注意
这不是一个详尽的用户角色列表,而是一组指示性用户。
功能组¶
为了减小矩阵的大小,我们将功能组织成组。每个组映射到一组可以通过一组场景和测试验证的用户故事。通常,这意味着一组 tempest 测试。
此列表侧重于诸如附加和分离卷之类的 API 概念,而不是诸如将 iSCSI 卷附加到基于 KVM 的 VM 之类的部署特定概念。
部署¶
部署映射到特定的测试环境。我们提供环境的完整描述,以便能够复现针对每个功能组报告的测试结果。
此描述包括部署的所有方面,例如虚拟机监控程序、nova-compute 服务的数量、存储、网络驱动程序以及正在测试的镜像类型。
功能组成熟度¶
功能组成熟度评级是针对 API 概念而言的,而不是针对特定的部署而言的。每个功能组的部署评级涵盖了该细节。
注意
虽然有一些相似之处,但此列表与 Interop 工作没有直接关系。
功能组评级
- 不完整
不完整的功能是指那些没有足够的功能来满足实际用例的功能。
- 实验
实验性功能应谨慎使用。它们可能几乎没有或没有上游测试,因此很可能包含错误。
- 完成
为了被认为完成,一个功能必须具备
完整的 API 文档(概念和 REST 调用定义)
完整的管理员文档
tempest 测试,用于定义该功能是否正常工作
足够的功能和可靠性,使其在实际场景中可用
合理预期该功能将得到长期支持
- 完成且必需
有各种原因导致一个完成的功能可能是必需的,但通常是在所有驱动程序都支持该功能时。新的驱动程序需要在被允许进入上游 Nova 之前证明它们支持所有必需的功能。
必需的功能是指任何新技术在被允许进入代码库之前都必须支持的功能。列表越大,基于 Nova 的云上可用的功能就越多。
- 已弃用
已弃用的功能是指计划在 Nova 的未来主要版本中删除的功能。如果一个功能被标记为完成,则永远不应弃用它。
如果一个功能在几个版本中不完整或处于实验阶段,它就有可能被弃用并最终从代码库中删除。
功能组的部署评级¶
部署评级是指在特定部署上每个功能组的测试状态。
部署评级
- 未知
没有可用数据。
- 未实现
没有测试存在。
- 已实现
自我声明 tempest 测试通过。
- 定期测试
由第三方 CI 测试。
- 已检查
作为检查或门控队列的一部分进行测试。
最终目标是从第三方 CI 报告系统自动执行此列表,但目前我们将在 ini 文件中记录手动检查。理想情况下,我们将在每个里程碑处审查此列表。