Apache Kafka® running on Kubernetes
APACHE-2.0 License
Bot releases are hidden (Show)
Published by scholzj almost 4 years ago
This patch release contains several bug-fixes:
Published by scholzj almost 4 years ago
This patch release contains several bugfixes:
Published by scholzj almost 4 years ago
Note: This is the last version of Strimzi that will support Kubernetes 1.11 and higher. Future versions will support only Kubernetes 1.16 and higher.
listeners
configurable as an array and add support for more different listeners in single clusterAclAuthorizer
class for the simple
Kafka authorization type. AclAuthorizer
contains new features such as the ability to control the amount of authorization logs in the broker logs.client.rack
property for Kafka Connect to use fetch from closest replica
feature.hostAliases
in Pod templatesAll changes can be found under the 0.20.0 milestone.
* Deprecation of the old listener configuration
* Removal of monitoring port on Kafka and ZooKeeper related services
* Deprecation of Kafka TLS sidecar configuration
.spec.kafka.listeners
sectionThe .spec.kafka.listeners
section of the Kafka CRD has been redesigned to allow configuring more different listeners.
The old listeners
object which allowed only configuration of oneplain
, one tls
, and one external
listener is now deprecated and will be removed in the future.
It is replaced with an array allowing configuration of multiple different listeners:
listeners:
- name: local
port: 9092
type: internal
tls: true
- name: external1
port: 9093
type: loadbalancer
tls: true
- name: external2
port: 9094
type: nodeport
tls: true
This change includes some other changes:
tls
field is now required.overrides
section is now merged with the configuration
section.dnsAnnotations
field has been renamed to annotations
since we found out it has wider use.loadBalancerSourceRanges
and externalTrafficPolicy
has been moved into listener configuration. Its use in the template
section is now deprecated.type: internal
listeners, you can now use the flag useServiceDnsDomain
to define whether they should use the fully qualified DNS names including the cluster service suffix (usually .cluster.local
). This option defaults to false.preferredAddressType
has been removed to preferredNodePortAddressType
.To convert the old format into the new format with backwards compatibility, you should use following names and types:
plain
listener, use the name plain
, port 9092
and type internal
.tls
listener, use the name tls
, port 9093
and type internal
.external
listener, use the name external
, port 9094
.For example the following old configuration:
listeners:
plain:
# ...
tls:
# ...
external:
type: loadbalancer
# ...
Will look like this in the new format:
listeners:
- name: plain
port: 9092
type: internal
tls: false
- name: tls
port: 9093
type: internal
tls: true
- name: external
port: 9094
type: loadbalancer
tls: true
The PodMonitor
resource is now used instead of the ServiceMonitor
for scraping metrics from Kafka, ZooKeeper, Kafka Connect and so on.
For this reason, we have removed the monitoring port tcp-prometheus
(9404) on all the services where it is declared (Kafka bootstrap, ZooKeeper client and so on).
It was already deprecated in the previous 0.19.0 release.
Together with it we have also removed the Prometheus annotations from the services. If you want to add them, you can use the templates.
See here https://strimzi.io/docs/operators/master/using.html#assembly-customizing-kubernetes-resources-str for more details about templates usage.
Finally, the Kafka Exporter service was has been removed because it was used just for the monitoring port.
Since the Kafka TLS sidecar has been removed, the related configuration options in the Kafka custom resource are now deprecated:
.spec.kafka.tlsSidecar
.spec.kafka.template.tlsSidecar
Published by scholzj almost 4 years ago
Release Candidate 3 contains several fixes to bugs found in Release Candidate 2:
Published by scholzj about 4 years ago
Release Candidate 2 contains several fixes to bugs found in Release Candidate 1:
.
in name (#3820)Published by scholzj about 4 years ago
Note: This is the last version of Strimzi that will support Kubernetes 1.11 and higher. Future versions will support only Kubernetes 1.16 and higher.
listeners
configurable as an array and add support for more different listeners in single clusterAclAuthorizer
class for the simple
Kafka authorization type. AclAuthorizer
contains new features such as the ability to control the amount of authorization logs in the broker logs.client.rack
property for Kafka Connect to use fetch from closest replica
feature.hostAliases
in Pod templates* Deprecation of the old listener configuration
* Removal of monitoring port on Kafka and ZooKeeper related services
* Deprecation of Kafka TLS sidecar configuration
.spec.kafka.listeners
sectionThe .spec.kafka.listeners
section of the Kafka CRD has been redesigned to allow configuring more different listeners.
The old listeners
object which allowed only configuration of oneplain
, one tls
, and one external
listener is now deprecated and will be removed in the future.
It is replaced with an array allowing configuration of multiple different listeners:
listeners:
- name: local
port: 9092
type: internal
tls: true
- name: external1
port: 9093
type: loadbalancer
tls: true
- name: external2
port: 9094
type: nodeport
tls: true
This change includes some other changes:
tls
field is now required.overrides
section is now merged with the configuration
section.dnsAnnotations
field has been renamed to annotations
since we found out it has wider use.loadBalancerSourceRanges
and externalTrafficPolicy
has been moved into listener configuration. Its use in the template
section is now deprecated.type: internal
listeners, you can now use the flag useServiceDnsDomain
to define whether they should use the fully qualified DNS names including the cluster service suffix (usually .cluster.local
). This option defaults to false.preferredAddressType
has been removed to preferredNodePortAddressType
.To convert the old format into the new format with backwards compatibility, you should use following names and types:
plain
listener, use the name plain
, port 9092
and type internal
.tls
listener, use the name tls
, port 9093
and type internal
.external
listener, use the name external
, port 9094
.For example the following old configuration:
listeners:
plain:
# ...
tls:
# ...
external:
type: loadbalancer
# ...
Will look like this in the new format:
listeners:
- name: plain
port: 9092
type: internal
tls: false
- name: tls
port: 9093
type: internal
tls: true
- name: external
port: 9094
type: loadbalancer
tls: true
The PodMonitor
resource is now used instead of the ServiceMonitor
for scraping metrics from Kafka, ZooKeeper, Kafka Connect and so on.
For this reason, we have removed the monitoring port tcp-prometheus
(9404) on all the services where it is declared (Kafka bootstrap, ZooKeeper client and so on).
It was already deprecated in the previous 0.19.0 release.
Together with it we have also removed the Prometheus annotations from the services. If you want to add them, you can use the templates.
See here https://strimzi.io/docs/operators/master/using.html#assembly-customizing-kubernetes-resources-str for more details about templates usage.
Finally, the Kafka Exporter service was has been removed because it was used just for the monitoring port.
Since the Kafka TLS sidecar has been removed, the related configuration options in the Kafka custom resource are now deprecated:
.spec.kafka.tlsSidecar
.spec.kafka.template.tlsSidecar
Published by scholzj about 4 years ago
Kafka.spec.topicOperator
classes and deployment logicKafkaRebalance
resource's status. The state of the rebalance is now displayed in the associated Condition
's type
field rather than the status
field. This was done so that the information would display correctly in various Kubernetes tools.KafkaRebalance
CR and the ability to define a regular expression that will exclude matching topics from a rebalance optimization proposal.Full list of changes can be found under the 0.19.0 milestone.
The Helm v2 support will end soon.
Bug fixing should stop on August 13th 2020 and security fixes on November 13th.
See https://helm.sh/blog/covid-19-extending-helm-v2-bug-fixes/ for more details.
In sync with that, the Helm v2 chart of Strimzi Cluster Operator is now deprecated and will be removed in the future as Helm v2 support ends.
Since Strimzi 0.19.0, we have a new chart for Helm v3 which can be used instead.
In Strimzi 0.12.0, the v1alpha1
versions of the following resources have been deprecated and replaced by v1beta1
:
Kafka
KafkaConnect
KafkaConnectS2I
KafkaMirrorMaker
KafkaTopic
KafkaUser
In the next release, the v1alpha1
versions of these resources will be removed.
Please follow the guide for upgrading the resources: https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrade-str.
The pod_name
and container_name
labels provided on the cadvisor metrics are now just pod
and container
starting from Kubernetes 1.16.
We removed the old ones from the Prometheus scraping configuration/alerts and on the Kafka and ZooKeeper dashboard as well.
It means that the charts related to memory and CPU usage are not going to work on Kuvbernetes version previous 1.14.
For more information on what is changed: https://github.com/strimzi/strimzi-kafka-operator/pull/3312
The PodMonitor
resource is now used instead of the ServiceMonitor
for scraping metrics from Kafka, ZooKeeper, Kafka Connect and so on.
For this reason, we are deprecating the monitoring port tcp-prometheus
(9404) on all the services where it is declared (Kafka bootstrap, ZooKeeper client and so on).
This port will be removed in the next release.
Together with it we will also remove the Prometheus annotation from the service.
Because of the new Cluster Operator dynamic logging configuration via PR#3328 we are going to remove the STRIMZI_LOG_LEVEL
environment variable from the Cluster Operator deployment YAML file in the 0.20.0 release.
Published by scholzj about 4 years ago
Kafka.spec.topicOperator
classes and deployment logicKafkaRebalance
resource's status. The state of the rebalance is now displayed in the associated Condition
's type
field rather than the status
field. This was done so that the information would display correctly in various Kubernetes tools.KafkaRebalance
CR and the ability to define a regular expression that will exclude matching topics from a rebalance optimization proposal.The Helm v2 support will end soon.
Bug fixing should stop on August 13th 2020 and security fixes on November 13th.
See https://helm.sh/blog/covid-19-extending-helm-v2-bug-fixes/ for more details.
In sync with that, the Helm v2 chart of Strimzi Cluster Operator is now deprecated and will be removed in the future as Helm v2 support ends.
Since Strimzi 0.19.0, we have a new chart for Helm v3 which can be used instead.
In Strimzi 0.12.0, the v1alpha1
versions of the following resources have been deprecated and replaced by v1beta1
:
Kafka
KafkaConnect
KafkaConnectS2I
KafkaMirrorMaker
KafkaTopic
KafkaUser
In the next release, the v1alpha1
versions of these resources will be removed.
Please follow the guide for upgrading the resources: https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrade-str.
The pod_name
and container_name
labels provided on the cadvisor metrics are now just pod
and container
starting from Kubernetes 1.16.
We removed the old ones from the Prometheus scraping configuration/alerts and on the Kafka and ZooKeeper dashboard as well.
It means that the charts related to memory and CPU usage are not going to work on Kuvbernetes version previous 1.14.
For more information on what is changed: https://github.com/strimzi/strimzi-kafka-operator/pull/3312
The PodMonitor
resource is now used instead of the ServiceMonitor
for scraping metrics from Kafka, ZooKeeper, Kafka Connect and so on.
For this reason, we are deprecating the monitoring port tcp-prometheus
(9404) on all the services where it is declared (Kafka bootstrap, ZooKeeper client and so on).
This port will be removed in the next release.
Together with it we will also remove the Prometheus annotation from the service.
Full list of changes can be found under the 0.19.0 milestone.
Published by scholzj over 4 years ago
yq
version 3 (https://github.com/mikefarah/yq)ssl.cipher.suites
, ssl.protocol
and ssl.enabled.protocols
to be configurable for Kafka and the different components supported by StrimziFull list of changes can be found under the 0.18.0 milestone.
Published by scholzj over 4 years ago
KafkaRebalance
resourcesKafkaRebalance
resource to the strimzi
categoryKafkaRebalance
resources to Operators Grafana dashboardFull list of changes can be found under the 0.18.0 milestone.
Published by scholzj over 4 years ago
yq
version 3 (https://github.com/mikefarah/yq)ssl.cipher.suites
, ssl.protocol
and ssl.enabled.protocols
to be configurable for Kafka and the different components supported by StrimziFull list of changes can be found under the 0.18.0 milestone.
Published by scholzj over 4 years ago
Note: The Connector operator is now using network policies to make sure it has access to Kafka Connect even when network policies deny all traffic. If you want to use the Connector operator while also using the REST API directly, you should create additional network policies to give access to the REST API to your applications as well.
Full list of changes can be found under the 0.17.0 milestone.
Published by scholzj over 4 years ago
Full list of changes can be found under the 0.17.0 milestone.
Published by scholzj over 4 years ago
Note: The Connector operator is now using network policies to make sure it has access to Kafka Connect even when network policies deny all traffic. If you want to use the Connector operator while also using the REST API directly, you should create additional network policies to give access to the REST API to your applications as well.
Full list of changes can be found under the 0.17.0 milestone.
Published by scholzj over 4 years ago
Note: The Connector operator is now using network policies to make sure it has access to Kafka Connect even when network policies deny all traffic. If you want to use the Connector operator while also using the REST API directly, you should create additional network policies to give access to the REST API to your applications as well.
Full list of changes can be found under the 0.17.0 milestone.
Published by scholzj over 4 years ago
Full list of changes can be found under the 0.17.0 milestone.
Published by scholzj over 4 years ago
Kafka.spec.kafka.version
field is not specifiedPublished by ppatierno over 4 years ago
Published by scholzj almost 5 years ago
ExternalDNS
, ExternalIP
, InternalDNS
, InternalIP
or Hostname
)jvmOptions
, -Xmx
option is calculated from memory requests rather than from memory limitsexternalTrafficPolicy
and loadBalancerSourceRanges
properties on loadbalancer and nodeport type servicestcp-
prefix to the port names in Kafka services and headless services. (e.g clientstls -> tcp-clientstls)Full list of changes can be found under the 0.16.0 milestone.
Published by scholzj almost 5 years ago
Full list of changes can be found under the 0.16.0 milestone.