跳转到: 导航, 搜索

BaremetalOperationsSpec

Baremetal 操作规范

此页面概述了 Havana 周期的工作,以向 Nova 的 Baremetal 驱动 添加对常用操作任务的支持。

概述

我们(TripleO 团队)一直在与几支对使用它进行机队管理感兴趣的运维团队讨论 baremetal 驱动的当前功能。 广义上说,这些是他们的需求:

  • 硬件自动发现
  • 初始硬件配置(BIOS 和 RAID 设置等)
  • 硬件老化测试
需要考虑老化测试中的故障。 还要考虑如何处理修复后的故障硬件的重新发现。--nobodycam (讨论) 2013年3月6日 22:27 (UTC)
  • 固件更新
  • 对有问题硬件的控制台访问

计划

通过使用 diskimage-builder 创建特定任务的 ramdisk,我相信所有这些都可以通过对 baremetal 驱动程序之外的少量更改来解决。

  • 调度器感知节点,并能够对特定节点执行操作,例如:nova boot --force-node ${UUID} ...
  • API 调用,用于通过实例名称或 UUID 查找节点,以及通过节点 UUID 查找实例。
  • 一种设置/更新给定实例的指定救援镜像的方法。
    • 或者,如果决定按风味而不是按实例设置救援镜像,则可以通过 instance_type extra_specs 来完成此操作。


baremetal 驱动程序内部也将进行一些更改。

  • 添加新的配置选项,用于发现内核和 ramdisk,这些选项将在收到来自未注册 MAC 地址的 DHCP 请求时提供。
我们可能需要一个选项,其中 MAC 地址可以注册为已知但未发现的状态。 因此,并非每个未知的 MAC 地址都被视为需要发现的资源。--nobodycam (讨论) 2013年3月6日 22:12 (UTC)
  • 发现 ramdisk 能够将信息发布回 baremetal 数据库的一种方式,例如通过 HTTP POST 到 nova-baremetal-deploy-helper,或者调用 Nova baremetal API 扩展,或者类似的方式。 此外,这需要
    • 已发现硬件和已注册硬件之间的逻辑分离(这可能只是 bm_nodes 表上的一个标志),
    • 一个配置选项,用于确定是否自动注册已发现的硬件,
    • 以及一个 API 调用,用于切换“已注册”标志。
  • nova/virt/baremetal/driver.pynova/virt/baremetal/pxe.py 添加支持,以将救援镜像应用于正在运行的实例。 这应该
    • 更新该节点的 PXE 配置,以引用救援镜像,
    • 将节点重新启动到救援镜像,
    • 将 PXE 配置重置为其先前状态,
    • 最后,在救援操作完成后,将 nova 状态重置为 RUNNING。