TripleO 零足迹安装程序¶
https://blueprints.launchpad.net/tripleo/+spec/zero-footprint
本文档介绍了一种支持安装模式,该模式比我们今天使用的模式具有零(或至少更少)依赖项。它是 Undercloud 和 All-In-One(独立)安装程序的迭代,允许您获得相同的结果,而无需在主机机器上安装所有 TripleO 依赖项。
问题描述¶
当前在主机机器上安装 python-tripleoclient 会安装许多依赖项,其中许多对于较小的独立类型安装可能是可选的。较小独立安装的用户可能难以理解 TripleO 依赖项的安装与 TripleO 安装的服务之间的区别。
此外,一些开发人员希望有一种快速的方法来开发和运行 playbook,而无需本地安装 Undercloud,这通常在虚拟机内完成,以封装安装的依赖项。
提议的变更¶
新的零足迹安装程序可以帮助驱动在容器内运行的 OpenStack Tripleoclient 命令。使用这种方法,您可以
像今天一样使用容器从一组 Heat 模板 (tripleo-heat-templates)、Heat 环境和 Heat 参数生成 Ansible playbook。生成 playbook 不需要任何本地依赖项。
(可选)在主机机器上本地执行 playbook。这将需要安装一些 TripleO 依赖的 Ansible 模块,但与我们今天需要的相比,其足迹要小得多。
替代方案¶
创建 python-tripleoclient 的子包,该子包安装更少的依赖项。所需的软件包的总体足迹仍然会很高(仍然会安装许多 OpenStack 软件包用于客户端工具)。
或者什么都不做,继续使用虚拟机来封装 Undercloud/All-In-One 安装程序的依赖项并生成 Ansible playbook。但是,设置本地虚拟机需要更多的初始设置和依赖项,并且比仅仅使用本地容器生成相同的 playbook 更重。
安全影响¶
由于将使用容器生成 Ansible playbook,用户可能需要将一些本地数据/文件暴露给安装程序容器。这可能是一个小问题,因为我们已经需要将这些数据暴露给 Undercloud 和 All-In-One 安装程序。
其他最终用户影响¶
无
性能影响¶
更快的本地 All-On-One 设置的部署和测试。
其他部署者影响¶
无
开发人员影响¶
更快的本地 All-On-One 设置的部署和测试。
实现¶
负责人¶
- 主要负责人
dprince
工作项¶
一个新的 ‘tripleoclient’ 容器
一个新的项目来驱动安装 (Talon?)
继续致力于完善 Ansible playbook 模块,以提供更清晰的 playbook 依赖项。特别是那些依赖于传统的 TripleO/Heat agent hooks 和脚本的模块。
文档更新
依赖项¶
无。
测试¶
这个新的安装程序可能可以补充或取代我们在上游 CI 中进行的一些 All-In-One(独立)部署测试。
文档影响¶
需要更新文档。
参考资料¶
无