添加 z/VM 支持¶
在 nova 树中添加 z/VM 支持。
z/VM 提供高度安全和可扩展的企业云基础设施,以及在 IBM z 系统和 IBM LinuxONE 上高效运行多种关键应用程序的环境,支持比任何其他平台在单个占位符上更多的虚拟机。这些 z/VM 虚拟机可以运行 Linux、z/OS 等。详细信息请参阅 http://www.vm.ibm.com/
问题描述¶
z/VM
z/VM 驱动程序团队参考之前的 virt 驱动程序集成,已经满足了 Nova 核心团队提出的以下要求:
CI 正在运行并发布针对 Nova 和 nova-zvm 驱动程序的结果:结果是公开可用的,CI 的配置也是公开的。根据 Nova 核心团队的指导,CI 针对所有 Nova 变更集运行,但目前未对补丁进行投票,因为它不是树内驱动程序。 CI 测试日志 也公开可用。
z/VM 本身以外的外部用户:公司正在积极使用 z/VM 驱动程序集成到 OpenStack 云中,例如 SuSE;Canonical 和 RHEL 正在讨论中。目前 Openmainframe 项目 是主导的大型技术社区和主框架启用开放项目,包括 openstack 其他开源项目。
对驱动程序表现出的承诺:我们的第一个支持版本是 Icehouse,并且我们继续维护和扩展驱动程序,后续每个版本都遵循稳定分支支持模型。我们致力于遵循 OpenStack 方式 开发驱动程序,采用开源代码、开放的设计/开发和开放的社区。z/VM 驱动程序符合 Nova 计算驱动程序的设计,并遵循社区开发方向。我们还确保开发团队积极参与上游开发 - 参加 IRC 会议、中期周期和峰会。
用例¶
用户应该能够部署基于 glance 的镜像,并在具有 z/VM 超visor 的系统上使用基本网络。该镜像可以是 Linux (RHEL, SLES, Ubuntu 等…)。
提议的变更¶
提出的更改是提交一系列补丁,构建足够的基本功能以支持在 z/VM 上部署基于 glance 的虚拟机。这部分驱动程序代码(以及相关的单元测试)将支持诸如
基本的 VM 生命周期任务(生成、关机、重启、快照等)
实例状态
控制台输出
使用 z/VM neutron agent 的 Flat/VLAN 网络
Config drive
驱动程序的这一阶段旨在获得 支持矩阵 中 强制 和 可选 选项的最低限度。
我们将其视为一个长期的旅程。我们将继续努力在后续版本中将更多功能引入 Nova 树。
现在在树外驱动程序中支持的一些特定功能,这些功能将作为未来蓝图的一部分,但不在本次蓝图中
调整大小
实时迁移
冷迁移
Cinder 卷支持
备选方案¶
集成整个驱动程序。这对于一个版本来说太过于庞大,并且需要过多的核心评审人员时间。
不集成驱动程序。由于有用户在使用该驱动程序,并且 Nova 的方向是将驱动程序置于树内,因此这不是一个选项。
数据模型影响¶
无
REST API 影响¶
无
安全影响¶
无
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
希望使用 z/VM 驱动程序的部署者需要在他们的 conf 文件中将 compute_driver 更改为 zvm.zVMDriver。树内 z/VM 驱动程序最初将具有非常有限的功能集。如上所述,他们可以安装树外 nova-zvm 驱动程序以获得额外的功能,同时团队在多个版本中努力集成驱动程序。
对于首次集成,部署者除了设置 compute_driver 类型外,将不需要任何配置。该驱动程序将在超visor 支持矩阵中记录(以及其树内的功能)。
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
jichenjc rhuang ychuang
其他贡献者
工作项¶
添加对基本生命周期任务(创建、打开/关闭电源、删除)的支持
添加控制台输出
增加现有 z/VM CI 的范围,以包含树内 z/VM 驱动程序。在过渡期间,需要为每个 Nova 变更启动两个作业(一个用于树外,一个用于树内)。
依赖项¶
无
测试¶
所有代码路径都通过标准的 Tempest 测试作为我们 CI 的一部分运行。代码还将包含大量的单元测试。此代码将来自树外 nova-zvm 驱动程序。CI 基础设施还将继续支持树外 nova-zvm 驱动程序的自动化测试。
文档影响¶
由于现在没有 ID 团队,我们将主要致力于以下文档以及与 virt 驱动程序相关的其他文档:
https://docs.openstack.org/nova/latest/admin/arch.html#hypervisors https://docs.openstack.org/nova/latest/admin/configuration/hypervisors.html https://docs.openstack.org/developer/nova/support-matrix.html
参考资料¶
- nova-zvm
概述:z/VM 的树外 Nova 驱动程序
源代码:https://git.openstack.org/cgit/openstack/nova-zvm-virt-driver/
- neutron-zvm-agent
概述:z/VM 的开源 neutron agent
源代码:https://git.openstack.org/cgit/openstack/networking-zvm/
- ceilometer-zvm
概述:z/VM 平台的 Ceilometer 收集器。捕获 I/O、CPU 和内存统计信息。
源代码:https://git.openstack.org/cgit/openstack/ceilometer-zvm/
历史¶
z/VM 早在 2013/2014 年左右就提交了补丁并与 nova 社区进行了一些讨论。当时我们缺乏 CI,因此我们遵循了创建 CI 的指南并做了更多社区贡献。
并且我们在 CI 测试和与更广泛的社区(如上述 Open mainframe 项目 https://www.openmainframeproject.org/)的合作方面投入了更多精力,我们希望继续努力使 z/VM 被接受为树内插件。
发布名称 |
描述 |
|---|---|
Queens |
引入 |