diff --git a/modules/console/pages/config/analytics.adoc b/modules/console/pages/config/analytics.adoc index 74dce6238e..2ecc5daa49 100644 --- a/modules/console/pages/config/analytics.adoc +++ b/modules/console/pages/config/analytics.adoc @@ -72,20 +72,18 @@ When Redpanda Console is part of the Redpanda Helm chart or Operator: Operator:: + [,yaml] -.`redpanda-cluster`.yaml +.`redpanda-console`.yaml ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - analytics: - enabled: false + clusterRef: + name: redpanda + config: + analytics: + enabled: false ---- Helm:: diff --git a/modules/console/pages/config/configure-console.adoc b/modules/console/pages/config/configure-console.adoc index 7ce81546e4..8453f825de 100644 --- a/modules/console/pages/config/configure-console.adoc +++ b/modules/console/pages/config/configure-console.adoc @@ -3,7 +3,6 @@ :page-aliases: console:reference/config.adoc, reference:console/config.adoc :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/configure-console.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] Redpanda Console loads configuration properties from three sources, in the following order of precedence: @@ -79,35 +78,31 @@ Operator:: Configure Redpanda Console in the `console` section of your Redpanda custom resource: + [,yaml] -.`redpanda-cluster`.yaml +.`redpanda-console`.yaml ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - #kafka: - #brokers: [] # Auto-configured to connect to this Redpanda cluster - server: - listenPort: 8080 - auditLog: - enabled: false # default; set to true to write audit logs to stdout - additionalHeaders: # specifies HTTP headers to include in audit logs - - "X-Forwarded-For" - - "User-Agent" - # Add any other Redpanda Console configuration here + clusterRef: + name: redpanda # Reference to your Redpanda cluster + config: + server: + listenPort: 8080 + auditLog: + enabled: false + additionalHeaders: + - "X-Forwarded-For" + - "User-Agent" + # Add any other Redpanda Console configuration here ---- + Apply the configuration: + [,bash] ---- -kubectl apply -f redpanda-cluster.yaml --namespace +kubectl apply -f redpanda-console.yaml --namespace ---- Helm:: @@ -122,7 +117,7 @@ console: console: config: #kafka: - #brokers: [] # Auto-configured to connect to this Redpanda cluster + #brokers: [] # You can leave this empty. The chart is already auto-configured to connect to your Redpanda cluster server: listenPort: 8080 auditLog: diff --git a/modules/console/pages/config/connect-to-redpanda.adoc b/modules/console/pages/config/connect-to-redpanda.adoc index cbf335d03b..3f788601f1 100644 --- a/modules/console/pages/config/connect-to-redpanda.adoc +++ b/modules/console/pages/config/connect-to-redpanda.adoc @@ -2,7 +2,6 @@ :description: Learn how to configure Redpanda Console to connect to a Redpanda cluster and ensure communication with your Redpanda brokers. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/connect-to-redpanda.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] Redpanda Console connects to your Redpanda cluster using dedicated configuration blocks for the Kafka API, Schema Registry API, and Admin API. Each connection serves a different purpose: @@ -56,7 +55,21 @@ kafka: Kubernetes embedded:: + -- -When Redpanda Console is deployed as part of the Redpanda Helm chart or Operator, no additional connection configuration is required. The chart or Operator automatically configures Redpanda Console to connect to the Redpanda cluster. Only configure the `kafka` block if you need to override the default connection settings (for example, to connect to a different cluster or use custom authentication). +[tabs] +==== +Operator:: ++ +When deploying Redpanda Console with the Redpanda Operator, you can connect Console to your Redpanda cluster in two ways: + +- **clusterRef:** Reference the Redpanda cluster by name for automatic connection. This is the recommended approach for most users. +- **staticConfiguration:** Manually specify connection details for Kafka, Admin API, and Schema Registry if you need custom settings. + +The Operator will automatically configure Console to connect to the referenced cluster when using `clusterRef`. Use `staticConfiguration` only if you need to override the default connection or connect to a different cluster. + +Helm chart:: ++ +Redpanda Console is automatically configured to connect to the Redpanda cluster managed by the Helm chart. No additional connection configuration is required. Only configure the `kafka` block if you need to override the default connection settings (for example, to connect to a different cluster or use custom authentication). +==== -- Kubernetes standalone:: + diff --git a/modules/console/pages/config/deserialization.adoc b/modules/console/pages/config/deserialization.adoc index 0d3f39ede6..ded6c24a55 100644 --- a/modules/console/pages/config/deserialization.adoc +++ b/modules/console/pages/config/deserialization.adoc @@ -2,7 +2,6 @@ :description: Learn how to configure Redpanda Console to use Schema Registry, Protobuf files, and other deserialization methods to ensure your data is correctly interpreted and displayed. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/deserialization.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] Redpanda Console provides tools for deserializing and inspecting messages in Kafka topics. This topic explains how to configure Redpanda Console to use Schema Registry, Protobuf files, and other deserialization methods to ensure your data is correctly interpreted and displayed. @@ -91,22 +90,20 @@ Operator:: .`redpanda-cluster`.yaml ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - serde: - protobuf: - enabled: true - mappings: - - topicName: address-v1 - valueProtoType: fake_models.Address # The full Protobuf type name - # keyProtoType: Not specified because the key is a plain string + clusterRef: + name: redpanda + config: + serde: + protobuf: + enabled: true + mappings: + - topicName: address-v1 + valueProtoType: fake_models.Address + # keyProtoType: Not specified because the key is a plain string ---- Helm:: @@ -198,27 +195,25 @@ Operator:: [,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - serde: - protobuf: - enabled: true - mappings: - - topicName: orders - valueProtoType: fake_models.Order - keyProtoType: fake_models.OrderKey - fileSystem: - enabled: true - refreshInterval: 5m - paths: - - /etc/protos + clusterRef: + name: redpanda + config: + serde: + protobuf: + enabled: true + mappings: + - topicName: orders + valueProtoType: fake_models.Order + keyProtoType: fake_models.OrderKey + fileSystem: + enabled: true + refreshInterval: 5m + paths: + - /etc/protos ---- Helm:: @@ -324,30 +319,28 @@ Operator:: [,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - serde: - protobuf: - enabled: true - mappings: - - topicName: orders - valueProtoType: fake_models.Order - keyProtoType: fake_models.OrderKey - git: - enabled: true - repository: - url: https://github.com/myorg/kafka-proto-files.git - branch: master - refreshInterval: 10m - paths: - - ./ + clusterRef: + name: redpanda + config: + serde: + protobuf: + enabled: true + mappings: + - topicName: orders + valueProtoType: fake_models.Order + keyProtoType: fake_models.OrderKey + git: + enabled: true + repository: + url: https://github.com/myorg/kafka-proto-files.git + branch: master + refreshInterval: 10m + paths: + - ./ ---- Helm:: @@ -491,37 +484,35 @@ Operator:: [,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - extraEnv: - - name: SERDE_PROTOBUF_GIT_BASICAUTH_USERNAME - value: token - extraEnvFrom: - - secretRef: - name: protobuf-git-auth - console: - config: - serde: - protobuf: - enabled: true - mappings: - - topicName: - valueProtoType: - git: - enabled: true - repository: - url: https://github.com//.git - branch: - refreshInterval: 10m - paths: - - ./ - basicAuth: - enabled: true + clusterRef: + name: redpanda + extraEnv: + - name: SERDE_PROTOBUF_GIT_BASICAUTH_USERNAME + value: token + extraEnvFrom: + - secretRef: + name: protobuf-git-auth + config: + serde: + protobuf: + enabled: true + mappings: + - topicName: + valueProtoType: + git: + enabled: true + repository: + url: https://github.com//.git + branch: + refreshInterval: 10m + paths: + - ./ + basicAuth: + enabled: true ---- Helm:: @@ -695,30 +686,29 @@ Operator:: [,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - extraVolumeMounts: - - name: git-ssh - mountPath: /etc/git-ssh - readOnly: true - extraVolumes: - - name: git-ssh - secret: - secretName: protobuf-git-ssh - extraEnv: - - name: SERDE_PROTOBUF_GIT_SSH_ENABLED - value: "true" - - name: SERDE_PROTOBUF_GIT_SSH_USERNAME - value: git - - name: SERDE_PROTOBUF_GIT_SSH_PRIVATEKEYFILEPATH - value: /etc/git-ssh/privateKey - - name: SERDE_PROTOBUF_GIT_SSH_PASSPHRASE - value: + clusterRef: + name: redpanda + extraVolumeMounts: + - name: git-ssh + mountPath: /etc/git-ssh + readOnly: true + extraVolumes: + - name: git-ssh + secret: + secretName: protobuf-git-ssh + extraEnv: + - name: SERDE_PROTOBUF_GIT_SSH_ENABLED + value: "true" + - name: SERDE_PROTOBUF_GIT_SSH_USERNAME + value: git + - name: SERDE_PROTOBUF_GIT_SSH_PRIVATEKEYFILEPATH + value: /etc/git-ssh/privateKey + - name: SERDE_PROTOBUF_GIT_SSH_PASSPHRASE + value: ---- Helm:: @@ -849,7 +839,6 @@ serde: Kubernetes embedded:: + -- -When using the Redpanda Operator or the Redpanda Helm chart, configure MessagePack deserialization through the cluster configuration: [tabs] ==== @@ -858,19 +847,18 @@ Operator:: [,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - serde: - messagePack: - enabled: true - topicNames: ["/.*/"] + clusterRef: + name: redpanda + config: + serde: + messagePack: + enabled: true + topicNames: + - "/.*/" ---- Helm:: diff --git a/modules/console/pages/config/enterprise-license.adoc b/modules/console/pages/config/enterprise-license.adoc index 991c8e27db..c2832398b2 100644 --- a/modules/console/pages/config/enterprise-license.adoc +++ b/modules/console/pages/config/enterprise-license.adoc @@ -2,7 +2,6 @@ :description: Learn how to apply or update a license key to Redpanda Console. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/enterprise-license.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] To enable xref:get-started:licensing/overview.adoc#console[enterprise features for Redpanda Console], you must have an Enterprise Edition license to load at startup. This guide explains how to configure Redpanda Console to load the license key from its local configuration. diff --git a/modules/console/pages/config/http-path-rewrites.adoc b/modules/console/pages/config/http-path-rewrites.adoc index 1c56c87d02..0b4a11cd13 100644 --- a/modules/console/pages/config/http-path-rewrites.adoc +++ b/modules/console/pages/config/http-path-rewrites.adoc @@ -3,7 +3,6 @@ :page-aliases: console:features/http-path-rewrites.adoc, manage:console/http-path-rewrites.adoc :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/http-path-rewrites.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] If you want to host Redpanda Console under a subpath rather than the root path, you need to configure HTTP path rewrites. This allows you to serve Redpanda Console under a subpath of your domain, such as `+https://my-company.com/redpanda/console+`, instead of directly from `+https://my-company.com+`. This type of configuration is often necessary when: @@ -128,18 +127,16 @@ Operator:: + ```yaml apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - console: - config: - server: - setBasePathFromXForwardedPrefix: true - stripPrefix: true + clusterRef: + name: redpanda + config: + server: + setBasePathFromXForwardedPrefix: true + stripPrefix: true ``` Helm:: diff --git a/modules/console/pages/config/kafka-connect.adoc b/modules/console/pages/config/kafka-connect.adoc index df5818cd53..4a0f71a836 100644 --- a/modules/console/pages/config/kafka-connect.adoc +++ b/modules/console/pages/config/kafka-connect.adoc @@ -5,7 +5,6 @@ include::shared:partial$community-supported-kc.adoc[] -include::console:partial$operator-console-version-note.adoc[] Redpanda Console provides a user interface that lets you manage multiple Kafka Connect clusters. You can inspect or patch connectors; restart, pause, and resume connector tasks; and delete connectors. @@ -58,30 +57,28 @@ When Redpanda Console is part of the Redpanda Helm chart or Operator: Operator:: + [,yaml] -.`redpanda-cluster`.yaml +.`redpanda-console`.yaml ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: + clusterRef: + name: redpanda + config: + kafkaConnect: enabled: true - console: - config: - kafkaConnect: - enabled: true - clusters: - - name: datawarehouse # Required field, will be used as identifier in the frontend - url: http://dwh-connect.mycompany.com:8083 - tls: - enabled: false # Trusted certs are still allowed by default - username: admin - # password: - - name: analytics # Required field, will be used as identifier in the frontend - url: http://analytics.mycompany.com:8083 - # No auth configured on that cluster, hence no username/password set + clusters: + - name: datawarehouse + url: http://dwh-connect.mycompany.com:8083 + tls: + enabled: false + username: admin + # password: (add if needed) + - name: analytics + url: http://analytics.mycompany.com:8083 + # No auth configured on this cluster ---- Helm:: diff --git a/modules/console/pages/config/security/authentication.adoc b/modules/console/pages/config/security/authentication.adoc index d3a22e82e6..0458291472 100644 --- a/modules/console/pages/config/security/authentication.adoc +++ b/modules/console/pages/config/security/authentication.adoc @@ -4,7 +4,6 @@ :page-categories: Security, Management, Redpanda Console :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/security/authentication.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // ========================AUTOMATED TESTS=================================== diff --git a/modules/console/pages/config/security/authorization.adoc b/modules/console/pages/config/security/authorization.adoc index 2e1a992cc8..8f17fe1a2d 100644 --- a/modules/console/pages/config/security/authorization.adoc +++ b/modules/console/pages/config/security/authorization.adoc @@ -4,7 +4,6 @@ :page-categories: Security, Management, Redpanda Console :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/security/authorization.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] [NOTE] ==== diff --git a/modules/console/pages/config/security/index.adoc b/modules/console/pages/config/security/index.adoc index 050c4efc13..0071a5d8a7 100644 --- a/modules/console/pages/config/security/index.adoc +++ b/modules/console/pages/config/security/index.adoc @@ -4,4 +4,3 @@ :page-layout: index :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/security/index.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] diff --git a/modules/console/pages/config/security/tls-termination.adoc b/modules/console/pages/config/security/tls-termination.adoc index c37d2d7a65..553404adf1 100644 --- a/modules/console/pages/config/security/tls-termination.adoc +++ b/modules/console/pages/config/security/tls-termination.adoc @@ -5,7 +5,6 @@ :page-exclude-related-labs: true :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/security/tls-termination.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] To secure Redpanda Console using TLS (Transport Layer Security), you can either let Redpanda Console handle TLS termination or you can offload it to an upstream component, such as a reverse proxy or a cloud HTTPS load balancer. TLS termination refers to the process of decrypting incoming TLS-encrypted traffic. Choosing the right approach depends on various factors, such as your application's traffic load, the complexity of your infrastructure, security requirements, and resource availability: diff --git a/modules/console/pages/config/topic-documentation.adoc b/modules/console/pages/config/topic-documentation.adoc index ca221fe568..f292de40fe 100644 --- a/modules/console/pages/config/topic-documentation.adoc +++ b/modules/console/pages/config/topic-documentation.adoc @@ -3,7 +3,6 @@ :page-aliases: console:features/topic-documentation.adoc, manage:console/topic-documentation.adoc :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:config/topic-documentation.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] You can embed topic documentation into the Redpanda Console user interface by providing access to a public or private Git repository that hosts the documentation files in Markdown format. @@ -68,23 +67,21 @@ Operator:: [source,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: + clusterRef: + name: redpanda + config: console: - enabled: true - console: - config: - console: - topicDocumentation: - git: - enabled: true - repository: - url: https://github.com//.git - branch: - baseDirectory: + topicDocumentation: + git: + enabled: true + repository: + url: https://github.com//.git + branch: + baseDirectory: ---- Helm:: @@ -214,32 +211,30 @@ Operator:: [source,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: + clusterRef: + name: redpanda + extraEnv: + - name: TOPICDOCUMENTATION_GIT_BASICAUTH_USERNAME + value: token + extraEnvFrom: + - secretRef: + name: topic-doc-git-auth + config: console: - enabled: true - extraEnv: - - name: TOPICDOCUMENTATION_GIT_BASICAUTH_USERNAME - value: token - extraEnvFrom: - - secretRef: - name: topic-doc-git-auth - console: - config: - console: - topicDocumentation: - git: - enabled: true - repository: - url: https://github.com//.git - branch: - baseDirectory: - refreshInterval: 10m - basicAuth: - enabled: true + topicDocumentation: + git: + enabled: true + repository: + url: https://github.com//.git + branch: + baseDirectory: + refreshInterval: 10m + basicAuth: + enabled: true ---- Helm:: @@ -385,30 +380,29 @@ Operator:: [source,yaml] ---- apiVersion: cluster.redpanda.com/v1alpha2 -kind: Redpanda +kind: Console metadata: - name: redpanda + name: redpanda-console spec: - clusterSpec: - console: - enabled: true - extraVolumeMounts: - - name: git-ssh - mountPath: /etc/git-ssh - readOnly: true - extraVolumes: - - name: git-ssh - secret: - secretName: topic-doc-git-ssh - extraEnv: - - name: TOPICDOCUMENTATION_GIT_SSH_ENABLED - value: "true" - - name: TOPICDOCUMENTATION_GIT_SSH_USERNAME - value: git - - name: TOPICDOCUMENTATION_GIT_SSH_PRIVATEKEYFILEPATH - value: /etc/git-ssh/privateKey - - name: TOPICDOCUMENTATION_GIT_SSH_PASSPHRASE - value: + clusterRef: + name: redpanda + extraVolumeMounts: + - name: git-ssh + mountPath: /etc/git-ssh + readOnly: true + extraVolumes: + - name: git-ssh + secret: + secretName: topic-doc-git-ssh + extraEnv: + - name: TOPICDOCUMENTATION_GIT_SSH_ENABLED + value: "true" + - name: TOPICDOCUMENTATION_GIT_SSH_USERNAME + value: git + - name: TOPICDOCUMENTATION_GIT_SSH_PRIVATEKEYFILEPATH + value: /etc/git-ssh/privateKey + - name: TOPICDOCUMENTATION_GIT_SSH_PASSPHRASE + value: ---- Helm:: diff --git a/modules/console/pages/index.adoc b/modules/console/pages/index.adoc index ea0157211c..e2d3f557df 100644 --- a/modules/console/pages/index.adoc +++ b/modules/console/pages/index.adoc @@ -3,7 +3,6 @@ :page-aliases: console:index/index.adoc, console:features/index.adoc, reference:console/index.adoc :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:index.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] Redpanda Console is a web interface for managing and interacting with Redpanda clusters. Built to provide a seamless experience for developers working with streaming data, Redpanda Console simplifies tasks associated with managing data streams, offering a UI that helps you monitor, troubleshoot, and optimize your streaming workloads. diff --git a/modules/console/pages/ui/add-license.adoc b/modules/console/pages/ui/add-license.adoc index 2cd81d6ace..2800d5787a 100644 --- a/modules/console/pages/ui/add-license.adoc +++ b/modules/console/pages/ui/add-license.adoc @@ -2,7 +2,6 @@ :description: Learn how to manage Enterprise Edition licenses in Redpanda Console. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/add-license.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] You can add or update an xref:get-started:licensing/overview.adoc#console[Enterprise Edition license] for both Redpanda and Redpanda Console directly through the Redpanda Console UI. diff --git a/modules/console/pages/ui/check-license.adoc b/modules/console/pages/ui/check-license.adoc index 87ca35e215..a715f5e5d3 100644 --- a/modules/console/pages/ui/check-license.adoc +++ b/modules/console/pages/ui/check-license.adoc @@ -2,7 +2,6 @@ :description: Learn how to check the status of your Redpanda Enterprise Edition license using the Redpanda Console. This topic includes steps to check license details and understand license warnings. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/check-license.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] You can check the expiration date of a license on the **Cluster Overview** page in Redpanda Console, under the **Licensing** section. diff --git a/modules/console/pages/ui/data-transforms.adoc b/modules/console/pages/ui/data-transforms.adoc index f101390f8a..727ebd05ea 100644 --- a/modules/console/pages/ui/data-transforms.adoc +++ b/modules/console/pages/ui/data-transforms.adoc @@ -2,7 +2,6 @@ :description: Use {ui} to monitor the status and performance metrics of your transform functions. You can also view detailed logs and delete transform functions when they are no longer needed. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/data-transforms.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // tag::single-source[] diff --git a/modules/console/pages/ui/edit-topic-configuration.adoc b/modules/console/pages/ui/edit-topic-configuration.adoc index 55fd8dcf97..75dcd24042 100644 --- a/modules/console/pages/ui/edit-topic-configuration.adoc +++ b/modules/console/pages/ui/edit-topic-configuration.adoc @@ -3,7 +3,6 @@ :description: Learn how to use {ui} to edit the configuration of existing topics in a cluster. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/edit-topic-configuration.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // tag::single-source[] diff --git a/modules/console/pages/ui/generate-bundle.adoc b/modules/console/pages/ui/generate-bundle.adoc index 38f2955040..902dfd7ccf 100644 --- a/modules/console/pages/ui/generate-bundle.adoc +++ b/modules/console/pages/ui/generate-bundle.adoc @@ -2,7 +2,6 @@ :description: Learn how to generate, download, and delete debug bundles in Redpanda Console for comprehensive cluster diagnostics. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/generate-bundle.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] [NOTE] ==== diff --git a/modules/console/pages/ui/programmable-push-filters.adoc b/modules/console/pages/ui/programmable-push-filters.adoc index 00601bc060..a003448197 100644 --- a/modules/console/pages/ui/programmable-push-filters.adoc +++ b/modules/console/pages/ui/programmable-push-filters.adoc @@ -4,7 +4,6 @@ :description: Learn how to filter Kafka records using custom JavaScript code within {ui}. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/programmable-push-filters.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // tag::single-source[] diff --git a/modules/console/pages/ui/record-deserialization.adoc b/modules/console/pages/ui/record-deserialization.adoc index a957fdd856..30431c1a39 100644 --- a/modules/console/pages/ui/record-deserialization.adoc +++ b/modules/console/pages/ui/record-deserialization.adoc @@ -3,7 +3,6 @@ :description: Learn how {ui} deserializes messages. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/record-deserialization.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // tag::single-source[] diff --git a/modules/console/pages/ui/schema-reg.adoc b/modules/console/pages/ui/schema-reg.adoc index a99e24811d..c20caed43a 100644 --- a/modules/console/pages/ui/schema-reg.adoc +++ b/modules/console/pages/ui/schema-reg.adoc @@ -4,7 +4,6 @@ :description: Learn how to perform common Schema Registry management operations in the {ui}. :page-context-switcher: [{"name": "Redpanda Console v2.x", "to": "24.3@ROOT:console:ui/schema-reg.adoc" },{"name": "Redpanda Console v3.x", "to": "current" } ] -include::console:partial$operator-console-version-note.adoc[] // tag::single-source[] diff --git a/modules/console/partials/operator-console-version-note.adoc b/modules/console/partials/operator-console-version-note.adoc deleted file mode 100644 index 89fa53afd3..0000000000 --- a/modules/console/partials/operator-console-version-note.adoc +++ /dev/null @@ -1,21 +0,0 @@ -.The Redpanda Operator deploys Redpanda Console v2.x, not v3.x. -[%collapsible] -==== -Redpanda Console v3 is **not yet available when deploying with the Redpanda Operator**. The Redpanda Operator continues to deploy Redpanda Console v2. To try Redpanda Console v3 in Kubernetes, you can xref:deploy:redpanda/kubernetes/k-production-deployment.adoc[deploy Redpanda using the Redpanda Helm chart] instead of the Redpanda Operator. - -Redpanda Console configuration syntax varies by major version. Before configuring, determine which version you're using: - -[source,shell] ----- -# Check console version from deployment -kubectl get deployment -n redpanda-console -o jsonpath='{.spec.template.spec.containers[0].image}' - -# Or check from running pod -kubectl get pod -n -l app.kubernetes.io/name=console -o jsonpath='{.items[0].spec.containers[0].image}' - -# Or check from console logs -kubectl logs -n -l app.kubernetes.io/name=console | grep "started Redpanda Console" ----- - -If you see output like `redpandadata/console:v2.8.0`, you're using Redpanda Console v2.x. If you see `redpandadata/console:v3.0.0`, you're using Redpanda Console v3.x. -==== diff --git a/modules/get-started/pages/release-notes/operator.adoc b/modules/get-started/pages/release-notes/operator.adoc index 83d5734b1b..f3fc47de64 100644 --- a/modules/get-started/pages/release-notes/operator.adoc +++ b/modules/get-started/pages/release-notes/operator.adoc @@ -9,7 +9,6 @@ See also: * xref:upgrade:k-compatibility.adoc[] * xref:upgrade:k-rolling-upgrade.adoc[] -NOTE: Redpanda Console v3 is **not yet available when deploying with the Redpanda Operator**. The Redpanda Operator continues to deploy Redpanda Console v2. To try Redpanda Console v3, you can deploy the link:https://artifacthub.io/packages/helm/redpanda-data/console[standalone Redpanda Console Helm chart^] or xref:deploy:deployment-option/self-hosted/kubernetes/k-production-deployment.adoc[deploy Redpanda using the Redpanda Helm chart] instead of the Redpanda Operator. == Redpanda Operator v25.2.x @@ -48,19 +47,44 @@ Important RBAC considerations for v25.2+: Redpanda Operator v25.2.x now includes a RedpandaRole custom resource. The RedpandaRole resource allows you to declaratively manage Redpanda roles and permissions in Kubernetes, making it easier to control access and automate security policies for your Redpanda clusters. See the xref:manage:kubernetes/security/authorization/k-redpanda-role.adoc[RedpandaRole documentation] for details. +=== Redpanda Console v3 support (Console CRD) + +Redpanda Operator v25.2.x introduces support for Redpanda Console v3 through the new Console resource. This allows you to deploy and manage Redpanda Console v3 instances directly from the Redpanda Operator. + +Existing deployments that use the `console` stanza in the Redpanda resource will be automatically migrated to the Console resource. The migration happens automatically when you upgrade to v25.2.x. + +If you manage your resources in version control, you should: + +. Fetch and commit the migrated Console CR after the migration completes. +. Remove the `console` stanza from your Redpanda resource after the Console CR is committed to avoid configuration conflicts. Removing the stanza will not affect the migrated Console CR. + +The Redpanda Operator handles the migration process from version 2 of Redpanda Console to version 3. If any configurations cannot be migrated, the Redpanda Operator displays warnings in the `warnings` field of the Console resource. If you need to manually migrate any configurations, refer to the xref:migrate:console-v3.adoc[migration guide]. + +All configuration and management of Redpanda Console should be done through the Console CR. See xref:console:config/configure-console.adoc[]. + == Redpanda Operator v25.1.x (GA) link:https://github.com/redpanda-data/redpanda-operator/blob/release/v25.1.x/operator/CHANGELOG.md[Changelog^] +NOTE: Redpanda Console v3 is **not available in Redpanda Operator v25.1.x**. This version continues to deploy Redpanda Console v2. Redpanda Console v3 support is introduced in v25.2.x. To use Redpanda Console v3 with v25.1.x, you can deploy the link:https://artifacthub.io/packages/helm/redpanda-data/console[standalone Redpanda Console Helm chart^] or xref:deploy:deployment-option/self-hosted/kubernetes/k-production-deployment.adoc[deploy Redpanda using the Redpanda Helm chart] instead of the Redpanda Operator. + === Multiple Operator instances (deprecated) Support for deploying multiple instances of the Redpanda Operator in a single Kubernetes cluster is **deprecated** starting in Redpanda Operator v25.1.x. This feature will be removed in v25.2.x. If you currently run multiple Operator instances, plan to migrate to a single Operator instance per Kubernetes cluster before upgrading to v25.2.x. -=== Flux removed +=== Flux removed and chartRef deprecated + +This release removes Flux and its CRDs. The Redpanda Operator now manages all resources and bundles Helm charts internally. + +**Deprecated fields:** + +- `chartRef.chartVersion`: No longer supported. The operator automatically selects the appropriate Helm chart version based on the Redpanda version specified in `clusterSpec.image.tag`. +- `chartRef.useFlux`: Still available for backwards compatibility but *must* be set to `false` (or removed entirely). +- All other `chartRef` fields are deprecated and no longer used. -This release removes Flux and its CRDs. The Redpanda Operator now manages all resources. The `chartRef.useFlux` configuration is still available for backwards compatibility but *must* be set to `false`. +The operator will log errors and abort reconciliation if deprecated `chartRef` fields are set. Remove these fields from your Redpanda resources before upgrading to v25.1.x or later. === Schema validation diff --git a/modules/migrate/pages/console-v3.adoc b/modules/migrate/pages/console-v3.adoc index 1568dd4d45..df23b8972b 100644 --- a/modules/migrate/pages/console-v3.adoc +++ b/modules/migrate/pages/console-v3.adoc @@ -338,7 +338,7 @@ connect: ---- .V3 serde and Kafka Connect -[source,yaml,role="no-wrap"] +[,yaml,role="no-wrap"] ---- serde: maxDeserializationPayloadSize: 20480 @@ -362,6 +362,19 @@ After updating your configuration, verify that: - Users can log in using the new authentication settings. - API calls to Kafka, Schema Registry, and the Admin API are authenticated correctly. +=== Check migration warnings in Kubernetes + +If you're deploying Redpanda Console using the Redpanda Operator, the Console custom resource includes a `warnings` field that reports any v2 configuration settings that could not be automatically migrated to v3. + +To check for migration warnings: + +[,bash] +---- +kubectl get console -n -o jsonpath='{.spec.warnings}' +---- + +If warnings are present, they describe which fields from your v2 configuration require manual intervention. Review these warnings and update your Console configuration accordingly. For details on the `warnings` field, see xref:reference:k-crd.adoc#k8s-api-github-com-redpanda-data-redpanda-operator-operator-api-redpanda-v1alpha2-consolespec[ConsoleSpec]. + [[migrator]] == Redpanda Console migration tool diff --git a/modules/migrate/pages/kubernetes/helm-to-operator.adoc b/modules/migrate/pages/kubernetes/helm-to-operator.adoc index e3a46521ed..f12188186f 100644 --- a/modules/migrate/pages/kubernetes/helm-to-operator.adoc +++ b/modules/migrate/pages/kubernetes/helm-to-operator.adoc @@ -16,14 +16,13 @@ kind: Redpanda metadata: name: spec: - chartRef: - chartVersion: clusterSpec: + image: + tag: ``` - `metadata.name`: Name to assign the Redpanda cluster. This name is also assigned to the Helm release. -- xref:reference:k-crd.adoc#chartref[`spec.chartRef`]: Information about the Helm chart that will be used to deploy Redpanda. -- xref:reference:k-crd.adoc#chartversion[`spec.chartRef.chartversion`]: The version of the Helm chart values that the Redpanda CRD is compatible with. +- `spec.clusterSpec.image.tag`: The version of Redpanda to deploy (for example, `v25.2.1`). Starting from operator v25.1.1, the operator bundles Helm charts internally and automatically selects the appropriate chart version. - xref:reference:k-crd.adoc#redpandaclusterspec[`spec.clusterSpec`]: This is where you can configure the Redpanda CRD with your values overrides from the Redpanda Helm chart. == Supported migration paths @@ -118,24 +117,24 @@ metadata: creationTimestamp: null name: <1> spec: - chartRef: - chartVersion: <2> clusterSpec: + image: + tag: <2> <3> ---- + -- <1> Replace with your Helm release name. -<2> Replace with your chart version. +<2> Specify the Redpanda version to deploy (for example, `v25.2.1`). The operator automatically uses the appropriate Helm chart version for the specified Redpanda version. + [NOTE] ==== -- Choose a `chartVersion` that the current Operator's CRDs support. For example, 5.9.x or 5.10.x if you're using Operator v2.4.x. See xref:upgrade:k-compatibility.adoc[]. -- If your existing Helm deployment is on version 5.8.x or below, you must first upgrade the chart using Helm before creating the Redpanda resource. +- Starting from operator v25.1.1, the `chartRef` fields (including `chartRef.chartVersion`) are deprecated. The operator bundles Helm charts internally. +- If your existing Helm deployment is on an older version, verify compatibility in xref:upgrade:k-compatibility.adoc[] before migrating. ==== <3> Replace with your chart overrides. + -TIP: The Redpanda CRD is compatible with the version of the Helm chart defined in the operator. For details on the structure and configuration options of the Redpanda custom resource, refer to the xref:reference:k-crd.adoc#redpandaclusterspec[Redpanda Operator CRD reference]. +TIP: For details on the structure and configuration options of the Redpanda custom resource, refer to the xref:reference:k-crd.adoc#redpandaclusterspec[Redpanda Operator CRD reference]. -- . Adopt the Redpanda cluster by creating an instance of the Redpanda custom resource: diff --git a/modules/reference/pages/k-crd.adoc b/modules/reference/pages/k-crd.adoc index 9e576efde3..ca0197100b 100644 --- a/modules/reference/pages/k-crd.adoc +++ b/modules/reference/pages/k-crd.adoc @@ -781,9 +781,15 @@ ConsoleCreateObj represents configuration options for creating Kubernetes object | *`licenseSecretRef`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#secretkeyselector-v1-core[$$SecretKeySelector$$]__ | | *`livenessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#probe-v1-core[$$Probe$$]__ | | *`readinessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#probe-v1-core[$$Probe$$]__ | -| *`deployment`* __xref:{anchor_prefix}-github-com-redpanda-data-redpanda-operator-operator-api-redpanda-v1alpha2-deploymentconfig[$$DeploymentConfig$$]__ | -| *`strategy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#deploymentstrategy-v1-apps[$$DeploymentStrategy$$]__ | -| *`cluster`* __xref:{anchor_prefix}-github-com-redpanda-data-redpanda-operator-operator-api-redpanda-v1alpha2-clustersource[$$ClusterSource$$]__ | +| *`deployment`* __xref:{anchor_prefix}-github-com-redpanda-data-redpanda-operator-operator-api-redpanda-v1alpha2-deploymentconfig[$$DeploymentConfig$$]__ | +| *`strategy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#deploymentstrategy-v1-apps[$$DeploymentStrategy$$]__ | +| *`cluster`* __xref:{anchor_prefix}-github-com-redpanda-data-redpanda-operator-operator-api-redpanda-v1alpha2-clustersource[$$ClusterSource$$]__ | +| *`warnings`* __string array__ | Human-readable warnings generated by the automatic migration of a Redpanda Console v2 configuration to v3. + + + +If warnings are present, they describe which fields from the original v2 configuration could not be automatically migrated and require manual intervention. These warnings help identify configuration elements that need your attention during the upgrade process. + + + +This is a read-only field. Setting this field has no effect. + +For information about migrating from Console v2 to v3, see xref:migrate:console-v3.adoc[]. + |=== diff --git a/modules/upgrade/pages/k-compatibility.adoc b/modules/upgrade/pages/k-compatibility.adoc index 5807fe0799..7411bf8d7f 100644 --- a/modules/upgrade/pages/k-compatibility.adoc +++ b/modules/upgrade/pages/k-compatibility.adoc @@ -46,8 +46,8 @@ Redpanda Core has no direct dependency on Kubernetes. Compatibility is influence d|1.30.x - 1.33.x{fn-k8s-compatibility} |25.1.x -|25.2-beta1, 25.1.x -|25.2-beta1, 25.1.x +|25.1.x +|25.1.x |3.12+ d|1.28.x - 1.33.x{fn-k8s-compatibility} diff --git a/modules/upgrade/pages/k-rolling-upgrade.adoc b/modules/upgrade/pages/k-rolling-upgrade.adoc index 9a04ce8540..9c9c6cc5c3 100644 --- a/modules/upgrade/pages/k-rolling-upgrade.adoc +++ b/modules/upgrade/pages/k-rolling-upgrade.adoc @@ -98,9 +98,12 @@ Under-replicated partitions: [] <3> [[upgrade]] == Perform a rolling upgrade -Performing a rolling upgrade allows you to update the version of Redpanda managed by the Redpanda Helm chart without downtime. This process ensures that each broker is sequentially updated and restarted, minimizing the impact on your environment. +Performing a rolling upgrade allows you to update the version of Redpanda without downtime. This process ensures that each broker is sequentially updated and restarted, minimizing the impact on your environment. -You can use two methods to upgrade a Redpanda cluster in Kubernetes. The first method is to upgrade the Helm release to a newer version of the Redpanda Helm chart that uses the desired Redpanda version as a default. The second method is to update the existing Helm release to use a newer Redpanda image. The first method is preferred because upgrading the entire chart ensures that any new parameters required to configure the cluster are defined. +The upgrade process depends on your deployment method: + +- **Redpanda Operator**: Update the Redpanda custom resource to specify a new Helm chart version or Redpanda image tag. The operator manages the upgrade process. +- **Helm**: Either upgrade to a newer version of the Redpanda Helm chart (recommended) or update the Redpanda image tag in your existing Helm release. Upgrading the chart is preferred because it ensures that any new configuration parameters are included. Upgrading a Redpanda cluster in Kubernetes triggers a sequential restart of the Pods managed by the StatefulSet. During each broker's restart, the following steps occur: @@ -114,18 +117,50 @@ Operator:: + -- -. xref:upgrade:k-compatibility.adoc[Review the Kubernetes compatibility matrix] and determine the version of the Redpanda Operator that is compatible with the Helm chart version you plan to use. The Redpanda Operator must be able to understand and manage the Helm chart and the Redpanda version you are deploying. If you need to upgrade, see xref:upgrade:k-upgrade-operator.adoc[]. +. xref:upgrade:k-compatibility.adoc[Review the Kubernetes compatibility matrix] and https://github.com/redpanda-data/redpanda-operator/releases[review the Redpanda Operator release notes^] to determine the version of the Redpanda Operator that is compatible with the Helm chart and Redpanda version you plan to use. ++ +The Redpanda Operator and Helm chart follow the same versioning scheme as Redpanda core (for example, operator version 25.1.1 deploys Redpanda 25.1 by default). Each operator version supports the corresponding Redpanda version ±1 minor version. -. Check the default Redpanda version of a chart to make sure that it uses the version that you want to upgrade your cluster to. +. If you need to upgrade the Redpanda Operator: ++ +.. Back up your current Helm values for the Redpanda Operator: + [source,bash] ---- -helm show chart --version redpanda/redpanda | grep "appVersion" +helm get values redpanda-controller --namespace > redpanda-operator-values-backup.yaml ---- + +.. Upgrade the Redpanda Operator to a version compatible with your target Redpanda version: + -Replace `` with the version number of a newer chart. +[source,bash] +---- +helm repo add redpanda https://charts.redpanda.com +helm repo update +helm upgrade redpanda-controller redpanda/operator \ + --namespace \ + --version \ + --set crds.enabled=true +---- ++ +Replace `` with the version of the Redpanda Operator you want to upgrade to. -. Upgrade the Redpanda version by either updating the Helm chart version or the Redpanda image. +.. Verify that the operator deployment is successfully rolled out: ++ +[source,bash] +---- +kubectl --namespace rollout status --watch deployment/redpanda-controller-operator +---- ++ +.Expected output +[%collapsible] +==== +[.no-copy] +---- +deployment "redpanda-controller-operator" successfully rolled out +---- +==== + +. Upgrade the Redpanda cluster by updating the Redpanda image tag in your Redpanda resource: + .`redpanda-cluster.yaml` [source,yaml] @@ -135,20 +170,16 @@ kind: Redpanda metadata: name: redpanda spec: - chartRef: - chartVersion: <1> clusterSpec: image: - # Optional - tag: <2> + tag: <1> statefulset: # Optional - terminationGracePeriodSeconds: <3> + terminationGracePeriodSeconds: <2> ---- + -<1> The version of the Redpanda Helm chart to deploy. -<2> If you need to upgrade to an intermediate version of Redpanda, use this setting to specify the version of Redpanda to deploy. This version overrides the default one in the Helm chart. Replace `` with a valid version tag. -<3> The xref:reference:k-redpanda-helm-spec.adoc#statefulsetterminationgraceperiodseconds[`statefulset.terminationGracePeriodSeconds`] setting defines how long Kubernetes will wait for the broker to shut down gracefully before forcefully terminating it. The default value is 90 seconds, which is enough for most clusters, but might require adjustment based on your workload. Modify this setting in your Helm values file if your Redpanda brokers have high loads or hold large amounts of data, as they might need more time to shut down gracefully. +<1> The version of Redpanda to deploy (for example, `v25.2.1`). The operator automatically uses the appropriate Helm chart version for the specified Redpanda version. +<2> The xref:reference:k-redpanda-helm-spec.adoc#statefulsetterminationgraceperiodseconds[`statefulset.terminationGracePeriodSeconds`] setting defines how long Kubernetes will wait for the broker to shut down gracefully before forcefully terminating it. The default value is 90 seconds, which is enough for most clusters, but might require adjustment based on your workload. Modify this setting if your Redpanda brokers have high loads or hold large amounts of data, as they might need more time to shut down gracefully. . Apply the Redpanda resource to deploy the Redpanda cluster: + @@ -249,6 +280,17 @@ kubectl exec --namespace -c redpanda -- \ rpk redpanda admin brokers list ``` +. If you upgraded from operator v25.1.x to v25.2.x or later, check for Console migration warnings: ++ +When upgrading across this version boundary, Redpanda Console is automatically upgraded from v2 to v3. The operator attempts to migrate your Console configuration automatically. If any configuration settings cannot be migrated, warnings are added to the Console custom resource. ++ +[,bash] +---- +kubectl get console --namespace -o jsonpath='{.spec.warnings}' +---- ++ +If warnings are present, review them and manually update your Console configuration as needed. For details about migrating to Console v3, see xref:migrate:console-v3.adoc[]. + == Roll back If something does not go as planned during a rolling upgrade, you can roll back to the original version as long as you have not upgraded all brokers. diff --git a/modules/upgrade/pages/k-upgrade-operator.adoc b/modules/upgrade/pages/k-upgrade-operator.adoc index 8ff194ac8a..72a9fa41f3 100644 --- a/modules/upgrade/pages/k-upgrade-operator.adoc +++ b/modules/upgrade/pages/k-upgrade-operator.adoc @@ -1,26 +1,29 @@ = Upgrade the Redpanda Operator -:description: Upgrading the Redpanda Operator ensures your deployment benefits from the latest features, fixes, and improvements. Follow these steps carefully to ensure a successful upgrade. -// Unset this attribute so that we don't pre-fill the version in code snippets -:!latest-operator-version: +:description: Upgrading the Redpanda Operator ensures your deployment benefits from the latest features, fixes, and improvements. +:page-aliases: upgrade:k-upgrade-operator.adoc -{description} +Starting from version 25.1.1, the Redpanda Operator follows the same versioning scheme as Redpanda core releases. When you upgrade Redpanda, you typically also upgrade the Redpanda Operator to ensure compatibility. -. Make sure to https://github.com/redpanda-data/redpanda-operator/releases[review the release notes^] to understand any significant changes, bug fixes, or potential disruptions that could affect your existing deployment. +For complete upgrade instructions, including how to upgrade both the Redpanda Operator and your Redpanda cluster, see xref:upgrade:k-rolling-upgrade.adoc[]. -. xref:upgrade:k-compatibility.adoc[Review the Kubernetes compatibility matrix]. +== Operator-only upgrades -. Back up your current Helm values for the Redpanda Operator Helm chart: +In some cases, you might need to upgrade only the Redpanda Operator without upgrading your Redpanda cluster. For example, you might need to apply a patch release that fixes an operator bug. + +To upgrade only the operator: + +. https://github.com/redpanda-data/redpanda-operator/releases[Review the Redpanda Operator release notes^] and xref:upgrade:k-compatibility.adoc[the Kubernetes compatibility matrix]. + +. Back up your current Helm values: + [source,bash] ---- helm get values redpanda-controller --namespace > redpanda-operator-values-backup.yaml ---- -+ -You'll need to apply these overrides in the next step. -. Upgrade the Redpanda Operator. Replace `` with the version of the Redpanda Operator you want to upgrade to. +. Upgrade the Redpanda Operator: + -[,bash,subs="attributes+"] +[source,bash] ---- helm repo add redpanda https://charts.redpanda.com helm repo update @@ -30,26 +33,22 @@ helm upgrade redpanda-controller redpanda/operator \ --set crds.enabled=true ---- + -This command: -+ -- Pins the upgrade to a specific version of Redpanda Operator. -- Ensures the latest CRDs are applied as part of the upgrade. -+ -CAUTION: Omitting custom overrides may result in a broken or partial deployment. +Replace `` with the version of the Redpanda Operator you want to upgrade to. + +CAUTION: Make sure to include any custom overrides from your backup file to prevent a broken or partial deployment. - -. Ensure that the Deployment is successfully rolled out: +. Verify that the deployment is successfully rolled out: + -```bash +[source,bash] +---- kubectl --namespace rollout status --watch deployment/redpanda-controller-operator -``` +---- + +.Expected output +[%collapsible] +==== [.no-copy] ---- deployment "redpanda-controller-operator" successfully rolled out ---- - -== Next steps - -xref:upgrade:k-rolling-upgrade.adoc[] +====