CAUTION: This is an beta / non-production software, do not use on production clusters.
With structured parameters (K8s v1.31+), the DRA driver publishes ResourceSlice, scheduler allocates the resources and resource driver's kubelet-plugin ensures that the allocated devices are prepared and available for Pods.
DRA API graduated to v1beta1 in K8s v1.32. Latest DRA drivers support only K8s v1.32+.
In order to guarantee proper operation, ensure Linux kernel module vfio_pci
has been loaded.
The QAT Kubernetes resource driver is intended to be used on upstream Linux kernels, see the in-tree kernel documentation for details. Note though, that the QAT resource driver itself does not depend on any QAT user space libraries mentioned in that document.
All 4th Gen Intel® Xeon® Scalable Processor QAT devices handled by the Linux kernel
driver module qat_4xxx
are supported.
Supported Kubernetes versions are listed below:
Branch | Kubernetes branch/version | Status | DRA |
---|---|---|---|
v0.1.0 | Kubernetes v1.31 | unsupported | Structured Parameters |
v0.2.0 | Kubernetes v1.32+ | supported | Structured Parameters |
In version 0.1.0 static configuration of QAT services is done using a ConfigMap, please have a look at the example ConfigMap yaml.
The ConfigMap and Resource Claims use the same string notation as the QAT kernel driver when specifying what services are to be configured for the device and Resource Claim. When two services are requested, the service strings are to be separated by semicolon (';'). Supported services are:
- Symmetric cryptography:
sym
- Asymmetric cryptograpy:
asym
- Compression:
dc