Skip to content

Commit f584c62

Browse files
add migration section
1 parent 1156f4e commit f584c62

File tree

1 file changed

+33
-12
lines changed
  • content/operate/kubernetes/deployment

1 file changed

+33
-12
lines changed

content/operate/kubernetes/deployment/helm.md

Lines changed: 33 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ weight: 11
1212

1313
Helm charts provide a simple way to install the Redis Enterprise for Kubernetes operator in just a few steps. For more information about Helm, go to [https://helm.sh/docs/](https://helm.sh/docs/).
1414

15-
{{<note>}} This feature is currently in public preview and is not supported on production workloads. Only new installations of the Redis operator are supported at this time. The steps for [creating the RedisEnterpriseCluster (REC)]({{<relref "operate/kubernetes/deployment/quick-start#create-a-redis-enterprise-cluster-rec">}}) and other custom resources remain the same.{{</note>}}
16-
1715
## Prerequisites
1816

1917
- A [supported distribution]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) of Kubernetes.
@@ -35,14 +33,14 @@ The steps below use the following placeholders to indicate command line paramete
3533

3634
1. Add the Redis repository.
3735

38-
```sh
39-
helm repo add <repo-name> https://helm.redis.io/
40-
```
36+
```sh
37+
helm repo add <repo-name> https://helm.redis.io/
38+
```
4139

4240
2. Install the Helm chart into a new namespace.
4341

4442
```sh
45-
helm install <release-name> redis/redis-enterprise-operator \
43+
helm install <release-name> <repo-name>/redis-enterprise-operator \
4644
--version <chart-version> \
4745
--namespace <namespace-name> \
4846
--create-namespace
@@ -70,12 +68,12 @@ To monitor the installation add the `--debug` flag. The installation runs severa
7068

7169
### Specify values during install
7270

73-
1. View configurable values with `helm show values <repo-name>/<chart-name>`.
71+
1. View configurable values with `helm show values <repo-name>/redis-enterprise-operator`.
7472

7573
2. Install the Helm chart, overriding specific value defaults using `--set`.
7674

7775
```sh
78-
helm install <operator-name> redis/redis-enterprise-operator \
76+
helm install <operator-name> <repo-name>/redis-enterprise-operator \
7977
--version <release-name> \
8078
--namespace <namespace-name> \
8179
--create-namespace
@@ -85,20 +83,44 @@ helm install <operator-name> redis/redis-enterprise-operator \
8583

8684
### Install with values file
8785

88-
1. View configurable values with `helm show values <repo-name>/<chart-name>`.
86+
1. View configurable values with `helm show values <repo-name>/redis-enterprise-operator`.
8987

9088
2. Create a YAML file to specify the values you want to configure.
9189

9290
3. Install the chart with the `--values` option.
9391

9492
```sh
95-
helm install <operator-name> redis/redis-enterprise-operator \
93+
helm install <operator-name> <repo-name>/redis-enterprise-operator \
9694
--version <release-name> \
9795
--namespace <namespace-name> \
9896
--create-namespace \
9997
--values <path-to-values-file>
10098
```
10199

100+
## Migrate from a non-Helm installation
101+
102+
To migrate an existing non-Helm installation of the Redis Enterprise operator to a Helm-based installation:
103+
104+
1. [Upgrade]({{<relref "operate/kubernetes/upgrade">}}) your existing Redis Enterprise operator to match the version of the Helm chart you want to install. Use the same non-Helm method you used for the original installation.
105+
106+
2. [Install](#install) the Helm chart adding the `--take-ownership` flag:
107+
108+
```sh
109+
helm install <release-name> <path-to-chart> --take-ownership
110+
```
111+
112+
- The `--take-ownership` flag is available with Helm versions 3.18 or later.
113+
- This flag is only needed for the first installation of the chart. Subsequent upgrades don't require this flag.
114+
- Use the `helm install` command, not `helm upgrade`.
115+
116+
3. Delete the old `ValidatingWebhookConfiguration` object from the previous non-Helm installation:
117+
118+
```sh
119+
kubectl delete validatingwebhookconfiguration redis-enterprise-admission
120+
```
121+
122+
This step is only needed when the `admission.limitToNamespace` chart value is set to `true` (the default). In this case, the webhook object installed by the chart is named `redis-enterprise-admission-<namespace>`. If `admission.limitToNamespace` is set to `false`, the webhook installed by the chart is named `redis-enterprise-admission`, and the existing webhook object is reused.
123+
102124
## Upgrade the chart
103125

104126
To upgrade an existing Helm chart installation:
@@ -116,7 +138,7 @@ helm upgrade my-redis-enterprise .
116138
You can also upgrade using the Redis Helm repository:
117139

118140
```sh
119-
helm upgrade <release-name> redis/redis-enterprise-operator --version <chart-version>
141+
helm upgrade <release-name> <repo-name>/redis-enterprise-operator --version <chart-version>
120142
```
121143

122144
To upgrade the chart on **OpenShift**, include the `openshift.mode=true` parameter:
@@ -149,6 +171,5 @@ This removes all Kubernetes resources associated with the chart and deletes the
149171
## Known limitations
150172

151173
- The steps for [creating the RedisEnterpriseCluster (REC)]({{<relref "operate/kubernetes/deployment/quick-start#create-a-redis-enterprise-cluster-rec">}}) and other custom resources remain the same.
152-
- Migrations are not supported.
153174
- The chart doesn't include configuration options for multiple namespaces, rack-awareness, and Vault integration. The steps for configuring these options remain the same.
154175
- The chart has had limited testing in advanced setups, including Active-Active configurations, air-gapped deployments, and IPv6/dual-stack environments.

0 commit comments

Comments
 (0)