BIOS 配置¶
概述¶
Bare Metal 服务支持对裸机节点进行 BIOS 配置。它允许管理员通过 CLI 或 REST API 获取和应用所需的 BIOS 设置。所需的 BIOS 设置在手动清理期间应用。
先决条件¶
必须由管理员配置裸机服务器,以便通过支持 BIOS 配置的 ironic 硬件类型进行管理。
启用硬件类型¶
启用支持 BIOS 配置的特定硬件类型。请参阅 启用驱动程序和硬件类型,了解如何启用硬件类型。
启用硬件接口¶
要启用 bios 接口
[DEFAULT]
enabled_bios_interfaces = no-bios
将已启用硬件类型支持的实际 bios 接口名称附加到 enabled_bios_interfaces,在 ironic.conf 中使用逗号分隔的值。
所有可用的内置 bios 接口都列在源代码树中的 setup.cfg 文件中,例如
ironic.hardware.interfaces.bios =
fake = ironic.drivers.modules.fake:FakeBIOS
no-bios = ironic.drivers.modules.noop:NoBIOS
检索 BIOS 设置¶
要从指定节点检索缓存的 BIOS 配置
$ baremetal node bios setting list <node>
BIOS 设置在每次节点清理操作或通过 BIOS 清理步骤成功应用设置后进行缓存。上述命令的返回结果是指定节点上最后缓存的 BIOS 设置的表格。如果将 -f json 作为后缀添加到上述命令中,它将以以下格式返回 BIOS 设置
[
{
"setting name":
{
"name": "setting name",
"value": "value"
}
},
{
"setting name":
{
"name": "setting name",
"value": "value"
}
},
...
]
要获取节点的指定 BIOS 设置
$ baremetal node bios setting show <node> <setting-name>
如果将 -f json 作为后缀添加到上述命令中,它将以以下格式返回 BIOS 设置
{
"setting name":
{
"name": "setting name",
"value": "value"
}
}
配置 BIOS 设置¶
有两个 手动清理 步骤可用于管理节点的 BIOS 设置
恢复出厂设置¶
此清理步骤将给定节点上的所有 BIOS 设置重置为出厂默认值
{
"target":"clean",
"clean_steps": [
{
"interface": "bios",
"step": "factory_reset"
}
]
}
factory_reset 清理步骤不需要任何参数,因为它会将所有 BIOS 设置重置为出厂默认值。
应用 BIOS 配置¶
此清理步骤将一组 BIOS 设置应用于节点
{
"target":"clean",
"clean_steps": [
{
"interface": "bios",
"step": "apply_configuration",
"args": {
"settings": [
{
"name": "name",
"value": "value"
},
{
"name": "name",
"value": "value"
}
]
}
}
]
}
apply_configuration 清理步骤的表示形式与 手动清理 相同。所需的 BIOS 设置可以通过 settings 参数提供,该参数包含要应用的 BIOS 选项列表,每个 BIOS 选项都是一个包含 name 和 value 键的字典。
要检查所需的 BIOS 配置是否设置正确,请使用 检索 BIOS 设置 部分中提到的命令。
注意
在将 BIOS 设置应用于节点时,特定于供应商的驱动程序可能会从参数中获取给定的 BIOS 设置,并将其与节点上的当前 BIOS 设置进行比较,只有在存在差异时才应用。