1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/kmm-deploying-modules.adoc
2024-04-22 17:52:22 +00:00

24 lines
1.4 KiB
Plaintext

// Module included in the following assemblies:
//
// * hardware_enablement/kmm-kernel-module-management.adoc
:_mod-docs-content-type: CONCEPT
[id="kmm-deploy-kernel-modules_{context}"]
= Kernel module deployment
Kernel Module Management (KMM) monitors `Node` and `Module` resources in the cluster to determine if a kernel module should be loaded on or unloaded from a node.
To be eligible for a module, a node must contain the following:
* Labels that match the module's `.spec.selector` field.
* A kernel version matching one of the items in the module's `.spec.moduleLoader.container.kernelMappings` field.
* If ordered upgrade (`ordered_upgrade.md`) is configured in the module, a label that matches its `.spec.moduleLoader.container.version` field.
When KMM reconciles nodes with the desired state as configured in the `Module` resource, it creates worker pods on the target nodes to run the necessary action. The KMM Operator monitors the outcome of the pods and records the information. The Operator uses this information to label the `Node` objects when the module is successfully loaded, and to run the device plugin, if configured.
Worker pods run the KMM `worker` binary that performs the following tasks:
* Pulls the kmod image configured in the `Module` resource. Kmod images are standard OCI images that contain `.ko` files.
* Extracts the image in the pod's filesystem.
* Runs `modprobe` with the specified arguments to perform the necessary action.