检查钩子

检查钩子是裸机服务插件的一种类型,负责处理带内检查的数据。通过配置这些钩子,操作员可以完全自定义检查处理阶段。数据的收集方式可以通过检查收集器进行配置。

配置钩子

有两个配置选项负责检查钩子:inspector.default_hooks 定义了默认情况下运行哪些钩子,而 inspector.hooks 定义了在您的部署中运行哪些钩子。操作员应该只修改第二个选项,而第一个选项用于提供默认值,而无需硬编码。

[inspector]
hooks = $default_hooks

要使钩子在默认钩子之后运行,请将其附加到列表中,例如:

[inspector]
hooks = $default_hooks,extra-hardware

默认钩子

按照它们在 inspector.default_hooks 选项中的顺序排列

ramdisk-error

处理来自 ramdisk 的 error 字段,如果该字段不为空,则中止检查。

validate-interfaces

验证网络接口并将结果存储在 plugin_data 中,包含两个字段

  • all_interfaces - 通过基本功能检查的所有接口。

  • valid_interfaces - 满足 inspector.add_ports 选项中配置的接口。

在两种情况下,接口都会获得一个附加字段

  • pxe_enabled - 在检查启动期间此接口上是否启用了 PXE。

ports

validate-interfaces 钩子设置的 valid_interfaces 中的接口创建端口。

删除与 inspector.keep_ports 设置不匹配的端口。

architecture

填充节点上的 cpu_arch 属性。

可选钩子

accelerators

基于报告的 PCI 设备填充 accelerators 属性。已知的加速器在 inspector.known_accelerators 选项中链接的 YAML 文件中指定。默认文件如下

pci_devices:
  - vendor_id: "10de"
    device_id: "1eb8"
    type: GPU
    device_info: NVIDIA Corporation Tesla T4
  - vendor_id: "10de"
    device_id: "1df6"
    type: GPU
    device_info: NVIDIA Corporation GV100GL
  - vendor_id: "10de"
    device_id: "2236"
    type: GPU
    device_info: NVIDIA Corporation A10
  - vendor_id: "10de"
    device_id: "2235"
    type: GPU
    device_info: NVIDIA Corporation A40
  - vendor_id: "10de"
    device_id: "26b9"
    type: GPU
    device_info: NVIDIA Corporation L40S
  - vendor_id: "10de"
    device_id: "26ba"
    type: GPU
    device_info: NVIDIA Corporation L20
boot-mode

根据观察到的启动模式设置 boot_mode 功能,请参阅 启动模式支持

cpu-capabilities

使用 CPU 标志来 发现 CPU 功能。可以通过配置自定义确切的映射

[inspector]
cpu_capabilities = vmx:cpu_vt,svm:cpu_vt

请参阅 inspector.cpu_capabilities 以获取默认映射。

extra-hardware

python-hardware 收集的数据从其原始格式转换为 extra 插件数据字段下的嵌套字典。

local-link-connection

使用 ramdisk 中的 LLDP 信息填充端口上的 local_link_connection 字段,其中包含物理交换机信息。

memory

基于来自 DMI 的物理 RAM 信息填充 memory_mb 属性。

parse-lldp

解析 ramdisk 中的原始二进制 LLDP 信息并填充插件数据中的 parsed_lldp 字典。键是网络接口名称,值是包含 LLDP 值的字典。示例

"parsed_lldp": {
    "eth0": {
        "switch_chassis_id": "11:22:33:aa:bb:cc",
        "switch_system_name": "sw01-dist-1b-b12"
    }
}
pci-devices

基于 PCI 设备填充功能。映射由 inspector.pci_device_alias 选项提供。

physical-network

基于检测到的 IP 地址填充 使用裸机服务的网络 的端口字段 physical_network。映射由 inspector.physical_network_cidr_map 选项提供。

raid-device

检测新创建的 RAID 设备并填充用于 root 设备提示root_device 属性。需要两次检查:一次在 RAID 创建之前,另一次在 RAID 创建之后。

root-device

使用 root 设备提示 以及来自 ramdisk 的存储设备信息来计算预期的 root 设备并填充 local_gb 属性(考虑 inspector.disk_partitioning_spacing 选项)。