为 sahara-image-create 添加一个选项以生成裸机镜像¶
https://blueprints.launchpad.net/sahara/+spec/sahara-bare-metal-images
磁盘镜像创建工具 (disk-image-create) 支持裸机镜像生成,但 sahara-image-create 中没有选项允许生成用于裸机的 Sahara 镜像。如果 Sahara 要支持裸机部署,我们必须拥有 Sahara 裸机镜像。
问题描述¶
用户应该有一个简单的选项来生成 Sahara 裸机镜像。此选项应适用于所有平台和所有插件。如果未启用该选项,sahara-image-create 的默认行为应保持不变 – 它应该生成虚拟机镜像。
要生成 Sahara 裸机镜像,需要从元素列表中省略“vm”元素,并添加“grub2”、“baremetal”和“dhcp-all-interfaces”元素。
提议的变更¶
添加一个“-b”命令行选项,该选项设置一个布尔标志,指示裸机镜像生成。如果设置了此选项,则将“grub2 baremetal dhcp-all-interfaces”添加到传递给 disk-image-create 的元素列表中,并防止传递“vm”元素。
不要费心使裸机元素列表可以从 shell 进行修改。不太可能需要此功能。
如果未设置“-b”命令行选项,则不会将任何裸机元素添加到元素列表中,并且不会删除“vm”元素。
替代方案¶
无
数据模型影响¶
无
REST API 影响¶
无
其他最终用户影响¶
无
部署者影响¶
无
开发者影响¶
无
Sahara-image-elements impact¶
除了对 sahara-image-create 本身的更改之外,没有其他影响。
Sahara-dashboard / Horizon 影响¶
无
实现¶
负责人¶
- 主要负责人
tmckay
工作项¶
一个补丁应用于 diskimage-create.sh
依赖项¶
无
测试¶
手动测试所有操作系统和插件的裸机镜像生成。镜像生成应该成功,并生成 .vmlinuz、.initrd 和 .qcow2 文件。但是,成功生成并不能保证它们实际上可以工作(例如,在 Kilo 中,Fedora 和 CentOS 6 镜像在 ironic 中将无法正确启动)
对于此更改,仅仅完成镜像生成就足够了。
文档影响¶
在讨论镜像生成的地方,应该提及“-b”选项。
参考资料¶
无