The Kernel Module Management Operator manages out of tree kernel modules in Kubernetes.
Note: This is a downstream fork of the upstream kubernetes-sigs/kernel-module-management repository. This fork contains AMD ROCm-specific modifications and enhancements.
For installation and usage instructions, please refer to the AMD GPU Operator for AMD Instinct documentation.
This project uses Make to build container images. Below are the available build targets:
Build the main KMM operator image:
make docker-buildThis creates the image docker.io/rocm/kernel-module-management-operator:dev
Build the hub manager image:
make docker-build-hubThis creates the image docker.io/rocm/kernel-module-management-operator-hub:dev
Build the signer image:
make signimage-buildThis creates the image docker.io/rocm/kernel-module-management-signimage:dev
Build the webhook server image:
make webhookimage-buildThis creates the image docker.io/rocm/kernel-module-management-webhook-server:dev
Build the worker image:
make workerimage-buildThis creates the image docker.io/rocm/kernel-module-management-worker:dev
To build all images at once:
make docker-build docker-build-hub signimage-build webhookimage-build workerimage-buildYou can customize the image tag and registry by setting environment variables:
# Set custom image tag
export IMAGE_TAG=v1.0.0
make docker-build
# Set custom registry
export IMAGE_TAG_BASE=my-registry.com/kmm-operator
make docker-buildYou can save built images to tar.gz files for offline distribution:
make docker-save # Saves operator image
make signimage-save # Saves signer image
make webhookimage-save # Saves webhook server image
make workerimage-save # Saves worker imageBuild the Operator Lifecycle Manager (OLM) bundle:
make bundle-build