Releases: intel/intel-device-plugins-for-kubernetes
Intel Device Plugins for Kubernetes v0.30.0
Highlights
The release adds new functionality to GPU and QAT plugins, and adds toleration support to xDevicePlugin
CRDs.
Generic
- Update k8s to v1.30.0
- Build release images using the latest Go version (v1.22.3)
- CI running on a bare metal Intel® Xeon Gen 4 node
Bugs fixed
Operator
- Add tolerations to
xDevicePlugin
CRDs
GPU
- Add support for the new xe KMD
QAT
- Add support for 420xx QAT devices
- Add AppArmor unconfided annotation configurability in the operator
Pull requests (excluding dependabot)
- Post 0.29.0 updates by @tkatila in #1635
- e2e: sgx: fetch SGX DC attestation primitives as tar.gz by @tkatila in #1636
- doc+test image updates by @mythi in #1637
- privileged is not needed for openshift by @mregmi in #1640
- e2e: fpga: fix intermittent failures by @tkatila in #1639
- qat: Add AppArmor unconfided anntotation configurability in the operator by @ozhuraki in #1591
- Introduce bug,feature request and support templates by @tkatila in #1647
- FPGA: Drop OpenCL UUID bitstream validation by @eliaskoromilas in #1643
- Fix false failures with trivy config scan by @tkatila in #1652
- chore: Fix multiple typos by @hugo-syn in #1653
- minor version updates by @mythi in #1662
- Go 1.22 + version updates by @mythi in #1660
- openssl-qat-engine: update versions by @mythi in #1672
- demo: update idxd-config to v4.1.6 by @mythi in #1680
- webhooks: make SGX mutator registration to follow other webhooks by @mythi in #1677
- GPU: Add support for the new xe KMD by @tkatila in #1670
- Operator: add support for tolerations and add differentiation labels by @tkatila in #1686
- go.mod: upgrade to k8s.io v1.30 release by @mythi in #1698
- ci: update envtest k8s API versions by @mythi in #1714
- images: update toybox to v0.8.11 by @mythi in #1716
- Use SPR BM for e2e by @tkatila in #1699
- workflow: disable codecov report by @tkatila in #1722
- crypto-perf: update dpdk version to 24.03 by @tkatila in #1721
- Add QAT support for 420xx driver and the 4946 device (GNR-D) by @tkatila in #1719
- ci: move to golangci-lint v1.57.2 by @mythi in #1720
- minor version updates by @mythi in #1727
- Fix repo for opencl-icd, workaround build issues and cherry-pick openssl-qat-engine changes by @tkatila in #1728
New Contributors
- @eliaskoromilas made their first contribution in #1643
- @hugo-syn made their first contribution in #1653
Full Changelog: v0.29.0...v0.30.0
Intel Device Plugins for Kubernetes v0.29.0
Highlights
The release includes various fixes and updates to components.
Generic
- Update k8s to v1.29.0
- Build release images using the latest Go version (v1.21.5)
- Use stricter build flags
- Updates to workflows and new scorecards
- Build images with buildkit
- Move towards using ktesting/textlogger
Bugs fixed
NFD
- Update SGX deployment to use NFD labels
- Add vfio-pci dependency to QAT rules
Operator
- Allow multiple objects per CR
- Fix operator updating daemonset when CR has not changed
GPU
- Change Level Zero's default affinity mask format when tiles are used, and do not set mask with 1-tile devices
- Set monitoring enabled in the default deployment
- Documentation updates
QAT
- Support QAT heartbeat in >=6.6 kernels
- Add new QAT resources (capabilities)
Fake GPU Device
- Support xelink labeling
VPU
- VPU source code removed from repository
Pull requests (excluding dependabot)
- docs + operator updates to 0.28.0 by @tkatila in #1547
- build: move to Go 1.21.x by @mythi in #1508
- vpu: remove deprecated plugin by @mythi in #1549
- qat: heartbeat support + new capabilities by @tkatila in #1559
- Cleanups by @mythi in #1572
- Misc fixes by @tkatila in #1561
- Update versions (dlb demo and cert-manager, kind) by @hj-johannes-lee in #1543
- controller cleanups by @mythi in #1583
- ci: update golangci-lint by @mythi in #1586
- build: use stricter build flags by @tkatila in #1593
- operator: remove one-cr-per-kind limitation by @tkatila in #1579
- workflows: add scorecard and codeql by @tkatila in #1597
- sgx: use NodeFeatureRule SGX label in the NFD overlay by @mythi in #1596
- xelink support by @hsyrja in #1580
- QAT test updates by @mythi in #1599
- logging: move away from klogr to ktesting/textlogger by @mythi in #1600
- go.mod: upgrade to k8s.io v1.29 by @mythi in #1584
- Minor improvements to "render-device.sh" GPU plugin helper script by @eero-t in #1605
- codeql fixes by @mythi in #1606
- workflow: run codeql for PRs and ignore actions for doc changes by @tkatila in #1608
- Fix last of codeql issues by @tkatila in #1610
- images: use buildkit again by @mythi in #1615
- Change GPU plugin's behavior as Level zero's default hierarchy mode changed from composite to flat by @tkatila in #1601
- go.mod: upgrade to k8s.io v1.29 release by @mythi in #1622
- demo: update idxd-config to v4.1.4 by @mythi in #1618
- ci: cleanup linter settings by @mythi in #1626
- nfd rules: require vfio-pci module to be present for qat by @tkatila in #1627
New Contributors
Full Changelog: v0.28.0...v0.29.0
Intel Device Plugins for Kubernetes v0.28.0
Highlights
The release includes various fixes and updates to components.
Generic
- Update k8s to v1.28.2
- Build release images using the latest Go version (v1.20.8)
- NFD updated to 0.14.1
Bugs fixed
Operator
- Added better support for operator bundle with forced plugin digests
- Plugin images can be hard coded via environment variables
- https://github.com/intel/intel-device-plugins-for-kubernetes/tree/main/cmd/operator#upgrade
- Updated to CRD descriptions
GPU
- Functionality from initcontainer moved to GPU plugin and to NFD Feature rules
- Added example tensorflow workload
- Updated documentation
QAT
- Correct a log print verbosity from warning to info
- Updated documentation
E2E
- Restructured code and fixed flows
VPU
- Images will not be published
- VPU plugin and demo code will be removed after 0.28.0 release
Pull requests (excluding dependabot)
- dsa: replace token with read_buffer in conf by @hj-johannes-lee in #1465
- Disable VPU plugin builds by @tkatila in #1456
- demo: crypto-perf, accel-config-demo and openssl-qat-engine updates by @mythi in #1478
- Add SELinux Labels for DSA and IAA by @mregmi in #1479
- Change the regular expression of the device type to support sIOV device by @lzha111 in #1474
- Link fixes, log fix and yaml updates by @tkatila in #1487
- Update references to OpenShift by @hershpa in #1509
- update accel-config version to 4.1 by @hj-johannes-lee in #1516
- tool updates by @mythi in #1524
- images: base image specific toybox config and version updates by @mythi in #1525
- Makefile: update versions & FPGA: fix naked return error from linter by @hj-johannes-lee in #1477
- version updates by @mythi in #1496
- k8s.io 1.28.1 update and SGX rework by @mythi in #1513
- k8s v1.28.2 and NFD updates by @mythi in #1539
- go.mod: update to k8s.io v1.28.0 by @mythi in #1486
- go.mod: bump sigs.k8s.io/controller-runtime from 0.15.1 to 0.16.0 by @mythi in #1507
- e2e: remove duplicate code of testing with operator by @hj-johannes-lee in #1472
- e2e,sgx: divide single It() to have multiple layers by @hj-johannes-lee in #1469
- e2e: fix webhook TLS tests by @mythi in #1488
- e2e: make demo pod logged only when failed running by @hj-johannes-lee in #1470
- e2e,gpu,fpga: divide single It() to have multiple layers by @hj-johannes-lee in #1491
- e2e,dsa,iaa: remove unnecessary layer ginkgo.Describe by @hj-johannes-lee in #1489
- e2e: make running subsets of e2e tests more organized by @hj-johannes-lee in #1512
- e2e: gpu: add a basic tensorflow test by @tkatila in #1374
- gpu: copy nfdhook functionality to gpu-plugin by @tkatila in #1492
- gpu docs update and xpum-sidecar deployment version bump by @tkatila in #1533
- gpu_fakedev: better dra support by @uniemimu in #1518
- Revert "disable gpu e2e test temporarily" by @tkatila in #1501
- operator: add missing IaaDevicePlugin finalizers RBAC by @mythi in #1475
- operator: add image upgrade with env vars by @hj-johannes-lee in #1499
- sgx & gpu crds: improve descriptions by @tkatila in #1534
- sgx: use sgx-sdk-demo app instead of busybox by @hj-johannes-lee in #1464
- webhooks: stop handling Pod updates by @mythi in #1484
- workflows: rework, trivy & publish by @tkatila in #1511
- Workflows/publish fix by @tkatila in #1515
- CI cleanups by @mythi in #1517
- ci: drop kind tests from Jenkins too by @mythi in #1503
- ci: skip linter checks for cmd/vpu_plugin by @mythi in #1473
- envtest for older k8s versions by @mythi in #1541
- qat: update README by @mythi in #1535
- codeowners: add eero-t as reviewer for gpu_fakedev by @tkatila in #1538
- doc: add a release procedures section by @tkatila in #1504
New Contributors
Full Changelog: v0.27.1...v0.28.0
Intel Device Plugins for Kubernetes v0.26.2
Highlights
The release improves QAT support and updates to newer k8s versions.
Generic
- Update k8s versions to 1.26.7
Operator
QAT
- Add support for 401xx/402xx devices #1434
Full Changelog: v0.26.1...v0.26.2
Intel Device Plugins for Kubernetes v0.27.1
Highlights
The release includes updates to core k8s components, and improves XPU-manager sidecar usability on single tile devices.
Generic
- Update k8s to v1.27.3
- Build release images using the latest Go version (v1.20.5)
Images
- No new images.
Operator
- No updates.
GPU
- XPU-Manager sidecar supports XeLinks with single tile devices and HTTPS.
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.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
Liveness
andReadiness
probes (#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
sysfs
on 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
Dockerfile
s using Hadolint and mitigated all errors and most warnings (#1201). - Improved the
Dockerfile
maintenance 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
debugfs
GPU 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
sysfs
parameter (#1048).
IAA
- IDXD: Dropped unused
sysfs
parameter (#1048).
FPGA
- Fixed NFD labeling rules (#1070).
QAT
- Added support for reading crypto and compression capabilities from
sysfs
on QAT Gen4 platforms (#1134).
VPU
- No updates.
DLB
- Added an initial version of DLB initcontainer for device provisioning (#1088).