支持 Xen 虚拟驱动¶
- 日期:
2016-06-03 11:17
- 标签:
ansible, xen
本规范的目的是向 OpenStack-Ansible 添加对 Xen Hypervisor 的支持。这将允许在 OpenStack 计算节点上使用 Xen 作为选项。
https://blueprints.launchpad.net/openstack-ansible/+spec/xen-virt-driver
问题描述¶
Xen 是一种在 OpenStack 中经过测试和支持的 Hypervisor。它被用于今天一些最大的公共云中,并且将是 OpenStack-Ansible 的一个很好的补充。目前 OpenStack Libvirt Driver 已经存在对 Xen 的支持,因此实现应该不会很困难。
提议的变更¶
主要变化是在 OpenStack-Ansible 中为 CentOS 7、Ubuntu 16.04 和 Ubuntu 14.04(通过使用 UCA 仓库)添加对 Xen 的支持。Xen 4.5.1 和 Libvirt 1.2.15 中包含了 Xen 与 OpenStack 协同工作所需的更改。本蓝图涵盖了使用 OpenStack-Ansible 支持的标准网络代理部署 nova-xen 计算驱动。
拟议的更改包括
添加支持安装/配置 Xen 虚拟驱动及其依赖项
关于如何配置计算节点以运行 Xen 虚拟驱动的文档
用于验证 os_nova 角色所需更改的 Xen 支持的测试
备选方案¶
维护独立的 Xen Ansible playbook - 这需要重新发明基础功能,不符合操作员的要求。
Playbook/Role 影响¶
请参阅工作项以了解 playbook/角色的影响。nova_virt_type 的引用将被更新以反映 ‘xen’ 选项。
升级影响¶
无。xen 驱动程序是 OpenStack-Ansible 的新功能,因此没有升级影响。
安全影响¶
无。
性能影响¶
无。
最终用户影响¶
最终用户将能够使用 Xen 虚拟驱动程序部署计算节点。
部署者影响¶
Xen 特定的配置选项将被添加到 openstack-ansible-os_nova 角色中。
当添加对 Xen 作为虚拟驱动程序的支持时,这些配置选项将可供使用;但是,预计 Xen 支持将默认禁用,需要部署者显式启用 Xen 支持并配置主机以供 OpenStack-Ansible 使用。
将提供这些新配置项的文档,并且还将提供一组默认值。Xen 虚拟驱动程序将其配置限制为最小化,因此操作员在选择 Xen 作为虚拟驱动程序时应该只需要设置几个必需的选项。
开发人员影响¶
将要求现有的开发团队对更改集进行审查和批准。Xen 驱动程序团队将完成必要的实现和支持此功能。
依赖项¶
多平台主机操作系统支持 - 需要支持 Ubuntu 16.04 和 CentOS 7
实现¶
负责人¶
- 主要负责人
Antony Messerli - antonym 在 IRC 和 Launchpad 上
其他贡献者
工作项¶
需要进行多项更改
在 ‘nova_virt_types’ 结构中添加 ‘xen’,以及驱动程序配置所需的必要变量要求,与其它计算类型匹配。
根据需要,添加 nova.conf 模板,用于 xen 特定的配置选项,这些选项在 nova_virt_type 为 ‘xen’ 时有条件地包含。
在 openstack-ansible-os_nova 项目中创建一个新的 nova_compute_xen.yml。这将包含确保系统上安装和配置 xen 驱动程序所需的任务。
更新现有的 nova_compute.yml 以包含 nova_compute_xen.yml 并添加适当的条件导入。
创建一个新的 nova_compute_xen_install.yml,它将由 nova_compute_xen.yml 包含。它将确保运行 Xen 驱动程序所需的配置和依赖项就位。
更新文档和注释,指示新的 Xen nova_virt_type 以及如何配置 OpenStack-Ansible 以使用 Xen 驱动程序。
自动化单元测试(参见测试)
测试¶
将在 openstack-ansible-os_nova 项目中创建一个新的 test-install-nova-xen.yml,用于验证新的 xen playbook。
文档影响¶
将向用户指南添加有关如何启用和配置 Xen 支持的文档。
参考资料¶
Xen 和 OpenStack 所需的版本:http://wiki.xenproject.org/wiki/OpenStack_CI_Loop_for_Xen-Libvirt
多平台主机操作系统支持:https://blueprints.launchpad.net/openstack-ansible/+spec/multi-platform-host