4.18. KMM ファームウェアのサポート
カーネルモジュールは、ファイルシステムからファームウェアファイルをロードする必要がある場合があります。KMM は、kmod イメージからノードのファイルシステムへのファームウェアファイルのコピーをサポートしています。
modprobe コマンドを実行してカーネルモジュールを挿入する前に、.spec.moduleLoader.container.modprobe.firmwarePath の内容がノードの /var/lib/firmware パスにコピーされます。
Pod の終了時に modprobe -r コマンドを実行してカーネルモジュールをアンロードする前に、すべてのファイルと空のディレクトリーがその場所から削除されます。
4.18.2. kmod イメージのビルド リンクのコピーリンクがクリップボードにコピーされました!
手順
カーネルモジュール自体をビルドするだけでなく、バイナリーファームウェアをビルダーイメージに含めます。
FROM registry.redhat.io/ubi9/ubi-minimal as builder # Build the kmod RUN ["mkdir", "/firmware"] RUN ["curl", "-o", "/firmware/firmware.bin", "https://artifacts.example.com/firmware.bin"] FROM registry.redhat.io/ubi9/ubi-minimal # Copy the kmod, install modprobe, run depmod COPY --from=builder /firmware /firmware
4.18.3. モジュールリソースのチューニング リンクのコピーリンクがクリップボードにコピーされました!
手順
Moduleカスタムリソース (CR) で.spec.moduleLoader.container.modprobe.firmwarePathを設定します。apiVersion: kmm.sigs.x-k8s.io/v1beta1 kind: Module metadata: name: my-kmod spec: moduleLoader: container: modprobe: moduleName: my-kmod # Required firmwarePath: /firmware1 - 1
- オプション:
/firmware/*をノード上の/var/lib/firmware/にコピーします。