创建 ironic 数据源驱动¶
包含您的 Launchpad 蓝图的 URL
https://blueprints.launchpad.net/congress/+spec/ironic-datasource-driver
这个 ironic 驱动将允许 Congress 与 Openstack ironic API 交互以进行编排。第一版将提供来自 ironic 的只读 API 调用数据,直到 Congress 具备处理写入驱动程序的基础设施。后续版本可能能够发送请求并写入 ironic API。
问题描述¶
目前,Congress 既没有 ironic 的读取驱动程序,也没有写入驱动程序。这个驱动程序将赋予 Congress 观察 ironic 的能力,以便策略编写者可以检查裸机状态,例如有关已启用驱动程序、每个机箱、每个节点、每个端口以及节点支持的启动设备的详细信息。
提议的变更¶
这个驱动程序将类似于其他现有的驱动程序,例如 neutron_driver.py 和 nova_driver.py。 ironic 驱动程序将从以下 ironic API 调用读取数据,并将响应转换为 Congress 表
列出已启用的驱动程序
显示驱动程序详细信息
列出驱动程序属性
列出机箱
显示机箱详细信息
列出机箱中包含的节点
列出已注册的节点
显示节点详细信息
列出节点支持的启动设备
列出与节点关联的端口
列出所有已注册的端口
显示端口详细信息
备选方案¶
另一种选择是不为 ironic 提供驱动程序,但这对于在云中使用 ironic 来管理裸机服务器的管理员来说不是一个好的选择。
策略¶
N/A
策略动作¶
N/A
数据源¶
Openstack ironic
数据模型影响¶
N/A
REST API 影响¶
N/A
安全影响¶
ironic 驱动程序需要像所有其他数据源驱动程序一样向 ironic API 进行身份验证。
通知影响¶
N/A
其他最终用户影响¶
N/A
性能影响¶
API 调用可能会很昂贵。我们需要衡量 API 调用对 ironic 和 Congress 性能的影响。
其他部署者影响¶
N/A
开发者影响¶
N/A
依赖项¶
N/A
测试¶
这项工作必须包括单元测试和 tempest 测试。驱动程序转换器基础设施使大部分转换代码具有鲁棒性,但驱动程序仍然依赖于 ironic API,因此 tempest 测试作为集成测试尤其重要。
文档影响¶
N/A