chore(deps): update helm release strimzi-kafka-operator to v0.44.0
This MR contains the following updates:
Package | Update | Change |
---|---|---|
strimzi-kafka-operator (source) | minor |
0.31.0 -> 0.44.0
|
⚠ WarningSome dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
strimzi/strimzi-kafka-operator (strimzi-kafka-operator)
v0.44.0
- Add the "Unmanaged" KafkaTopic status update.
- The
ContinueReconciliationOnManualRollingUpdateFailure
feature gate moves to beta stage and is enabled by default. If needed,ContinueReconciliationOnManualRollingUpdateFailure
can be disabled in the feature gates configuration in the Cluster Operator. - Add support for managing connector offsets via KafkaConnector and KafkaMirrorMaker2 custom resources.
- Add support for templating
host
andadvertisedHost
fields in listener configuration. - Allow configuration of environment variables based on Config Map or Secret for every container in the container template sections.
- Add support for disabling the generation of PodDisruptionBudget resources by the Cluster Operator.
- Add support for running an automatic rebalancing, via Cruise Control, when the cluster is scaled down or up:
- after a scaling up, the operator triggers an auto-rebalancing for moving some of the existing partitions to the newly added brokers.
- before scaling down, and if the brokers to remove are hosting partitions, the operator triggers an auto-rebalancing to these partitions off the brokers to make them free to be removed.
- Strimzi Access Operator 0.1.0 added to the installation files and examples
Changes, deprecations and removals
- From Strimzi 0.44.0 on, we support only Kubernetes 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.
- When finalizers are enabled (default), the Topic Operator will no longer restore finalizers on unmanaged
KafkaTopic
resources if they are removed, aligning the behavior with paused topics, where finalizers are also not restored. This change matches user expectations. - The External Configuration (
.spec.externalConfiguration
) inKafkaConnect
andKafkaMirrorMaker2
resources is deprecated and will be removed in the future. Please use the environment variables, additional volumes and volume mounts in Pod and container templates instead. - The Strimzi Canary installation files were removed based on the Strimzi proposal 086 as the project was discontinued and archived.
v0.43.0
- Add support for Apache Kafka 3.8.0. Remove support for Apache Kafka 3.6.0, 3.6.1, and 3.6.2.
- Added alerts for Connectors/Tasks in failed state.
- Support for specifying additional volumes and volume mounts in Strimzi custom resources
- Strimzi Drain Cleaner updated to 1.2.0 (included in the Strimzi installation files)
- Additional OAuth configuration options have been added for 'oauth' authentication on the listener and the client.
On the listener
serverBearerTokenLocation
anduserNamePrefix
have been added. On the clientaccessTokenLocation
,clientAssertion
,clientAssertionLocation
,clientAssertionType
, andsaslExtensions
have been added. - Add support for custom Cruise Control API users
- Update HTTP bridge to latest 0.30.0 release
- Unregistration of KRaft nodes after scale-down
- Update Kafka Exporter to 1.8.0 and update the Grafana dashboard to work with it
Changes, deprecations and removals
- The storage overrides for configuring per-broker storage class are deprecated and will be removed in the future. If you are using the storage overrides, you should migrate to KafkaNodePool resources and use multiple node pools with a different storage class each.
- Strimzi 0.43.0 (and any of its patch releases) is the last Strimzi version with support for Kubernetes 1.23 and 1.24. From Strimzi 0.44.0 on, we will support only Kubernetes 1.25 and newer.
v0.42.0
- Add support for Kafka 3.7.1
- The
UseKRaft
feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use KRaft (ZooKeeper-less Apache Kafka), you still need to use thestrimzi.io/kraft: enabled
annotation on theKafka
custom resources or migrate from an existing ZooKeeper-based cluster. - Update the base image used by Strimzi containers from UBI8 to UBI9
- Add support for filename patterns when configuring trusted certificates
- Enhance
KafkaBridge
resource with consumer inactivity timeout and HTTP consumer/producer enablement. - Add support for feature gates to User and Topic Operators
- Add support for setting
publishNotReadyAddresses
on services for listener types other than internal. - Update HTTP bridge to latest 0.29.0 release
- Uncommented and enabled (by default) KRaft-related metrics in the
kafka-metrics.yaml
example file. - Added support for configuring the quotas plugin with type
strimzi
orkafka
in theKafka
custom resource. The Strimzi Quotas plugin version was updated to 0.3.1.
Changes, deprecations and removals
- The
reconciliationIntervalSeconds
configuration for the Topic and User Operators is deprecated, and will be removed when upgrading schemas to v1. UsereconciliationIntervalMs
converting the value to milliseconds. - Usage of Strimzi Quotas plugin version 0.2.0 is not supported, the plugin was updated to 0.3.1 and changed significantly.
Additionally, from Strimzi 0.42.0 the plugin should be configured in
.spec.kafka.quotas
section - the configuration of the plugin inside.spec.kafka.config
is ignored and should be removed.
v0.41.0
- Add support for Apache Kafka 3.6.2
- Provide metrics to monitor certificates expiration as well as modified
Strimzi Operators
dashboard to include certificate expiration per cluster. - Add support for JBOD storage in KRaft mode. (Note: JBOD support in KRaft mode is considered early-access in Apache Kafka 3.7.x)
- Added support for topic replication factor change to the Unidirectional Topic Operator when Cruise Control integration is enabled.
- The
KafkaNodePools
feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use the Kafka Node Pool resources, you still need to use thestrimzi.io/node-pools: enabled
annotation on theKafka
custom resources. - Added support for configuring the
externalIPs
field in node port type services. - The
UnidirectionalTopicOperator
feature gate moves to GA stage and is permanently enabled without the possibility to disable it. If the topics whose names start withstrimzi-store-topic
andstrimzi-topic-operator
still exist, you can delete them. - Don't allow MirrorMaker2 mirrors with target set to something else than the connect cluster.
- Added support for custom SASL config in standalone Topic Operator deployment to support alternate access controllers (i.e.
AWS_MSK_IAM
) - Remove Angular dependent plugins from Grafana example dashboard. This makes our dashboard compatible with Grafana 7.4.5 and higher.
- Continue reconciliation after failed manual rolling update using the
strimzi.io/manual-rolling-update
annotation (when theContinueReconciliationOnManualRollingUpdateFailure
feature gate is enabled).
Changes, deprecations and removals
- The
tlsSidecar
configuration for the Entity Operator is now deprecated and will be ignored. - The
zookeeperSessionTimeoutSeconds
andtopicMetadataMaxAttempts
configurations for the Entity Topic Operator have been removed and will be ignored.
v0.40.0
- Add support for Apache Kafka 3.7.0. Remove support for Apache Kafka 3.5.0, 3.5.1, and 3.5.2.
- The
UseKRaft
feature gate moves to beta stage and is enabled by default. If needed,UseKRaft
can be disabled in the feature gates configuration in the Cluster Operator. - Add support for ZooKeeper to KRaft migration by enabling the users to move from using ZooKeeper to store metadata to use KRaft.
- Add support for moving from dedicated controller-only KRaft nodes to mixed KRaft nodes
- Fix NullPointerException from missing listenerConfig when using custom auth
- Added support for Kafka Exporter
offset.show-all
parameter - Prevent removal of the
broker
process role from KRaft mixed-nodes that have assigned partition-replicas - Improve broker scale-down prevention to continue in reconciliation when scale-down cannot be executed
- Added support for Tiered Storage by enabling the configuration of custom storage plugins through the Kafka custom resource.
- Update HTTP bridge to latest 0.28.0 release
Changes, deprecations and removals
- From Strimzi 0.40.0 on, we support only Kubernetes 1.23 and newer. Kubernetes 1.21 and 1.22 are not supported anymore.
-
#9508 fixes the Strimzi CRDs and their definitions of labels and annotations.
This change brings our CRDs in-sync with the Kubernetes APIs.
After this fix, the label and annotation definitions in our CRDs (for example in the
template
sections) cannot contain integer values anymore and have to always use string values. If your custom resources use an integer value, for example: template: apiService: metadata: annotations: discovery.myapigateway.io/port: 8080 You might get an error similar to this when applying the resource: * spec.template.apiService.metadata.annotations.discovery.myapigateway.io/port: Invalid value: "integer": spec.template.apiService.metadata.annotations.discovery.myapigateway.io/port in body must be of type string: "integer" To fix the issue, just use a string value instead of an integer: template: apiService: metadata: annotations: discovery.myapigateway.io/port: "8080" - Support for the JmxTrans component is now completely removed.
If you are upgrading from Strimzi 0.34 or earlier and have JmxTrans enabled in
.spec.jmxTrans
of theKafka
custom resource, you should disable it before the upgrade or delete it manually after the upgrade is complete. - The
api
module was refactored and classes were moved to new packages. - Strimzi Drain Cleaner 1.1.0 (included in the Strimzi 0.40.0 installation files) changes the way it handles Kubernetes eviction requests.
It denies them instead of allowing them.
This new behavior does not require the
PodDisruptionBudget
to be set tomaxUnavailable: 0
. We expect this to improve the compatibility with various tools used for scaling Kubernetes clusters such as Karpenter. If you observe any problems with your toolchain or just want to stick with the previous behavior, you can use theSTRIMZI_DENY_EVICTION
environment variable and set it tofalse
to switch back to the old (legacy) mode.
v0.39.0
- Add support for Apache Kafka 3.5.2 and 3.6.1
- The
StableConnectIdentities
feature gate moves to GA stage and is now permanently enabled without the possibility to disable it. All Connect and Mirror Maker 2 operands will now use StrimziPodSets. - The
KafkaNodePools
feature gate moves to beta stage and is enabled by default. If needed,KafkaNodePools
can be disabled in the feature gates configuration in the Cluster Operator. - The
UnidirectionalTopicOperator
feature gate moves to beta stage and is enabled by default. If needed,UnidirectionalTopicOperator
can be disabled in the feature gates configuration in the Cluster Operator. - Improved Kafka Connect metrics and dashboard example files
- Allow specifying and managing KRaft metadata version
- Add support for KRaft to KRaft upgrades (Apache Kafka upgrades for the KRaft based clusters)
- Improved Kafka Mirror Maker 2 dashboard example file
Changes, deprecations and removals
- The
StableConnectIdentities
feature gate moves to GA stage and cannot be disabled anymore. When using Connect or Mirror Maker 2 operands, direct downgrade to Strimzi versions older than 0.34 is not supported anymore. You have to first downgrade to Strimzi version between 0.34 to 0.38, disable theStableConnectIdentities
feature gate, and only then downgrade to an older Strimzi version. - Strimzi 0.39.0 (and any of its patch releases) is the last Strimzi version with support for Kubernetes 1.21 and 1.22. From Strimzi 0.40.0 on, we will support only Kubernetes 1.23 and newer.
v0.38.0
- Add support for Apache Kafka 3.6.0 and drop support for 3.4.0 and 3.4.1
- Sign containers using
cosign
- Generate and publish Software Bill of Materials (SBOMs) of Strimzi containers
- Add support for stopping connectors according to Strimzi Proposal #54
- Allow manual rolling of Kafka Connect and Kafka Mirror Maker 2 pods using the
strimzi.io/manual-rolling-update
annotation (supported only whenStableConnectIdentities
feature gate is enabled) - Make sure brokers are empty before scaling them down
- Update Cruise Control to 2.5.128
- Add support for pausing reconciliations to the Unidirectional Topic Operator
- Allow running ZooKeeper and KRaft based Apache Kafka clusters in parallel when the
+UseKRaft
feature gate is enabled - Add support for metrics to the Unidirectional Topic Operator
- Added the
includeAcceptHeader
option to OAuth client and listener authentication configuration and tokeycloak
authorization. If set tofalse
it turns off sending ofAccept
header when communicating with OAuth / OIDC authorization server. This feature is enabled by the updated Strimzi Kafka OAuth library (0.14.0). - Update HTTP bridge to latest 0.27.0 release
Changes, deprecations and removals
- The
Kafka.KafkaStatus.ListenerStatus.type
property has been deprecated for a long time, and now we do not use it anymore. The current plan is to completely remove this property in the next schema version. If needed, you can use theKafka.KafkaStatus.ListenerStatus.name
property, which has the same value. - Added
strimzi.io/kraft
annotation to be applied onKafka
custom resource, together with the+UseKRaft
feature gate enabled, to declare a ZooKeeper or KRaft based cluster.- if
enabled
theKafka
resource defines a KRaft-based cluster. - if
disabled
, missing or any other value, the operator handle theKafka
resource as a ZooKeeper-based cluster.
- if
- The
io.strimzi.kafka.EnvVarConfigProvider
configuration provider is now deprecated and will be removed in Strimzi 0.42. Users should migrate to Kafka's implementation,org.apache.kafka.common.config.provider.EnvVarConfigProvider
, which is a drop-in replacement. For example:config:
...
config.providers: env
config.providers.env.class: io.strimzi.kafka.EnvVarConfigProvider
...
becomes
```yaml
config:
### ...
config.providers: env
config.providers.env.class: org.apache.kafka.common.config.provider.EnvVarConfigProvider
### ...
v0.37.0
- The
StableConnectIdentites
feature gate moves to beta stage. By default, StrimziPodSets are used for Kafka Connect and Kafka Mirror Maker 2. If needed,StableConnectIdentites
can be disabled in the feature gates configuration in the Cluster Operator. - Support for the
ppc64le
platform - Added version fields to the
Kafka
custom resource status to track install and upgrade state - Support for infinite auto-restarts of Kafka Connect and Kafka Mirror Maker 2 connectors
Changes, deprecations and removals
-
Removed support for OpenTracing:
- The
tracing.type: jaeger
configuration, inKafkaConnect
,KafkaMirrorMaker
,KafkaMirrorMaker2
andKafkaBridge
resources, is not supported anymore. - The OpenTelemetry based tracing is the only available by using
tracing.type: opentelemetry
.
- The
-
The default behavior of the Kafka Connect connector auto-restart has changed.
When the auto-restart feature is enabled in
KafkaConnector
orKafkaMirrorMaker2
custom resources, it will now continue to restart the connectors indefinitely rather than stopping after 7 restarts, as previously. If you want to use the original behaviour, use the.spec.autoRestart.maxRestarts
option to configure the maximum number of restarts. For example:apiVersion: kafka.strimzi.io/v1beta2 kind: KafkaConnector metadata: labels: strimzi.io/cluster: my-connect name: echo-sink-connector spec:
...
autoRestart:
enabled: true
maxRestarts: 7
...
* **The automatic configuration of Cruise Control CPU capacity has been changed in this release**:
* There are three ways to configure Cruise Control CPU capacity values:
* `.spec.cruiseControl.brokerCapacity` (for all brokers)
* `.spec.cruiseControl.brokerCapacity.overrides` (per broker)
* Kafka resource requests and limits (for all brokers).
* The precedence of which Cruise Control CPU capacity configuration is used has been changed.
* In previous Strimzi versions, the Kafka resource limit (if set) took precedence, regardless if any other CPU configurations were set.
* For example:
* (1) Kafka resource limits
* (2) `.spec.cruiseControl.brokerCapacity.overrides`
* (3) `.spec.cruiseControl.brokerCapacity`
* This previous behavior was identified as a bug and was fixed in this Strimzi release.
* Going forward, the brokerCapacity overrides per broker take top precedence, then general brokerCapacity configuration, and then the Kafka resource requests, then the Kafka resource limits.
* For example:
* (1) `.spec.cruiseControl.brokerCapacity.overrides`
* (2) `.spec.cruiseControl.brokerCapacity`
* (3) Kafka resource requests
* (4) Kafka resource limits
* When none of Cruise Control CPU capacity configurations mentioned above are configured, CPU capacity will be set to `1`.
as any _override_ value configured in the `.spec.cruiseControl` section of the `Kafka` custom resource.
v0.36.1
- Add support for Apache Kafka 3.5.1
v0.36.0
- Add support for Apache Kafka 3.4.1 and 3.5.0, and remove support for 3.3.1 and 3.3.2
- Enable SCRAM-SHA authentication in KRaft mode (supported in Apache Kafka 3.5.0 and newer)
- Add support for insecure flag in Maven artifacts in Kafka Connect Build
- Update Kafka Exporter to 1.7.0
- Improve Kafka rolling update to avoid rolling broker in log recovery
- Added support for Kafka Exporter topic exclude and consumer group exclude parameters
- Update Kaniko container builder to 1.12.1
- Add support for Kafka node pools according to Strimzi Proposal #50
- Add support for Unidirectional Topic Operator according to Strimzi Proposal #51
- Update OpenTelemetry 1.19.0
- Fixed ordering of JVM performance options #8579
- Log a warning when a KafkaTopic has no spec #8465
- Updated Strimzi OAuth library to 0.13.0 with better support for KRaft
Changes, deprecations and removals
- From Strimzi 0.36.0 on, we support only Kubernetes 1.21 and newer. Kubernetes 1.19 and 1.20 are not supported anymore.
- Enabling the
UseKRaft
feature gate is now possible only together with theKafkaNodePools
feature gate. To deploy a Kafka cluster in the KRaft mode, you have to use theKafkaNodePool
resources. - The Helm Chart repository at
https://strimzi.io/charts/
is now deprecated. Please use the Helm Chart OCI artifacts from our Helm Chart OCI repository instead. - Option
customClaimCheck
of 'oauth' authentication which relies on JsonPath changed the handling of equal comparison againstnull
as the behaviour was buggy and is now fixed in the updated version of JsonPath library OAuth #196
v0.35.1
Main changes since 0.35.0
Bug Fixes
- Update Fabric8 Kubernetes Client to 6.7.0
Upgrading from Strimzi 0.35.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:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663 |
Apache Kafka 3.3.1 | quay.io/strimzi/kafka@sha256:4de4874a7b722ad813f4dcc58acf509527bca0609999b81e70d81e3b38534d9d |
Apache Kafka 3.3.2 | quay.io/strimzi/kafka@sha256:0d910e7138cb49e1cd8cd84cef88bce35698b93ddd683a3398f1d485a3162693 |
Apache Kafka 3.4.0 | quay.io/strimzi/kafka@sha256:54c6b25b31f51ef401c1b6e2a1b27432911e819bf3e502e05186f01be3f798e5 |
Strimzi Bridge | quay.io/strimzi/kafka-bridge@sha256:d6be183e492f8f88157ab9fe0af53950df8b6711a8a8c33da465de6064f6f86e |
Kaniko executor | quay.io/strimzi/kaniko-executor@sha256:39778b90c2b2afc30261e4ad5135805e1a10a2b60e2e53108fb9f80487f1208a |
Maven Builder | quay.io/strimzi/maven-builder@sha256:88a79eff3b3a386880a630658964b7754caed9e99dd6e645a4c0d23d0fdb47ee |
v0.35.0
- Redesigned the Cluster and User Operator configuration to make it more efficient and flexible
- Allow multiple imagePullSecrets in the Strimzi Helm chart
- Remove support for JMX Trans
- Move feature gate
UseStrimziPodSets
to GA and remove support for StatefulSets - Add flag to load Grafana dashboards from Helm Chart
Changes, deprecations and removals
- Strimzi 0.35.0 (and any possible patch releases) is the last Strimzi version with support for Kubernetes 1.19 and 1.20. From Strimzi 0.36.0 on, we will support only Kubernetes 1.21 and newer.
- Support for JMX Trans has been removed in Strimzi 0.35.0.
If you have JMX Trans enabled in your
Kafka
custom resource in the.spec.jmxTrans
section, you should remove it. If you upgrade to Strimzi 0.35.0 or newer with JMX Trans deployed / enabled in theKafka
custom resource, Strimzi will be automatically deleted after the upgrade. - The feature gate
UseStrimziPodSets
has graduated to GA and cannot be disabled anymore. The StatefulSet template properties in theKafka
custom resource in.spec.zookeeper.template.statefulSet
and.spec.kafka.template.statefulSet
are deprecated and will be ignored. You should remove them from your custom resources.
v0.34.0
- Add support for Kafka 3.4.0 and remove support for Kafka 3.2.x
- Stable Pod identities for Kafka Connect and MirrorMaker 2 (Feature Gate
StableConnectIdentities
) - Use JDK HTTP client in the Kubernetes client instead of the OkHttp client
- Add truststore configuration for HTTPS connections to OPA server
- Add image digest support in Helm chart
- Added the
httpRetries
andhttpRetryPauseMs
options to OAuth authentication configuration. They are set to0
by default - no retries, no backoff between retries. Also added analogoushttpRetries
option in thekeycloak
authorization configuration. These features are enabled by the updated Strimzi Kafka OAuth library (0.12.0).
v0.33.2
Main changes since 0.33.1
Bug Fixes
- Support for Kafka 3.4.0 which fixes CVE-2023-25194
- Fix RBAC files in standalone User Operator installation files
v0.33.1
Main changes since 0.33.0
Bug Fixes
- Remove the
Lease
resource from installation files
v0.33.0
- Add support for Kafka 3.3.2
- Support loadBalancerClass attribute in service with type loadBalancer
- Support for automatically restarting failed Connect or Mirror Maker 2 connectors
- Redesign of Strimzi User Operator to improve its scalability
- Use Java 17 as the runtime for all containers and language level for all modules except
api
,crd-generator
,crd-annotations
, andtest
- Improved FIPS (Federal Information Processing Standards) support
- Upgrade Vert.x to 4.3.5
- Moved from using the Jaeger exporter to OTLP exporter by default
- Kafka Exporter support for
Recreate
deployment strategy -
ImageStream
validation for Kafka Connect builds on OpenShift - Support for configuring the metadata for the Role / RoleBinding of Entity Operator
- Add liveness and readiness probes specifically for nodes running in KRaft combined mode
- Upgrade HTTP bridge to latest 0.24.0 release
Known issues
- The TLS passthrough feature of the Ingress-NGINX Controller for Kubernetes is not compatible with some new TLS features supported by Java 17 such as the session tickets extension.
If you use
type: ingress
listener with enabled mTLS authentication, we recommend you to test if your clients are affected or not. If needed, you can also disable the session ticket extension in the Kafka brokers in yourKafka
custom resource by setting thejdk.tls.server.enableSessionTicketExtension
Java system property tofalse
:apiVersion: kafka.strimzi.io/v1beta2 kind: Kafka metadata:
...
spec:
...
kafka:
jvmOptions:
javaSystemProperties:
- name: jdk.tls.server.enableSessionTicketExtension
value: "false"
...
For more details, see [kubernetes/ingress-nginx#9540](https://github.com/kubernetes/ingress-nginx/issues/9540).
##### Changes, deprecations and removals
* The `UseStrimziPodSet` feature gate will move to GA in Strimzi 0.35.
Support for StatefulSets will be removed from Strimzi right after the 0.34 release.
Please use the Strimzi 0.33 release to test StrimziPodSets in your environment and report any major or blocking issues before the StatefulSet support is removed.
* The default length of any new SCRAM-SHA-512 passwords will be 32 characters instead of 12 characters used in the previous Strimzi versions.
Existing passwords will not be affected by this change until they are regenerated (for example because the user secret is deleted).
If you want to keep using the original password length, you can set it using the `STRIMZI_SCRAM_SHA_PASSWORD_LENGTH` environment variable in `.spec.entityOperator.template.userOperatorContainer.env` in the `Kafka` custom resource or in the `Deployment` of the standalone User Operator.
```yaml
userOperatorContainer:
env:
- name: STRIMZI_SCRAM_SHA_PASSWORD_LENGTH
value: "12"
- In previous versions, the
ssl.secure.random.implementation
option in Kafka brokers was always set toSHA1PRNG
. From Strimzi 0.33 on, it is using the default SecureRandom implementation from the Java Runtime. If you want to keep usingSHA1PRNG
as your SecureRandom, you can configure it in.spec.kafka.config
in yourKafka
custom resource. - Support for JmxTrans in Strimzi is deprecated. It is currently planned to be removed in Strimzi 0.35.0.
- Support for
type: jaeger
tracing based on Jaeger clients and OpenTracing API was deprecated in the Strimzi 0.31 release. As the Jaeger clients are retired and the OpenTracing project is archived, we cannot guarantee their support for future versions. In Strimzi 0.32 and 0.33, we added support for OpenTelemetry tracing as a replacement. If possible, we will maintain the support fortype: jaeger
tracing until June 2023 and remove it afterwards. Please migrate to OpenTelemetry as soon as possible. - When OpenTelemetry is enabled for tracing, starting from this release, the operator configures the OTLP exporter instead of the Jaeger one by default.
The Jaeger exporter is even not included in the Kafka images anymore, so if you want to use it you have to add the binary by yourself.
The
OTEL_EXPORTER_OTLP_ENDPOINT
environment variable has to be used instead of theOTEL_EXPORTER_JAEGER_ENDPOINT
in order to specify the OTLP endpoint to send traces to. If you are using Jaeger as the backend system for tracing, you need to have 1.35 release at least which is the first one exposing an OTLP endpoint.
v0.32.0
- Add support for Kafka 3.3.1 and remove support for Kafka 3.1.0, 3.1.1, and 3.1.2
- Update Open Policy Agent (OPA) Authorizer to 1.5.0
- Update KafkaConnector CR status so the 'NotReady' condition is added if the connector or any tasks are reporting a 'FAILED' state.
- Add auto-approval mechanism on KafkaRebalance resource when an optimization proposal is ready
- The
ControlPlaneListener
feature gate moves to GA - Add client rack-awareness support to Strimzi Bridge pods
- Add support for OpenTelemetry for distributed tracing
- Kafka Connect, Mirror Maker, Mirror Maker 2 and Strimzi Bridge can be configured to use OpenTelemetry
- Using Jaeger exporter by default for backward compatibility
- Updated JMX Exporter dependency to 0.17.2
- ZookeeperRoller considers unready pods
- Support multiple operations per ACLRule
- Upgrade Vert.x to 4.3.4
- Add
cluster-ip
listener. We can use it with a tcp port configuration in an ingress controller to expose kafka with an optional tls encryption and a single LoadBalancer. - Update Strimzi OAuth library to 0.11.0
Changes, deprecations and removals
- From 0.32.0 on, Strimzi supports only Kubernetes version 1.19 and newer.
- A connector or task failing triggers a 'NotReady' condition to be added to the KafkaConnector CR status. This is different from previous versions where the CR would report 'Ready' even if the connector or a task had failed.
- The
ClusterRole
from file020-ClusterRole-strimzi-cluster-operator-role.yaml
was split into two separate roles:- The original
strimzi-cluster-operator-namespaced
ClusterRole
in the file020-ClusterRole-strimzi-cluster-operator-role.yaml
contains the rights related to the resources created based on some Strimzi custom resources. - The new
strimzi-cluster-operator-watched
ClusterRole
in the file023-ClusterRole-strimzi-cluster-operator-role.yaml
contains the rights required to watch and manage the Strimzi custom resources. When deploying the Strimzi Cluster Operator as cluster-wide, thestrimzi-cluster-operator-watched
ClusterRole
needs to be always granted at the cluster level. But thestrimzi-cluster-operator-namespaced
ClusterRole
might be granted only for the namespaces where any custom resources are created.
- The original
- The
ControlPlaneListener
feature gate moves to GA. Direct upgrade from Strimzi 0.22 or earlier is not possible anymore. You have to upgrade first to one of the Strimzi versions between 0.22 and 0.32 before upgrading to Strimzi 0.32 or newer. Please follow the docs for more details. - The
spec.authorization.acls[*].operation
field in theKafkaUser
resource has been deprecated in favour of the fieldspec.authorization.acls[*].operations
which allows to set multiple operations per ACLRule.
v0.31.1
- Kafka 3.1.2 and 3.2.3 (fixes CVE-2022-34917)
- Make
sasl.server.max.receive.size
broker option user configurable - Documentation improvements
- Configuring number of operator replicas through the Strimzi Helm Chart
- Update Strimzi Kafka Bridge to 0.22.1
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.