Skip to content

Commit e9b8a48

Browse files
authored
DOC-1229 Document feature: Package Operator CRDs with Operator Helm Chart (#1172)
1 parent 8e1dca8 commit e9b8a48

18 files changed

Lines changed: 166 additions & 425 deletions

File tree

modules/ROOT/nav.adoc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@
6565
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-production-workflow.adoc[Deployment Workflow]
6666
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-requirements.adoc[Requirements and Recommendations]
6767
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-tune-workers.adoc[Tune Worker Nodes]
68-
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-25.1-beta.adoc[Try v25.1]
6968
*** xref:deploy:deployment-option/self-hosted/kubernetes/kubernetes-deploy.adoc[Deploy Redpanda]
7069
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-deploy-connectors.adoc[Deploy Connectors]
7170
*** xref:deploy:deployment-option/self-hosted/kubernetes/k-high-availability.adoc[High Availability]

modules/deploy/pages/deployment-option/self-hosted/kubernetes/aks-guide.adoc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,12 @@ To delete your Kubernetes cluster:
125125
az aks delete --name <cluster-name> --resource-group redpandaResourceGroup
126126
----
127127

128+
To remove the convenience alias created during the quickstart:
129+
130+
```bash
131+
unalias internal-rpk
132+
```
133+
128134
include::deploy:partial$kubernetes/guides/troubleshoot.adoc[leveloffset=+1]
129135

130136
include::deploy:partial$kubernetes/guides/next-steps.adoc[leveloffset=+1]

modules/deploy/pages/deployment-option/self-hosted/kubernetes/eks-guide.adoc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,12 @@ To delete your Kubernetes cluster:
369369
eksctl delete cluster --name <cluster-name>
370370
----
371371

372+
To remove the convenience alias created during the quickstart:
373+
374+
```bash
375+
unalias internal-rpk
376+
```
377+
372378
include::deploy:partial$kubernetes/guides/troubleshoot.adoc[leveloffset=+1]
373379

374380
include::deploy:partial$kubernetes/guides/next-steps.adoc[leveloffset=+1]

modules/deploy/pages/deployment-option/self-hosted/kubernetes/k-25.1-beta.adoc

Lines changed: 0 additions & 185 deletions
This file was deleted.

modules/deploy/pages/deployment-option/self-hosted/kubernetes/k-deployment-overview.adoc

Lines changed: 2 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -50,44 +50,9 @@ TIP: If you are already using the Redpanda Helm chart and want to migrate to the
5050
[[helm-and-redpanda-operator]]
5151
=== Redpanda Operator
5252

53-
The Redpanda Operator is designed for production-grade Redpanda deployments, offering enhanced lifecycle management, automation, and GitOps compatibility. It supports two deployment modes controlled by the `chartRef.useFlux` flag.
53+
The Redpanda Operator is designed for production-grade Redpanda deployments, offering enhanced lifecycle management, automation, and GitOps compatibility.
5454

55-
==== Redpanda-managed mode
56-
57-
(Default: `chartRef.useFlux: false`)
58-
59-
The Redpanda Operator manages and reconciles Redpanda resources directly, without involving Flux. This mode works as follows:
60-
61-
. The Redpanda Operator creates both `HelmRelease` and `HelmRepository` resources but suspends them, keeping Flux inactive.
62-
+
63-
NOTE: Although these resources are created in a suspended state, the Redpanda Operator still requires the Flux CRDs to be installed.
64-
. The Redpanda Operator directly reconciles Redpanda resources, performing tasks such as installations, updates, and cleanup, normally handled by Flux.
65-
. If `useFlux` is later re-enabled, the Redpanda Operator unsuspends the Flux resources, and Flux resumes lifecycle management.
66-
67-
==== Flux-managed mode
68-
69-
(Enabled with `chartRef.useFlux: true`)
70-
71-
The Redpanda Operator delegates reconciliation to https://fluxcd.io/flux/concepts/[Flux^] controllers. The workflow is as follows:
72-
73-
. The Redpanda Operator defines the necessary CRDs for Redpanda. A Redpanda resource represents a Redpanda cluster, configured through the Redpanda Helm chart values.
74-
. When the Redpanda Operator detects changes to Redpanda resources, it triggers Flux to reconcile the corresponding HelmRelease resource.
75-
. Flux uses the HelmRelease resource to manage the lifecycle of the Redpanda Helm chart, applying updates as needed.
76-
77-
Example configuration to specify the deployment mode in Redpanda's custom resource:
78-
79-
[,yaml]
80-
----
81-
apiVersion: cluster.redpanda.com/v1alpha2
82-
kind: Redpanda
83-
metadata:
84-
name: redpanda
85-
spec:
86-
chartRef:
87-
useFlux: false
88-
----
89-
90-
image::shared:operator-flux-relationship.png[CRDs for the Redpanda Operator include Flux CRDs. If you are running in Flux-managed mode, Flux manages the Redpanda Helm chart through the HelmRelease resource.]
55+
The Redpanda Operator directly reconciles Redpanda resources, performing tasks such as installations, updates, and cleanup.
9156

9257
=== Helm
9358

modules/deploy/pages/deployment-option/self-hosted/kubernetes/k-production-deployment.adoc

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -55,22 +55,9 @@ helm install cert-manager jetstack/cert-manager \
5555
+
5656
The Redpanda Helm chart enables TLS by default and uses cert-manager to manage TLS certificates.
5757
58-
. Install the Redpanda Operator CRDs:
59-
+
60-
include::deploy:partial$kubernetes/install-crds.adoc[]
61-
6258
. Deploy the Redpanda Operator.
6359
+
64-
[,bash,subs="attributes+"]
65-
----
66-
helm repo add redpanda https://charts.redpanda.com
67-
helm upgrade --install redpanda-controller redpanda/operator \
68-
--namespace <namespace> \
69-
--create-namespace \
70-
--version {latest-operator-version} \ <1>
71-
----
72-
+
73-
<1> This flag specifies the exact version of the Redpanda Operator Helm chart to use for deployment. By setting this value, you pin the chart to a specific version, which prevents automatic updates that might introduce breaking changes or new features that have not been tested in your environment.
60+
include::deploy:partial$kubernetes/deploy-operator.adoc[]
7461
7562
. Ensure that the Deployment is successfully rolled out:
7663
+

modules/deploy/pages/deployment-option/self-hosted/kubernetes/local-guide.adoc

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -149,23 +149,9 @@ helm install cert-manager jetstack/cert-manager --set crds.enabled=true --namesp
149149
+
150150
TLS is enabled by default. The Redpanda Helm chart uses cert-manager to manage TLS certificates by default.
151151
152-
. Install the Redpanda Operator custom resource definitions (CRDs):
153-
+
154-
include::deploy:partial$kubernetes/install-crds.adoc[]
155-
156152
. Deploy the Redpanda Operator:
157153
+
158-
[,bash,subs="attributes+"]
159-
----
160-
helm repo add redpanda https://charts.redpanda.com
161-
helm repo update redpanda
162-
helm upgrade --install redpanda-controller redpanda/operator \
163-
--namespace <namespace> \
164-
--create-namespace \
165-
--version {latest-operator-version} <1>
166-
----
167-
+
168-
<1> This flag specifies the exact version of the Redpanda Operator Helm chart to use for deployment. By setting this value, you pin the chart to a specific version, which prevents automatic updates that might introduce breaking changes or new features that have not been tested in your environment.
154+
include::deploy:partial$kubernetes/deploy-operator.adoc[]
169155
170156
. Ensure that the Deployment is successfully rolled out:
171157
+
@@ -548,6 +534,11 @@ minikube delete
548534
--
549535
======
550536

537+
To remove the convenience alias created during the quickstart:
538+
539+
```bash
540+
unalias internal-rpk
541+
```
551542

552543
include::deploy:partial$kubernetes/guides/troubleshoot.adoc[leveloffset=+1]
553544

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
ifdef::latest-operator-version[]
2+
[,bash,subs="attributes+"]
3+
----
4+
helm repo add redpanda https://charts.redpanda.com
5+
helm repo update
6+
helm upgrade --install redpanda-controller redpanda/operator \
7+
--namespace <namespace> \
8+
--create-namespace \
9+
--version {latest-operator-version} \ <1>
10+
--set crds.enabled=true <2>
11+
----
12+
+
13+
<1> This flag specifies the exact version of the Redpanda Operator Helm chart to use for deployment. By setting this value, you pin the chart to a specific version, which prevents automatic updates that might introduce breaking changes or new features that have not been tested in your environment.
14+
<2> This flag ensures that the CRDs are installed as part of the Redpanda Operator deployment.
15+
+
16+
:note-caption: Older versions of the Redpanda Operator
17+
+
18+
[NOTE]
19+
========
20+
The `--set crds.enabled=true` flag is only supported in Redpanda Operator **v25.1.1 and later**.
21+
22+
If you deploy an earlier version (such as v2.4.x), you must install the CRDs separately. See the xref:25.1@ROOT:deploy:deployment-option/self-hosted/kubernetes/k-production-deployment.adoc[v2.4.x deployment documentation] for more information.
23+
========
24+
endif::[]
25+
ifndef::latest-operator-version[]
26+
[,bash,subs="attributes+"]
27+
----
28+
helm repo add redpanda https://charts.redpanda.com
29+
helm repo update
30+
helm upgrade --install redpanda-controller redpanda/operator \
31+
--namespace <namespace> \
32+
--create-namespace \
33+
--set crds.enabled=true <1>
34+
----
35+
<1> This flag ensures that the CRDs are installed as part of the Redpanda Operator deployment.
36+
endif::[]

modules/deploy/partials/kubernetes/guides/deploy-redpanda.adoc

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,24 +31,9 @@ helm install cert-manager jetstack/cert-manager \
3131
+
3232
The Redpanda Helm chart uses cert-manager to enable TLS and manage TLS certificates by default.
3333
34-
. Install the Redpanda Operator custom resource definitions (CRDs):
35-
+
36-
include::deploy:partial$kubernetes/install-crds.adoc[]
37-
3834
. Deploy the Redpanda Operator:
3935
+
40-
[,bash,subs="attributes+"]
41-
----
42-
helm repo add redpanda https://charts.redpanda.com
43-
helm repo update
44-
helm upgrade --install redpanda-controller redpanda/operator \
45-
--namespace <namespace> \
46-
--create-namespace \
47-
--timeout 1h \
48-
--version {latest-operator-version} <1>
49-
----
50-
+
51-
<1> This flag specifies the exact version of the Redpanda Operator Helm chart to use for deployment. By setting this value, you pin the chart to a specific version, which prevents automatic updates that might introduce breaking changes or new features that have not been tested in your environment.
36+
include::deploy:partial$kubernetes/deploy-operator.adoc[]
5237
5338
. Ensure that the Deployment is successfully rolled out:
5439
+

0 commit comments

Comments
 (0)