4.10. KMM 固件支持
内核模块有时需要从文件系统中加载固件文件。KMM 支持将固件文件从 ModuleLoader 镜像复制到节点的文件系统中。
在运行 modprobe
命令前,节点上的 .spec.moduleLoader.container.modprobe.firmwarePath
的内容会被复制到节点上的 /var/lib/firmware
路径中。
在运行 modprobe -r
命令之前,所有文件和空目录都会从该位置中删除,以便在 pod 终止时卸载内核模块。
4.10.1. 在节点上配置查找路径 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
在 OpenShift Container Platform 节点上,固件的默认查找路径集合不包括 /var/lib/firmware
路径。
流程
使用 Machine Config Operator 创建包含
/var/lib/firmware
路径的MachineConfig
自定义资源 (CR):Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您可以根据您的需要配置标签。对于单节点 OpenShift,请使用
control-pane
或master
对象。
-
通过应用
MachineConfig
CR,节点会自动重启。
4.10.2. 构建 ModuleLoader 镜像 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
流程
除了构建内核模块本身外,在构建器镜像中包含二进制固件:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.10.3. 调整模块资源 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
流程
在
Module
自定义资源 (CR) 中设置.spec.moduleLoader.container.modprobe.firmwarePath
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 可选:在节点上将
/firmware/*
复制到/var/lib/firmware/
。