Releases: redpanda-data/redpanda-operator
Operator v25.1.1-beta3
Added
- Added scheduled sync of ghost broker decommissioner to ensure it's running, even if no watches trigger the reconciler.
- v1 operator: ExternalSecretRefSelector is now provided for referring to external secrets in
clusterConfiguration. This has anoptionalflag which is honoured if present - it turns errors into warnings if the secret can't be looked up.
Changed
-
[Chart] Moved all template rendering into
entry-point.yamlto match the redpanda and console charts. -
values.schema.jsonis now "closed" (additionalProperties: false)Any unexpected values will result in a validation error,previously they would
have been ignored. -
The redpanda operator's helm chart has been merged into the operator itself.
Going forward the chart's
versionandappVersionwill always be equal. -
rbac.createRPKBundleCRsnow defaults totrue. -
The operator will now populate
.Statefulset.SideCars.Image, if unspecified, with it's own image.The image and tag may be controlled with pre-existing
--configurator-base-imageand--configurator-tagflags, respectively.The previous behavior was to defer to the default of the redpanda chart which
could result in out of sync RBAC requirements or regressions of
sidecar/initcontainer behavior, if using an older redpanda chart.
Deprecated
- v1 operator: the
clusterConfigurationfieldExternalSecretRefis deprecated in favour ofExternalSecretRefSelector. Since this field was extremely new, it will be removed in the very near future.
Removed
-
Removed bundled FluxCD controllers, bundled FluxCD CRDs, and support for delegating control to FluxCD.
Previously reconciled FluxCD resources (
HelmRepository,HelmRelease)
will NOT be garbage collected upon upgrading. If the operator is
coexisting with a FluxCD installation, please take care to manually remove
the left over resources.chartRef.useFlux: trueandchartRef.chartVersionare no longer
supported. The controller will log errors and abort reconcilation until the
fields are unset. Ensure that both have been removed from allRedpanda
resources before upgrading.All other
chartReffields are deprecated and are no longer referenced.helmRelease,helmReleaseReady,helmRepository,helmRepositoryReady,
andupgradeFailuresare no longer set onRedpandaStatus, similar to their
behavior whenuseFlux: falsewas set. -
gcr.io/kubebuilder/kube-rbac-proxycontainer is deprecated and has been removed from the Redpanda
operator helm chart. The same ports will continue to serve metrics using kubebuilder's built in RBAC.Any existing prometheus rules don't need to be adjusted.
For more details see: kubernetes-sigs/kubebuilder#3907
-
The V1 operator now requires a minimum Redpanda version of 23.2; all feature-gated behaviour that supported older versions is now enabled unconditionally.
-
The
kube-prometheus-stacksubchart has been removed.This integration was not being up kept and most use cases will be better served by deploying this chart themselves.
Fixed
- Certificate reloading for webhook and metrics endpoints should now behave correctly.
- The operator will restart the redpanda cluster on any change to the cluster configuration
- Expanded the set of rules in both Roles and ClusterRoles to be appropriately in sync with the redpanda helm chart.
- DeprecatedFullNameOverride was interpreted differently between rendering resources and creating
kafka, admin and schema registry client. Now deprecated fullNameOverride will be used only
if correct FullNameOverride is not provided and handled the same way for both
client creation and render function. - The Redpanda license was not set by operator. Now it will be set in the first reconciliation. After initial setup the consequent license re-set will be reconciled after client-go cache resync timeout (default 10h).
- The operator now unconditionally produces statefulsets that have environment variables available to the initContainer that are used for CEL-based config patching.
Previously it attempted to leave existing sts resources unpatched if it seemed like they had already been bootstrapped. With the adoption of CEL patching for node configuration, that left sts pods unable to restart.
- The operator now unconditionally produces an environment for the initContainer that supports CEL-based patching.
This is required to ensure that a pre-existing sts can roll over to new configuration correctly.
charts/redpanda v25.1.1-beta3
v25.1.1-beta3 - 2025-05-06
Added
-
Added a chart wide
podTemplatefield which may be used to control Pod attributes chart wide.This field has a lower precedence than
statefulset.podTemplateand
post_install_job.podTemplatebut will still be merged with them. -
podTemplate,statefulset.podTemplate, andpost_install_job.podTemplatemay now contain template expressions with in string fieldsTo compensate for some of the functionality that was lost with the removal of
fields likeextraVolumes, we've upgradedpodTemplatefields to support
templating. Rather than allowing full control over a structured value, we've
reduced the scope to only string fields. This is significantly more
maintainable and less error prone.As an example, the below snippet will apply the release name as an annotation
to all Pods created by the chart.podTemplate: annotations: "keys-cannot-be-templated": '{{ .Release.Name }}' # But values can!
See
values.yamlfor additional examples.
Changed
-
Promoted the config-watcher sidecar into a real go binary that handles user management and simplifies cluster health checks so they no longer fail when the sole issue is that other nodes in the cluster are unavailable. Additionally the new sidecar subsumes the behavior of the
statefulset.sideCars.controllersstanza which should now be specified via their ownenabledflags. -
clusterDomainnow defaults tocluster.local.(A trialing.has been added) and the chart no longer adds trailing.'s to internal domains.For users not experiencing issues with trailing
.'s this change has no
effect. For users that have had issues with trailing.'s, it's now possible
to opt-out of this behavior by explicitly settingclusterDomaintocluster.local.For users that override
clusterDomain, copied a previous releases
values.yaml, or use the--reuse-valuesflag, trailing.'s will be tripped
from domains upon updating. This behavior may be opted into by appending a
.toclusterDomainprior to upgrading. -
Bump AppVersion to v24.3.6 Redpanda release
-
Bump Redpanda operator side car container tag to
v2.3.7-24.3.6. -
values.schema.jsonis now "closed" (additionalProperties: false)Any unexpected values will result in a validation error,previously they would
have been ignored. -
Update Console depedency to latest version with breaking change. Please visit Console change-log.
-
The name of the container running redpanda is now always set to
redpanda. -
bumped
appVersionto v25.1.1. -
serviceAccount.createnow defaults totrue.The previous behavior resulted in using the
defaultservice account and
extending it with all bindings generated from the chart. Such behavior is
unlikely to be desired. -
rpk debug bundle --namespace $NAMESPACEnow works by default.The chart now creates a set of
RolesandRoleBindingsthat satisfy the
requirements of runningrpk debug bundlefrom any redpanda Pod. These
permissions may be disabled by specifyingrbac.rpkDebugBundle=false.Additionally, the redpanda container now always has a Kubernetes
ServiceAccount token mounted to it to ensurerpk debug bundlecan be
executed successfully. -
Update Console depedency to latest version
v3.1.0. Please visit Console change-log.
Deprecated
.statefulset.sidecars.controllers.imageis now deprecated. It may be specified but will not be respected. Use.statefulset.sidecars.imageinstead.
Removed
-
Connectors sub-chart integration.
The connectors chart may still be deployed separately, though it is not
officially support. If possible, it is recommended to migrate to redpanda
connect. -
Removed the deprecated fields
license_keyandlicense_secret_refin favor
ofenterprise.licenseandenterprise.licenseSecretRef, respectively. -
statefulset.securityContext,statefulset.sideCars.configWatcher.securityContexthave been removed.These fields previously served as both PodSecurityContext and SecurityContext
across the entire chart which led to confusing semantics that couldn't be
fixed without breaking backwards compatiblity.The top level
podTemplatefield may be used to control
PodSecurityContexts and SecurityContexts across the chart. -
Fields that would be better served through
podTemplatehave been removed in favor of usingpodTemplate.Removed fields:
nodeSelector->podTemplate.spec.nodeSelectoraffinity->podTemplate.spec.affinitytolerations->podTemplate.spec.tolerationsimagePullSecrets->podTemplate.spec.imagePullSecretsstatefulset.annotations->statefulset.podTemplate.annotationsstatefulset.startupProbe->statefulset.podTemplate.spec.containers[0].startupProbestatefulset.livenessProbe->statefulset.podTemplate.spec.containers[0].livenessProbestatefulset.readinessProbe->statefulset.podTemplate.spec.containers[1].readinessProbestatefulset.podAffinity->statefulset.podTemplate.spec.affinity.podAffinitystatefulset.nodeSelector->statefulset.podTemplate.spec.nodeSelectorstatefulset.priorityClassName->statefulset.podTemplate.spec.priorityClassNamestatefulset.tolerations->statefulset.podTemplate.spec.tolerationsstatefulset.topologySpreadConstraints->statefulset.podTemplate.spec.topologySpreadConstraintsstatefulset.terminationGracePeriodSeconds->statefulset.podTemplate.spec.terminationGracePeriodSecondsstatefulset.extraVolumes->statefulset.podTemplate.spec.volumesstatefulset.extraVolumesMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.initContainers.*.extraVolumesMounts->statefulset.podTemplate.spec.initContainers[*].volumeMountsstatefulset.initContainers.*.resources->statefulset.podTemplate.spec.initContainers[*].resourcesstatefulset.initContainers.extraInitContainers->statefulset.podTemplate.spec.initContainersstatefulset.sidecars.configWatcher.extraVolumeMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.sidecars.configWatcher.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.configWatcher.securityContext->statefulset.podTemplate.spec.containers[*].securityContextstatefulset.sidecars.controllers.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.controllers.securityContext->statefulset.podTemplate.spec.containers[*].securityContextstatefulset.sidecars.extraVolumeMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.sidecars.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.securityContext->statefulset.podTemplate.spec.containers[*].securityContext
-
Removed regex validation of all image tags.
Fixed
-
Reverse order of applying resources to first create ClusterRole and then ClusterRoleBinding.
When Redpanda custom resource has enabled RBAC the reconciliation was blocked due
ClusterRoleBinding referencing not yet created ClusterRole. -
Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
-
Prevent broker nodes from restarting when solely the cluster replica amount changes
-
Fixed rack awareness by mounting a service account token to the initcontainer when rack awareness is enabled.
-
Broken
Issuers andCertificates are no longer needlessly generated whentls.<cert>.issuerRefis provided. -
Fixed the security contexts' of
set-datadir-ownershipandset-tiered-storage-cache-dir-ownership. -
The
schema_registry_clientandpandaproxy_clientstanzas ofredpanda.yaml
now respectlisteners.kafka.tls.trustStore, when provided.
See also helm-chart 1573 issue.
charts/console v3.1.0
Changed
- Bump AppVersion the new v3.1.0 Console release
Fixed
-
- Correct the secret key reference for authentication JWT signing key.
- Correct the environment variable reference schema registry password.
- Add value for schema registry bearer token secret.
charts/redpanda v25.1.1-beta2
Added
-
Added a chart wide
podTemplatefield which may be used to control Pod attributes chart wide.This field has a lower precedence than
statefulset.podTemplateand
post_install_job.podTemplatebut will still be merged with them. -
podTemplate,statefulset.podTemplate, andpost_install_job.podTemplatemay now contain template expressions with in string fieldsTo compensate for some of the functionality that was lost with the removal of
fields likeextraVolumes, we've upgradedpodTemplatefields to support
templating. Rather than allowing full control over a structured value, we've
reduced the scope to only string fields. This is significantly more
maintainable and less error prone.As an example, the below snippet will apply the release name as an annotation
to all Pods created by the chart.podTemplate: annotations: "keys-cannot-be-templated": '{{ .Release.Name }}' # But values can!
See
values.yamlfor additional examples.
Changed
-
Promoted the config-watcher sidecar into a real go binary that handles user management and simplifies cluster health checks so they no longer fail when the sole issue is that other nodes in the cluster are unavailable. Additionally the new sidecar subsumes the behavior of the
statefulset.sideCars.controllersstanza which should now be specified via their ownenabledflags. -
clusterDomainnow defaults tocluster.local.(A trialing.has been added) and the chart no longer adds trailing.'s to internal domains.For users not experiencing issues with trailing
.'s this change has no
effect. For users that have had issues with trailing.'s, it's now possible
to opt-out of this behavior by explicitly settingclusterDomaintocluster.local.For users that override
clusterDomain, copied a previous releases
values.yaml, or use the--reuse-valuesflag, trailing.'s will be tripped
from domains upon updating. This behavior may be opted into by appending a
.toclusterDomainprior to upgrading. -
Bump AppVersion to v24.3.6 Redpanda release
-
Bump Redpanda operator side car container tag to
v2.3.7-24.3.6. -
values.schema.jsonis now "closed" (additionalProperties: false)Any unexpected values will result in a validation error,previously they would
have been ignored. -
Update Console depedency to latest version with breaking change. Please visit Console change-log.
-
The name of the container running redpanda is now always set to
redpanda. -
bumped
appVersionto v25.1.1. -
serviceAccount.createnow defaults totrue.The previous behavior resulted in using the
defaultservice account and
extending it with all bindings generated from the chart. Such behavior is
unlikely to be desired. -
rpk debug bundle --namespace $NAMESPACEnow works by default.The chart now creates a set of
RolesandRoleBindingsthat satisfy the
requirements of runningrpk debug bundlefrom any redpanda Pod. These
permissions may be disabled by specifyingrbac.rpkDebugBundle=false.Additionally, the redpanda container now always has a Kubernetes
ServiceAccount token mounted to it to ensurerpk debug bundlecan be
executed successfully.
Deprecated
.statefulset.sidecars.controllers.imageis now deprecated. It may be specified but will not be respected. Use.statefulset.sidecars.imageinstead.
Removed
-
Connectors sub-chart integration.
The connectors chart may still be deployed separately, though it is not
officially support. If possible, it is recommended to migrate to redpanda
connect. -
Removed the deprecated fields
license_keyandlicense_secret_refin favor
ofenterprise.licenseandenterprise.licenseSecretRef, respectively. -
statefulset.securityContext,statefulset.sideCars.configWatcher.securityContexthave been removed.These fields previously served as both PodSecurityContext and SecurityContext
across the entire chart which led to confusing semantics that couldn't be
fixed without breaking backwards compatiblity.The top level
podTemplatefield may be used to control
PodSecurityContexts and SecurityContexts across the chart. -
Fields that would be better served through
podTemplatehave been removed in favor of usingpodTemplate.Removed fields:
nodeSelector->podTemplate.spec.nodeSelectoraffinity->podTemplate.spec.affinitytolerations->podTemplate.spec.tolerationsimagePullSecrets->podTemplate.spec.imagePullSecretsstatefulset.annotations->statefulset.podTemplate.annotationsstatefulset.startupProbe->statefulset.podTemplate.spec.containers[0].startupProbestatefulset.livenessProbe->statefulset.podTemplate.spec.containers[0].livenessProbestatefulset.readinessProbe->statefulset.podTemplate.spec.containers[1].readinessProbestatefulset.podAffinity->statefulset.podTemplate.spec.affinity.podAffinitystatefulset.nodeSelector->statefulset.podTemplate.spec.nodeSelectorstatefulset.priorityClassName->statefulset.podTemplate.spec.priorityClassNamestatefulset.tolerations->statefulset.podTemplate.spec.tolerationsstatefulset.topologySpreadConstraints->statefulset.podTemplate.spec.topologySpreadConstraintsstatefulset.terminationGracePeriodSeconds->statefulset.podTemplate.spec.terminationGracePeriodSecondsstatefulset.extraVolumes->statefulset.podTemplate.spec.volumesstatefulset.extraVolumesMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.initContainers.*.extraVolumesMounts->statefulset.podTemplate.spec.initContainers[*].volumeMountsstatefulset.initContainers.*.resources->statefulset.podTemplate.spec.initContainers[*].resourcesstatefulset.initContainers.extraInitContainers->statefulset.podTemplate.spec.initContainersstatefulset.sidecars.configWatcher.extraVolumeMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.sidecars.configWatcher.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.configWatcher.securityContext->statefulset.podTemplate.spec.containers[*].securityContextstatefulset.sidecars.controllers.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.controllers.securityContext->statefulset.podTemplate.spec.containers[*].securityContextstatefulset.sidecars.extraVolumeMounts->statefulset.podTemplate.spec.containers[*].volumeMountsstatefulset.sidecars.resources->statefulset.podTemplate.spec.containers[*].resourcesstatefulset.sidecars.securityContext->statefulset.podTemplate.spec.containers[*].securityContext
-
Removed regex validation of all image tags.
Fixed
-
Reverse order of applying resources to first create ClusterRole and then ClusterRoleBinding.
When Redpanda custom resource has enabled RBAC the reconciliation was blocked due
ClusterRoleBinding referencing not yet created ClusterRole. -
Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
-
Prevent broker nodes from restarting when solely the cluster replica amount changes
-
Fixed rack awareness by mounting a service account token to the initcontainer when rack awareness is enabled.
-
Broken
Issuers andCertificates are no longer needlessly generated whentls.<cert>.issuerRefis provided. -
Fixed the security contexts' of
set-datadir-ownershipandset-tiered-storage-cache-dir-ownership. -
The
schema_registry_clientandpandaproxy_clientstanzas ofredpanda.yaml
now respectlisteners.kafka.tls.trustStore, when provided.
See also helm-chart 1573 issue.
Operator v2.4.2
Added
-
v1 operator: ExternalSecretRefSelector is now provided for referring to external secrets in
clusterConfiguration. This has anoptionalflag which is honoured if present - it turns errors into warnings if the secret can't be looked up. -
[Chart] Added
rbac.createCompatCRswhich intentionally over scopes the operator's RBAC configuration to preserve compatibility with redpanda charts <= v5.10.1 and <=v5.9.22.rbac.createCompatCRsdefaults totrueto prevent unexpected breakages upon upgrading the operator.
Changed
rbac.createRPKBundleCRsnow defaults totrue.- Bumped the vendored redpanda chart version to v5.10.2
Deprecated
- v1 operator: the
clusterConfigurationfieldExternalSecretRefis deprecated in favour ofExternalSecretRefSelector. Since this field was extremely new, it will be removed in the very near future.
Fixed
- The operator will restart the redpanda cluster on any change to the cluster configuration
- Expanded the set of rules in both Roles and ClusterRoles to be appropriately in sync with the redpanda helm chart.
- DeprecatedFullNameOverride was interpreted differently between rendering resources and creating
kafka, admin and schema registry client. Now deprecated fullNameOverride will be used only
if correct FullNameOverride is not provided and handled the same way for both
client creation and render function. - Fields with embedded structs, such as
auth.sasl.bootstrapUser.secretKeyRefandlisteners.internal.tls.truststore.configMapKeyRef, are no longer discarded during rendering of resources. - The Redpanda license was not set by operator. Now it will be set in the first reconciliation. After initial setup the consequent license re-set will be reconciled after client-go cache resync timeout (default 10h).
Operator: v2.3.9-24.3.11
Added
-
Added scheduled sync of ghost broker decommissioner to ensure it's running, even if no watches trigger the reconciler.
-
v1 operator: ExternalSecretRefSelector is now provided for referring to external secrets in
clusterConfiguration. This has anoptionalflag which is honoured if present - it turns errors into warnings if the secret can't be looked up. -
[Chart] Added
rbac.createCompatCRswhich intentionally over scopes the operator's RBAC configuration to preserve compatibility with redpanda charts <= v5.10.1 and <=v5.9.22.rbac.createCompatCRsdefaults totrueto prevent unexpected breakages upon upgrading the operator.
Changed
-
Reconciliation will attempt to create all resources regardless of errors encounter.
All errors will be reported at the end of the reconciliation loop. -
[Chart] Moved all template rendering into
entry-point.yamlto match the redpanda and console charts. -
The redpanda operator's helm chart has been merged into the operator itself.
Going forward the chart's
versionandappVersionwill always be equal. -
rbac.createRPKBundleCRsnow defaults totrue. -
Bumped internal chart version to v5.9.22
Deprecated
- v1 operator: the
clusterConfigurationfieldExternalSecretRefis deprecated in favour ofExternalSecretRefSelector. Since this field was extremely new, it will be removed in the very near future.
Fixed
-
Reverse order of applying resources to first create ClusterRole and then ClusterRoleBinding.
When Redpanda custom resource has enabled RBAC the reconciliation was blocked due
ClusterRoleBinding referencing not yet created ClusterRole. -
Certificate reloading for webhook and metrics endpoints should now behave correctly.
-
The operator will restart the redpanda cluster on any change to the cluster configuration
-
Expanded the set of rules in both Roles and ClusterRoles to be appropriately in sync with the redpanda helm chart.
-
DeprecatedFullNameOverride was interpreted differently between rendering resources and creating
kafka, admin and schema registry client. Now deprecated fullNameOverride will be used only
if correct FullNameOverride is not provided and handled the same way for both
client creation and render function. -
The Redpanda license was not set by operator. Now it will be set in the first reconciliation. After initial setup the consequent license re-set will be reconciled after client-go cache resync timeout (default 10h).
charts/redpanda: v5.9.22
Changed
-
serviceAccount.createnow defaults totrue.The previous behavior resulted in using the
defaultservice account and
extending it with all bindings generated from the chart. Such behavior is
unlikely to be desired. -
rpk debug bundle --namespace $NAMESPACEnow works by default.The chart now creates a set of
RolesandRoleBindingsthat satisfy the
requirements of runningrpk debug bundlefrom any redpanda Pod. These
permissions may be disabled by specifyingrbac.rpkDebugBundle=false.Additionally, the redpanda container now always has a Kubernetes
ServiceAccount token mounted to it to ensurerpk debug bundlecan be
executed successfully.
Fixed
- Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
- Prevent broker nodes from restarting when solely the cluster replica amount changes
- Fixed rack awareness by mounting a service account token to the initcontainer when rack awareness is enabled.
- Broken
Issuers andCertificates are no longer needlessly generated whentls.<cert>.issuerRefis provided. - The
schema_registry_clientandpandaproxy_clientstanzas ofredpanda.yaml
now respectlisteners.kafka.tls.trustStore, when provided.
See also helm-chart 1573 issue.
charts/redpanda: v5.10.2
Changed
-
serviceAccount.createnow defaults totrue.The previous behavior resulted in using the
defaultservice account and
extending it with all bindings generated from the chart. Such behavior is
unlikely to be desired. -
rpk debug bundle --namespace $NAMESPACEnow works by default.The chart now creates a set of
RolesandRoleBindingsthat satisfy the
requirements of runningrpk debug bundlefrom any redpanda Pod. These
permissions may be disabled by specifyingrbac.rpkDebugBundle=false.Additionally, the redpanda container now always has a Kubernetes
ServiceAccount token mounted to it to ensurerpk debug bundlecan be
executed successfully.
Removed
- Removed regex validation of all image tags.
Fixed
- Fixed rack awareness by mounting a service account token to the initcontainer when rack awareness is enabled.
- Broken
Issuers andCertificates are no longer needlessly generated whentls.<cert>.issuerRefis provided. - The
schema_registry_clientandpandaproxy_clientstanzas ofredpanda.yaml
now respectlisteners.kafka.tls.trustStore, when provided.
See also helm-chart 1573 issue.
Operator v25.1.1-beta2
Added
- Added scheduled sync of ghost broker decommissioner to ensure it's running, even if no watches trigger the reconciler.
Changed
-
[Chart] Moved all template rendering into
entry-point.yamlto match the redpanda and console charts. -
values.schema.jsonis now "closed" (additionalProperties: false)Any unexpected values will result in a validation error,previously they would
have been ignored. -
The redpanda operator's helm chart has been merged into the operator itself.
Going forward the chart's
versionandappVersionwill always be equal. -
rbac.createRPKBundleCRsnow defaults totrue.
Removed
-
Removed bundled FluxCD controllers, bundled FluxCD CRDs, and support for delegating control to FluxCD.
Previously reconciled FluxCD resources (
HelmRepository,HelmRelease)
will NOT be garbage collected upon upgrading. If the operator is
coexisting with a FluxCD installation, please take care to manually remove
the left over resources.chartRef.useFlux: trueandchartRef.chartVersionare no longer
supported. The controller will log errors and abort reconcilation until the
fields are unset. Ensure that both have been removed from allRedpanda
resources before upgrading.All other
chartReffields are deprecated and are no longer referenced.helmRelease,helmReleaseReady,helmRepository,helmRepositoryReady,
andupgradeFailuresare no longer set onRedpandaStatus, similar to their
behavior whenuseFlux: falsewas set. -
gcr.io/kubebuilder/kube-rbac-proxycontainer is deprecated and has been removed from the Redpanda
operator helm chart. The same ports will continue to serve metrics using kubebuilder's built in RBAC.Any existing prometheus rules don't need to be adjusted.
For more details see: kubernetes-sigs/kubebuilder#3907
-
The V1 operator now requires a minimum Redpanda version of 23.2; all feature-gated behaviour that supported older versions is now enabled unconditionally.
-
The
kube-prometheus-stacksubchart has been removed.This integration was not being up kept and most use cases will be better served by deploying this chart themselves.
Fixed
- Certificate reloading for webhook and metrics endpoints should now behave correctly.
- The operator will restart the redpanda cluster on any change to the cluster configuration
- Expanded the set of rules in both Roles and ClusterRoles to be appropriately in sync with the redpanda helm chart.
- DeprecatedFullNameOverride was interpreted differently between rendering resources and creating
kafka, admin and schema registry client. Now deprecated fullNameOverride will be used only
if correct FullNameOverride is not provided and handled the same way for both
client creation and render function.
operator: v25.1.1-beta1
Added
- Added scheduled sync of ghost broker decommissioner to ensure it's running, even if no watches trigger the reconciler.
Changed
-
Bumped internal redpanda chart to v5.9.19.
chartRefnow defaults to v5.9.19.
WhenuseFluxisfalse, the equivalent of chart v5.9.19 will be deployed. -
Bumped the internal chart version to v5.9.20.
-
[Chart] Moved all template rendering into
entry-point.yamlto match the redpanda and console charts. -
The redpanda operator's helm chart has been merged into the operator itself.
Going forward the chart's
versionandappVersionwill always be equal.
Removed
-
Removed bundled FluxCD controllers, bundled FluxCD CRDs, and support for delegating control to FluxCD.
Previously reconciled FluxCD resources (
HelmRepository,HelmRelease)
will NOT be garbage collected upon upgrading. If the operator is
coexisting with a FluxCD installation, please take care to manually remove
the left over resources.chartRef.useFlux: trueandchartRef.chartVersionare no longer
supported. The controller will log errors and abort reconcilation until the
fields are unset. Ensure that both have been removed from allRedpanda
resources before upgrading.All other
chartReffields are deprecated and are no longer referenced.helmRelease,helmReleaseReady,helmRepository,helmRepositoryReady,
andupgradeFailuresare no longer set onRedpandaStatus, similar to their
behavior whenuseFlux: falsewas set. -
gcr.io/kubebuilder/kube-rbac-proxycontainer is deprecated and has been removed from the Redpanda
operator helm chart. The same ports will continue to serve metrics using kubebuilder's built in RBAC.
Any existing prometheus rules don't need to be adjusted.
For more details see: kubernetes-sigs/kubebuilder#3907
- The V1 operator now requires a minimum Redpanda version of 23.2; all feature-gated behaviour that supported older versions is now enabled unconditionally.
Fixed
-
Usage of
tplandincludenow function as expected whenuseFlux: falseis set.{{ (get (fromJson (include "redpanda.Fullname" (dict "a" (list .)))) "r") }}would previously failure with fairly arcane errors.Now, the above example will correctly render to a string value. However,
syntax errors and the like are still reported in an arcane fashion. -
Toggling
useFlux, in either direction, no longer causes the bootstrap user's password to be regenerated.Manual mitigation steps are available here.
-
Certificate reloading for webhook and metrics endpoints should now behave correctly.
-
Expanded the set of rules in both Roles and ClusterRoles to be appropriately in sync with the redpanda helm chart.