Releases: intel/intel-device-plugins-for-kubernetes
Intel Device Plugins for Kubernetes v0.27.0
Highlights
The release includes various generic fixes and component upgrades. This will be the last release to include VPU-plugin.
Generic
- Lots of dependency updates
- k8s to 1.27.2
- controller runtime to 0.15.0.
- Documentation improvements including Helm install instructions
- Use more generic name for NFD features host directory volume
- Remove use of "kube-system" namespace
Images
- No new images.
Operator
- Fix QAT provisioning config volumeMount
- Move to controller-tools 0.12.0
- Increase memory resource limits to 100/120Mi
GPU
- Add error checking for Kubelet flow
SGX
- Remove initcontainer in favor of NFD's node feature rules
DSA
- Initcontainer: Move to Debian's accel-config
- Accel-config-demo: update to accel-config 4.0
IAA
- No updates.
FPGA
- No updates.
QAT
- Add support for 401xx and 402xx VF PCI IDs
- Demo updated to 23.02.0 QAT lib, 1.1.0 QAT engine and 0.5.0 async nginx
- Documentation updates
VPU
- Last release for the VPU-plugin!
- No updates.
DLB
- Update to v8.3.0
- Modify init script to not fail on non-existent sriov_numvfs file
Intel Device Plugins for Kubernetes v0.26.1
Highlights
The release fixes a bug with Environment variables and decreases GPU plugin's demand for the API server.
Generic
- pkg/deviceplugin: do not reset Envs/Annotations from previous loops #1343
Images
- No new images.
Operator
GPU
- Mount "by-path" directory #1371
- Increase and randomize cleanup interval & leverage kubelet API #1363
SGX
- No updates.
DSA
- No updates.
IAA
- No updates.
FPGA
- No updates.
QAT
- No updates.
VPU
- No updates.
DLB
- No updates.
Intel Device Plugins for Kubernetes v0.26.0
Release notes
Highlights
The release adds support for configuring crypto and compression capabilities through sysfs on QAT Gen4 platforms.
Generic
- Upgraded Kubernetes API to v1.26 level (#1310).
Images
- New image XPU Manager Sidecar (#1280).
Operator
- Added
LivenessandReadinessprobes (#1232).
GPU
- nfdhook: Fix bug with multi-labels starting or ending with invalid characters (#1285).
- deployment: New deployment variant with monitoring and shared dev options enabled (#1292).
SGX
- No updates.
DSA
- No updates.
IAA
- No updates.
FPGA
- No updates.
QAT
- Added support for configuring crypto and compression capabilities through
sysfson QAT Gen4 platforms (#1234).
VPU
- No updates.
DLB
- Fixed DPDK test application parameters (#1307).
Intel Device Plugins for Kubernetes v0.25.1
Intel Device Plugins for Kubernetes v0.25.0
Release notes
Highlights
The release adds an initial version of DLB initcontainer for device provisioning. The documentation has been been improved and automated end-to-end validation coverage has been improved.
Note: In #850 we dropped the deprecated /dev/sgx/ hostpath mount which made the udev created symlinks to /dev/sgx_* device nodes available to containers. Thise the first release without the automatic backwards compatibility. Containers that still require these symlinks and know that they are installed on hosts they run can manually add the hostpath volume mounts.
Generic
- Upgraded Kubernetes API to v1.25 level (#1131).
- Improved documentation especially in the areas of developer documentation and GPUs.
- Helm charts are now supported but maintained in
intel/helm-charts.
Images
- Updated Golang build images to Go 1.19 (#1093).
- Scanned
Dockerfiles using Hadolint and mitigated all errors and most warnings (#1201). - Improved the
Dockerfilemaintenance by making them auto-generated (#1013).
Operator
- Configured webhooks' TLS Min version to 1.3 and added a TLS configuration e2e test case (#1054).
- Updated operator command line parameters to be consistent with the kubebuilder v3 set (#1055).
- Fixed RBAC rules for LeaderElection (#1155).
GPU
- Deprecated
debugfsGPU IP block version labels in NFD hook doc (#1115).
SGX
- Dropped the deprecated
/dev/sgx/hostpath mounts (#850). - Added a workaround to kubelet TopologyHints admission error (#1141).
DSA
- IDXD: Dropped unused
sysfsparameter (#1048).
IAA
- IDXD: Dropped unused
sysfsparameter (#1048).
FPGA
- Fixed NFD labeling rules (#1070).
QAT
- Added support for reading crypto and compression capabilities from
sysfson QAT Gen4 platforms (#1134).
VPU
- No updates.
DLB
- Added an initial version of DLB initcontainer for device provisioning (#1088).
Intel Device Plugins for Kubernetes v0.24.1
Release notes
SGX
In #850 we dropped the deprecated /dev/sgx/ hostpath mount which made the udev created symlinks to /dev/sgx_* device nodes available to containers. v0.25.0 will be the first release without the automatic backwards compatibility. In #1141 we workarounded a kubelet issue with the SGX plugin when TopologyManager was enabled. v0.24.1 is released with #1141 backported for users who cannot jump to v0.25.0.
Intel Device Plugins for Kubernetes v0.24.0
Release notes
Highlights
The release adds new plugin for Intel Analytics Accelerator (IAA) device. The functionality is on part with other plugins: kustomize and IaaDevicePlugin controller based deployments, and sample Dockerfiles.
Added annotations parameter to the NewDeviceInfo() API. This is a breaking change for users using pkg/deviceplugin (#873).
Generic
- Upgraded Kubernetes API to v1.24 level (#995).
Images
- Updated Golang build images to Go 1.18 (#923).
- Added
intel-iaa-pluginandintel-qat-initcontainerimages.
Operator
- Added support for seamless upgrades (#857).
- Harmonized
nodeSelectorconstraints usage in controllers (#871). - Implemented Helm chart to install the operator (#981).
GPU
- Added gpu-numbers label to support nodes with large number of GPUs (#854).
- Added pci-groups label to group GPUs based on their PCI addresses for group level control (#854).
- Added numa-gpu-map label to indicate GPU's NUMA zone (#937).
- Added support for GAS' container-tiles annotation to dedicate tiles to containers via env variable (#935).
- Changed allocation logic to leverage GetPreferredAllocation when resource manager is enabled ((#935).
SGX
- No updates.
DSA
- Improved support for configuring DSA work-queues using
accel-config(#819).
IAA
- New
intel-iaa-pluginandIaaDevicePluginCRD (#911). - Improved support for configuring IAA work-queues using
accel-config(#819).
FPGA
- Fixed FPGA admissionwebook to be idempotent (#863).
- Updated opae-nlb-demo to use libjson-c 5.0 (#904).
QAT
- Added
initImagetoQatDevicePluginCRD andintel-qat-initcontainerimage to enable SR-IOV (#898). - Implemented
preferredAllocationpolicies for QAT device selection (#884). - Split
qat.intel.com/genericresources to separate crypto and compression resources on QAT Gen4 platforms (#700). - Disabled
-mode kernelusage on QAT Gen4 platforms (#980).
VPU
- No updates.
DLB
- No updates.
Intel Device Plugins for Kubernetes v0.23.0
Release notes
Highlights
The release adds new plugin for Intel Dynamic LoadBalancer device. The functionality is on part with other plugins: kustomize and DlbDevicePlugin controller based deployments, e2e tests and sample Dockerfiles.
The release also adds improved DSA device provisioning. With an opt-in initContainer cluster admins can setup per-node DSA device configurations using accel-config tool and json templates via ConfigMaps.
Generic
- Upgraded Kubernetes API to v1.23 level (#788)
- Added wsl linter along with code fixes for the findings (#807)
- Moved to Kubernetes custom resource definition (CRD) v1 API only (#730)
Images
- Updated Golang build images to Go 1.17 (#724)
- Added
intel-dlb-pluginandintel-idxd-config-initcontainerimages.
Operator
- Moved to
go:embedto generate controllerDaemonSetobjects (#747) - Harmonized
nodeSelectorconstraints usage in controllers (#764)
GPU
- Implemented
preferredAllocationpolicies for GPU device selection (#742) - Updated GPU labels in NFD hook to adapt to the latest DRM changes (#802)
- Documented a workaround with QSV and VA-API libraries in multi-GPU scenarios (#798)
SGX
- Fixed SGX admission webhook mutations when aesmd
volumeMounts were already present in pods(#810, #813) - Fixed SGX feature labeling when SGX CPUID bits were present but SGX was not enabled in BIOS (#766)
DSA
- Improved support for configuring DSA work-queues using
accel-configfrom anInitContainerwithconfigMaps (#761)
FPGA
- No updates.
QAT
- Reworked device binding to address issues with the latest kernels (#809)
- Updated default deployment flags (#754)
VPU
- Added support for
4fc0and4fc1PCI devices (#752)
DLB
Intel Device Plugins for Kubernetes v0.22.0
Release notes
Generic
- Upgraded Kubernetes API to v1.22 level
- Updated/added new Go linters along with code fixes for the findings: revive, goerr113, govet/fieldalignment (#678, #685, #709)
- Added
NewDeviceInfoWithTopologyHints()API to device plugins framework (pkg/deviceplugin) to createDeviceInfowith custom topology hints (#679)
Images
- Moved
opae-nlb-demoandintel-vpu-pluginimages to use Debian unstable (#696, #717) - Changed image builds to verify SHA256 sums integrity for downloaded
.tar.gz.files ((#701) - Updated Golang build images from
bustertobullseye(#718)
Operator
- Changed QAT controller to copy CR annotations to DaemonSet/PodSpec annotations. (#710)
GPU
- Updated NFD hook's GPU memory reading logic (#707)
SGX
- Added e2e tests for SGX admission webhook (#682)
DSA
- Added initial support for configuring DSA work-queues using
accel-configfrom anInitContainer(both via kustomize and viaDsaDevicePluginCR with the operator).
FPGA
QAT
- Enabled
4xxvfby default (#714)
VPU
- No updates
Limitations
- DSA work-queue provisioning uses a hard-coded "balanced" default configuration. Future work (#704) will make it easier to provide custom work-queue configuration files.
Intel Device Plugins for Kubernetes v0.21.0
Release notes
Generic
- Upgraded Kubernetes API to v1.21 level
- Moved to Go 1.16 and cleaned-up
io/utilwhich is now deprecated starting with Go 1.16 (#630) - Added
Allocateinterface to device plugins framework (pkg/deviceplugin) to allow individual plugins to implement their own Allocate logic - Moved device plugin container images to use
distroless/staticbase image and made Go builds static. (#635, #636)
Operator
- Added a configuration option to allow watching only selected devices' CRDs. (#599)
GPU
- Optional fractional resource management support for k8s extended resources (#638)
- Optional monitoring resource which allows access to all GPUs of the node (#622, #628)
- Basic SR-IOV support (skips PF if VF is present for the GPU)
SGX
- Added a separate SGX admission webhook image (#603)
DSA
- No updates
FPGA
- Dropped the check for
0x8086vendor to allow non-Intel devices that are Intel FPGA based use the plugin (#621)
QAT
- Renamed wrong
c4xxvftoc4xxxvfin plugin parameters andQatDevicePluginCRD (#647)
VPU
- Added support for Keem Bay (#634)