iLO IPA 部署驱动

https://blueprints.launchpad.net/ironic/+spec/ilo-virtualmedia-ipa

添加能力,通过启动裸机节点上的虚拟介质,并使用 IPA 部署镜像,来配置具有 iLO4 及更高版本的惠普 ProLiant 裸机节点。

问题描述

IPA 项目提供了一个更强大的 ramdisk,用于从 conductor 节点进行部署。但 IPA 存在以下问题:

  • 一些客户由于以下原因,不希望在其环境中采用 PXE 协议:

    • PXE 使用 TFTP 传输文件,由于它使用 UDP,因此不可靠。

    • PXE 不适用于某些网络拓扑,在这些拓扑中,可能需要在路由器中中继 PXE 请求,才能使 PXE 在整个网络中工作。

  • 部署者需要在 conductor 节点上运行额外的 tftp 服务。

  • 目前,调用节点 vendorpassthru 所需的 admin token 无法安全地传输到裸机节点。

提议的变更

以下评审引入了一种新的机制,用于使用虚拟介质启动 ProLiant 机器。 https://specs.openstack.org/openstack/ironic-specs/specs/juno/ironic-ilo-virtualmedia-driver.html

上述评审中引入的方法 setup_virtual_media_boot 可用于使用部署 ISO 镜像启动裸机节点。可以添加一个新的类 IloVirtualMediaAgentDeploy,它将设置机器使用虚拟介质而不是 PXE 进行启动。

vendor 接口 AgentVendorInterface 可以被重用以继续部署并完成它。

此更改还将能够通过虚拟介质的 OOB 通道安全地将 admin token 传递到裸机节点。

备选方案

ProLiant 机器可以继续使用 PXE 启动带有 agent ramdisk 的引导程序。

数据模型影响

一个新的参数 deploy_iso 将在 driver_info 中使用,以启动节点进行部署。 deploy_iso 将包含使用 agent ramdisk 构建的可引导 ISO 的 glance UUID。

REST API 影响

无。

驱动程序 API 影响

无。

Nova 驱动程序影响

无。

安全影响

无。

其他最终用户影响

无。

可扩展性影响

无。

性能影响

无。

其他部署者影响

这种部署方法不再需要在 conductor 节点上运行额外的服务(例如,在 pxe 驱动程序的情况下,tftp 服务)。

开发人员影响

无。

实现

负责人

主要负责人

rameshg87

工作项

  • 添加 IloVirtualMediaAgentDeploy,它实现了 base.DeployInterface。

依赖项

无。

测试

将为所有代码添加单元测试。Tempest 测试将在稍后考虑。

文档影响

需要记录配置 ProLiant 裸机节点的步骤。这将在 ironic 源代码树的 doc/ 目录中以 rst 格式记录。此文件的内容也可以放入 ironic wiki 中。

参考资料

无。