唤醒局域网 (WOL) 电源驱动¶
https://blueprints.launchpad.net/ironic/+spec/wol-power-driver
此蓝图为 Ironic 添加了对唤醒局域网 (WOL) 电源接口的支持。
问题描述¶
唤醒局域网是一种标准,允许计算机通过网络消息被唤醒。它被广泛应用,并且不需要任何特殊的硬件即可工作。这对于希望使用真实的裸机而不是虚拟机来尝试 Ironic,并且只有一些旧电脑的用户来说非常有用。
提议的变更¶
提议的实现包括一个驱动电源接口实现,它将为 Ironic 中节点资源上注册的每个端口(MAC 地址)创建并发送唤醒局域网魔术包。
重要的是要注意,唤醒局域网只能将机器打开。在机器取消配置后,需要手动将其关闭。
- 用户可以指定的驱动属性:
wol_host:发送魔术包的广播 IP 地址。默认为
255.255.255.255。wol_port:发送魔术包的目标端口;默认为
9。
当调用关闭电源时,我们将只记录一条消息,说明该操作不被驱动程序支持,并需要手动干预。
当调用重启时,驱动程序将尝试将机器打开。
当获取节点电源状态时,驱动程序将依赖于 Ironic 数据库中的内容并将其返回,因为我们没有可靠的方法来知道机器当前的电源状态。
备选方案¶
另一种选择是依赖于一些外部机制来控制节点的电源。例如 iBoot,Ironic 已经为此提供了一个驱动程序。但是,用户需要花费一些资金(约 200 美元)来购买一个 iBoot 设备。
数据模型影响¶
无
状态机影响¶
无
REST API 影响¶
无
客户端 (CLI) 影响¶
无
RPC API 影响¶
无
驱动程序 API 影响¶
无
Nova 驱动程序影响¶
无
安全影响¶
此规范仅涵盖发送魔术包的各个方面,不包括 SecureOn 功能。
SecureOn 允许客户端将密码附加到魔术包,因此支持此功能的网卡将在唤醒机器之前检查,只有当 MAC 地址 + 密码正确时,系统才会唤醒。这可以防止 暴力 破解 攻击,但将留待后续工作。
其他最终用户影响¶
无
可扩展性影响¶
无
性能影响¶
无
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
lucasagomes
- 其他贡献者
无
工作项¶
编写唤醒局域网电源接口
编写单元测试
依赖项¶
无
测试¶
单元测试将作为工作的一部分添加。
升级和向后兼容性¶
无
文档影响¶
驱动程序应在 https://docs.openstack.org/developer/ironic/index.html 下进行文档记录。文档还将清楚地说明此驱动程序的用途,这是一个测试驱动程序,不适用于生产环境。