⚠️ Important: Strimzi 0.45 supports only Kubernetes 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.
Main changes since 0.44.0
This release contains the following new features and improvements:
- Add support for Kafka 3.9.0 and 3.8.1.
Remove support for Kafka 3.7.0 and 3.7.1 - Ability to move data between JBOD disks using Cruise Control.
- Allow using custom certificates for communication with container registry in Kafka Connect Build with Kaniko
- Only roll pods once for ClientsCa cert renewal.
This change also means the restart reason ClientCaCertKeyReplaced is removed and either CaCertRenewed or CaCertHasOldGeneration will be used. - Allow rolling update for new cluster CA trust (during Cluster CA key replacement) to continue where it left off before interruption without rolling all pods again.
- Update HTTP bridge to 0.31.1
- Add support for mounting CSI volumes using the
template
sections
All changes can be found under the 0.45.0 milestone.
Watch out also for some notable changes, deprecations, and removals:
- Strimzi 0.45 is the last minor Strimzi version with support for ZooKeeper-based Apache Kafka clusters and MirrorMaker 1 deployments.
Please make sure to migrate to KRaft and MirrorMaker 2 before upgrading to Strimzi 0.46 or newer. - Strimzi 0.45 is the last Strimzi version to include the Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0).
Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
Upgrading from Strimzi 0.44.0
See the documentation for upgrade instructions.
Upgrading from Strimzi 0.22 or earlier
Direct upgrade from Strimzi 0.22 or earlier is not supported anymore! You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the documentation.
Container images
The following container images are part of this release:
Name | Image |
---|---|
Operators | quay.io/strimzi/operator@sha256:895608a8edac530e4bfc081a7c12edc49f61ab2f5902ba2f7fd4ca67f04f8c39
|
Apache Kafka 3.8.0 | quay.io/strimzi/kafka@sha256:184b10b80953c8f0895f5b84c8be481cd2a36884b837651170b816fc10eb94b2
|
Apache Kafka 3.8.1 | quay.io/strimzi/kafka@sha256:bc08b780c73044f5a1dd0a7ded50a67857cbdc84150860427408e60da84c9deb
|
Apache Kafka 3.9.0 | quay.io/strimzi/kafka@sha256:4fe0dca258436fdf664a3c0df3f4ae21d9100dd613d048c501950d8b1a2cda34
|
Strimzi Bridge | quay.io/strimzi/kafka-bridge@sha256:aba9dea487ce000e0397aacedba4bb12e83ce7a31cf99825a53be09bcf8bd927
|
Kaniko executor | quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
|
Maven Builder | quay.io/strimzi/maven-builder@sha256:0eccafb4575725f1d92dbeb4fb37f36876cf12ae2bde05bf47ab3c36f12c4986
|
New Contributors
- @venkatesh2090 made their first contribution in #10792
- @sinbadonline made their first contribution in #10825
What's Changed
- Bump the main branch to Strimzi 0.45.0-SNAPSHOT by @scholzj in #10764
- [ST] Upgrade/downgrade tests - check Kafka versions in KafkaConnect version change by @im-konge in #10776
- Added script code to enable debug on Cruise Control by @ppatierno in #10775
- Fix and unify redaction rule in report.sh by @urbandan in #10770
- Add the 0.44.0 release to the main branch by @scholzj in #10781
- [ST] Add 0.44.0 to upgrade/downgrade tests by @im-konge in #10783
- Remove unused userTaskID paramater from requestRebalance method in KafkaRebalanceAssemblyOperator by @tinaselenge in #10774
- fix: Enhance IPv6 Normalization Regex in IpAndDnsValidation by @aswinayyolath in #10763
- Add support for Kafka 3.8.1 by @scholzj in #10777
- Removed logback exclusions from CC by @ppatierno in #10779
- [ST] Add CollectorElement to the NamespaceManager for situations when we are creating Namespaces manually by @im-konge in #10780
- Ability to move data between JBOD disks using Cruise Control by @ShubhamRwt in #10644
- Delete stale Cruise Control API users by @kyguy in #10787
- Wait for readiness of newly created Pods before passing them to KafkaRoller by @scholzj in #10746
- [system test] Fix default storage class retrieval by @see-quick in #10795
- [ST] fix usages of logPodImages in UpgradeSTs by @henryZrncik in #10796
- docs(review): minor edits to the docs from review by @PaulRMellor in #10804
- Handle the failure due to reaching the servlet capacity when getting user tasks by @tinaselenge in #10768
- Add tests to CaReconciler to verify trust rolling behaviour by @katheris in #10784
- Bump upload artifact action to 4.4.3 to do deprecation of current 3.x by @ppatierno in #10806
- Add support for Kafka 3.9.0 by @scholzj in #10812
- docs(quota plugins): note on quotas for internal users by @PaulRMellor in #10803
- Add allocateLoadBalancerNodePorts configuration to listeners configuration by @venkatesh2090 in #10792
- Prepare upgrade files in packit pipelines in test phase where all envs are set properly by @Frawless in #10819
- Add Alauda to adopter list by @sinbadonline in #10825
- Add tests for stopping inprogress execution when renew annotation applied by @tinaselenge in #10805
- Bump io.netty:netty-common from 4.1.111.Final to 4.1.115.Final by @dependabot in #10827
- Bumped Vert.x 4.5.11 by @ppatierno in #10829
- Replace Vert.x in CruiseControlAPI with native HttpClient API from Java by @tinaselenge in #10791
- [ST] Remove SecurityST#testCertificates by @im-konge in #10830
- docs(refactor): updates the cruise control rebalance concepts by @PaulRMellor in #10810
- Add/Update warnings for Zoo and MM1 removal by @scholzj in #10828
- [system test] make Recovery tests run only on KRaft mode only by @see-quick in #10637
- [system test] Add wait to prevent race condition in testAutoKafkaRebalanceScaleUpSc… by @see-quick in #10833
- Improve logging of altering or resetting connecotr offsets by @scholzj in #10840
- Fix Route deletion after route listener is removed by @scholzj in #10845
- Add warning about removal of Strimzi
EnvVarConfigProvider
andIdentityRepicationPolicy
toCHANGELOG.md
by @scholzj in #10850 - Add component label to
KafkaNodePool
CRD in Helm Chart by @scholzj in #10854 - Improve release_files_check script by @see-quick in #10856
- [DOC] Clarify that Node Ports need
ClusterRoleBinding
privileges by @scholzj in #10857 - Only roll pods once for ClientsCa cert renewal by @katheris in #10814
- Simplify Ca and CaReconciler logic by @katheris in #10809
- Remove forgotten Kafka 3.7 3rd party libs by @scholzj in #10862
- Improve the unit test of MM2 using the same Secret for everything by @scholzj in #10871
- Enable additional Kaniko options for custom container registry certificates by @scholzj in #10873
- Remove Kafka Connect rest.port configuration by @fvaleri in #10874
- [ST] Use KafkaAdmin client for checking the configured rack on Kafka node by @im-konge in #10869
- Annotate StrimziPodSets before rolling during CA key replacement by @katheris in #10876
- docs(controllers): adds a section on controllers quorums and limitations by @PaulRMellor in #10864
- Bump up Strimzi test container 0.109.0 by @see-quick in #10863
- [DOC] Remove JBOD storage limitation from KRaft migration docs by @scholzj in #10879
- Fix Unit Tests on s390x. by @dandotimujahid in #10882
- Minor: remove duplicated initial delay in KC health check config by @fvaleri in #10881
- [DOC] Improve the hostname verification docs for NodePort listeners by @scholzj in #10880
- docs(jbod): using cc to reassign partitions on jbod disks by @PaulRMellor in #10837
- Fix faulty Cruise control healthcheck by @ShubhamRwt in #10884
- Allow KafkaRoller talk to controller directly by @tinaselenge in #10016
- Improve min.insync.replicas parsing in warnTooLargeMinIsr by @fvaleri in #10844
- Update bridge to 0.31.0 by @ppatierno in #10868
- Replace use of JsonObject with JsonNode for CruiseControlApi by @tinaselenge in #10860
- Refactor use of Informers in UO and SPS controller by @scholzj in #10885
- Remove unused fields from
@JsonPropertyOrder
annotation by @scholzj in #10890 - Add support for CSI volumes in templates by @scholzj in #10891
- Add thread dump collection to report.sh by @fvaleri in #10895
- Update bridge to 0.31.1 by @ppatierno in #10896
- Fix TO logging configuration when deployed by the CO by @scholzj in #10899
- Fix Crds.kafkaTopic to include status subresource by @MikeEdgar in #10906
- [ST] Add STs for Connector offset management feature by @im-konge in #10904
- [ST] Add check for passing the ConfigMap field to env variable using Connect Container template by @im-konge in #10909
- Update Helm chart README before the 0.45.0 release by @scholzj in #10912
- Add content type to the operator metric endpoints by @scholzj in #10908
- Minor refactoring of how the Kubernetes Client is created and used in the Topic Operator by @scholzj in #10901
- [system test] Add CruiseControl removeDisks test case by @see-quick in #10910
Full Changelog: 0.44.0...0.45.0