Releases: RedisLabs/redis-enterprise-k8s-docs
v6.2.4-1
Overview
The Redis Enterprise K8s v6.2.4-1 release provides support for the Redis Enterprise Software release 6.2.4 and includes several enhancements and bug fixes.
The key new features, bug fixes, and known limitations are described below.
Images
This release includes the following container images:
The following are the images and tags for this release:
Component | k8s | Openshift |
---|---|---|
Redis Enterprise | redislabs/redis:6.2.4-55 |
redislabs/redis:6.2.4-55.rhel7-openshift |
Operator | redislabs/operator:6.2.4-1 |
redislabs/operator:6.2.4-1 |
Services Rigger | redislabs/k8s-controller:6.2.4-1 |
redislabs/k8s-controller:6.2.4-1 |
- RedHat certified images are available on Redhat Catalog
New features
- Internode encryption configuration through K8s custom resources (RED-59699, RED-60318)
Feature improvements
- Support for addition attribute in REDB secret containing comma-separated list of service names (RED-48469)
- Support OpenShift 4.8 (K8s 1.21) (RED-59424)
- Support K8s 1.21 - GKE (RED-59048)
- Support K8s 1.21 - kOps (RED-59047)
- Support K8s 1.19-1.21 - EKS (RED-60287)
- Support K8s 1.19, 1.20 - AKS (RED-59050)
- Support K8s 1.20 - Rancher (RED-59049)
Fixed bugs
- Fixed issue with Redis Enterprise pods not recovering from container fails (RED-53042)
- Fixed rare problem of Redis Enterprise pod restarting too early while statefulSet was rolling out, causing quorum loss (RED-53042)
- Improved Github public documentation around using the admission controller with multiple namespaces (RED-59915)
- Fixed integration issues with HashiCorp Vault enterprise namespaces and custom auth paths (RED-61273)
Known limitations
Hashicorp Vault integration - no support for Gesher (RED-55080)
There is no workaround at this time
Long cluster names cause routes to be rejected (RED-25871)
A cluster name longer than 20 characters will result in a rejected route configuration because the host part of the domain name will exceed 63 characters. The workaround is to limit cluster name to 20 characters or fewer.
Cluster CR (REC) errors are not reported after invalid updates (RED-25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED-32805)
When a cluster is in an unreachable state, the state is still running
instead of being reported as an error.
Readiness probe incorrect on failures (RED-39300)
STS Readiness probe does not mark a node as "not ready" when running rladmin status
on the node fails.
Role missing on replica sets (RED-39002)
The redis-enterprise-operator
role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED-38579)
Openshift 3.11 does not support DockerHub private registries. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED-37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED-37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED-36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED-39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
REC clusters fail to start on Kubernetes clusters with unsynchronized clocks (RED-47254)
When REC clusters are deployed on Kubernetes clusters with unsynchronized clocks, the REC cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Deleting an OpenShift project with a REC deployed may hang (RED-47192)
When a REC cluster is deployed in a project (namespace) and has REDB resources, the
REDB resources must be deleted first before the REC can be deleted. As such, until the
REDB resources are deleted, the project deletion will hang. The fix is to delete the
REDB resources first and the REC second. Afterward, you may delete the project.
REC extraLabels are not applied to PVCs on K8s versions 1.15 or older (RED-51921)
In K8s 1.15 or older, the PVC labels come from the match selectors and not the
PVC templates. As such, these versions can not support PVC labels. If this feature
is required, the only fix is to upgrade the K8s cluster to a newer version.
REC might report error states on initial startup (RED-61707)
There is not workaround at this time except to ignore the errors.
PVC size issues when using decimal value in spec (RED-62132)
The workaround for this issue is to make sure you use integer values for the PVC size.
Compatibility Notes
See [Supported Kubernetes distributions]({{<relref "/platforms/kubernetes/reference/supported_k8s_distributions.md">}}) for the full list of supported distributions.
Now supported
- OpenShift 4.8
- GKE K8s version 1.21
- kOps K8s version 1.21
- EKS K8s versions 1.19-1.21
- AKS K8s versions 1.19-1.20
- Rancher K8s version 1.20
No longer supported
- GKE K8s version 1.17 (previously deprecated)
- kOps K8s version 1.15 (previously deprecated)
Deprecation notice
- kOps 1.16 and 1.17 are deprecated
- VMWare TKGIE 1.7 (K8s 1.16), VMWare TKGIE 1.8 (K8s 1.17) are deprecated (no longer supported by VMWare)
-
- Openshift 3.11 (K8s 1.11) is now deprecated. Redis will continue to support existing deployments for the lifetime of Openshift 3.11, but new deployments are strongly discouraged.
Supported Distributions
Each release of the Redis Enterprise operator is thoroughly tested against a set of Kubernetes distributions. The table below lists the current release's support status for each distribution.
- "supported" indicates this distribution is supported for this release.
- "deprecated" indicates this distribution is supported for this release, but will be dropped in a future release.
- "no longer supported" indicates support has been dropped for this distribution.
- Any distribution not listed below is not supported for production workloads.
Distribution | Support Status |
---|---|
Openshift 3.11 (K8s 1.11) | deprecated |
OpenShift 4.6 (K8s 1.19) | supported |
OpenShift 4.7 (K8s 1.20) | supported |
OpenShift 4.8 (K8s 1.21) | supported |
KOPS vanilla 1.16 | deprecated |
KOPS vanilla 1.17 | deprecated |
KOPS vanilla 1.18 | supported |
KOPS vanilla 1.19 | supported |
KOPS vanilla 1.20 | supported |
KOPS vanilla 1.21 | supported |
GKE 1.18 | supported |
GKE 1.19 | supported |
GKE 1.20 | supported |
GKE 1.21 | supported |
Rancher 2.4 (K8s 1.17) | supported |
Rancher 2.4 (K8s 1.18) | supported |
Rancher 2.5 (K8s 1.17) | supported |
Rancher 2.5 (K8s 1.18) | supported |
Rancher 2.5 (K8s 1.19) | supported |
Rancher 2.5 (K8s 1.20) | supported |
VMWare TKGIE* 1.7 (K8s 1.16) | deprecated |
VMWare TKGIE* 1.8 (K8s 1.17) | deprecated |
VMWare TKGIE** 1.10 (K8s 1.19) | supported |
AKS 1.18 | supported |
AKS 1.19 | supported |
AKS 1.20 | supported |
EKS 1.18 | supported |
EKS 1.19 | supported |
EKS 1.20 | supported |
EKS 1.21 | supported |
* No longer supported by VMware
** Tanzu Kubernetes Grid Integrated Edition
v6.0.20-12
Overview
The Redis Enterprise K8s 6.0.20-12 release is a major release on top of 6.0.20-4 providing support for the Redis Enterprise Software release 6.0.20-97 and includes several enhancements and bug fixes.
This release of the operator provides:
- New features
- Various bug fixes
Images
This release includes the following container images:
- Redis Enterprise: redislabs/redis:6.0.20-97 or redislabs/redis:6.0.20-97.rhel7-openshift
- Operator and Bootstrapper: redislabs/operator:6.0.20-12
- Services Rigger: redislabs/k8s-controller:6.0.20-12 or redislabs/services-manager:6.0.20-12 (on the Red Hat registry)
New features
- EKS support
- Feature parity for Openshift OLM; added support for:
- REDB
- admission
- Hashicorp Vault integration
- Hashicorp Vault integration is now GA
- Moved Operator environment variables to configmap
Important fixes
- Admission controller deployment combined with operator deployment to simplify deployment (RED-52701)
- Additional verbosity in the
kubectl get redb
command output (RED-55042) - Support for Redis Enterprise license storage within secrets; Vault and K8s secrets (RED-55587)
- Support for manual procedure to replace the REC credentials (RED-56529, RED-56530)
- Fixed cluster recovery issue - recovery process was not starting (RED-55500)
- When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete (RED-33713)
- Master pod is not always labeled in Rancher (fixed in 6.0.8 but was not documented) (RED-42896)
Known limitations
Hashicorp Vault integration - no support for Gesher (RED-55080)
There is no workaround at this time
Nodes down indefinitely after the redis-enterprise-node container of a REC pod is restarted (53042)
In some cases where the Redis Enterprise Cluster container in the Redis Enterprise Cluster(REC) pod is restarted, the REC node remains down. Workaround: restart the pod, while ensuring the majority of REC nodes are available.
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod's status is CrashLoopBackOff
and we run the cluster recovery, the process will not complete. The workaround is to delete the crashing pods manually. The recovery process will then continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration because the host part of the domain name will exceed 63 characters. The workaround is to limit cluster name to 20 characters or fewer.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state, the state is still running
instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe does not mark a node as "not ready" when running rladmin status
on the node fails.
Role missing on replica sets (RED39002)
The redis-enterprise-operator
role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 does not support DockerHub private registries. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Master pod label in Rancher (RED42896)
The master pod is not always labeled in Rancher.
REC clusters fail to start on Kubernetes clusters with unsynchronized clocks (RED47254)
When REC clusters are deployed on Kubernetes clusters with unsynchronized clocks, the REC cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Deleting an OpenShift project with an REC deployed may hang (RED47192)
When a REC cluster is deployed in a project (namespace) and has REDB resources, the
REDB resources must be deleted first before the REC can be deleted. As such, until the
REDB resources are deleted, the project deletion will hang. The fix is to delete the
REDB resources first and the REC second. Afterwards, you may delete the project.
REC extraLabels are not applied to PVCs on K8s versions 1.15 or older (RED51921)
In K8s 1.15 or older, the PVC labels come from the match selectors and not the
PVC templates. As such, these versions can not support PVC labels. If this feature
is required, the only fix is to upgrade the K8s cluster to a newer version.
Compatibility Notes
- EKS is now supported (K8s 1.18)
- OpenShift 4.4 (previously deprecated) is no longer supported
- GKE K8s versions 1.15, 1.16 (previously deprecated) is no longer supported
- VMWare TKGIE 1.10 (K8s 1.19) is now supported
Deprecation notice
- GKE K8s version 1.17 (no longer supported by Google) is deprecated
- kOps 1.15 is deprecated
- VMWare TKGIE 1.7 (K8s 1.16), VMWare TKGIE 1.8 (K8s 1.17) are deprecated (no longer supported by VMWare)
v6.0.20-4
Overview
The Redis Enterprise K8s 6.0.20-4 release is a major release on top of 6.0.8-20 providing support for the Redis Enterprise Software release 6.0.20-69 and includes several enhancements and bug fixes.
This release of the operator provides:
- New features
- Various bug fixes
Images
This release includes the following container images:
- Redis Enterprise: redislabs/redis:6.0.20-69 or redislabs/redis:6.0.20-69.rhel7-openshift
- Operator and Bootstrapper: redislabs/operator:6.0.20-4
- Services Rigger: redislabs/k8s-controller:6.0.20-4 or redislabs/services-manager:6.0.20-4 (on the Red Hat registry)
New features
- Support for Openshift 4.7
- Support for Kubernetes 1.20
New preview features
- Hashicorp Vault integration - REC secret
- Hashicorp Vault integration - REDB secrets
Important fixes
- Fixed upgrade issue with custom container repositories specifying port numbers (RED-53192)
- REDB controller no longer performs reconciliation until Redis Enterprise software version complies with operator (RED-53194)
- Removed unused node.js package from Services Rigger image (RED-53536)
- Fixed operator crash on change of uiServiceType (RED-54621)
- Avoid excessive logging within RS pod (envoy_access.log) (RED-55525)
Known limitations
OpenShift 4.7 - v6.0.20-4 cannot be deployed by OLM
6.0.20-4 does not appear in OLM. Workaround - deploy manually. A future maintenance release will address this.
Hashicorp Vault integration - no support for Gesher (RED-55080)
There is no workaround at this time
Nodes down indefinitely after the redis-enterprise-node container of a REC pod is restarted (53042)
In some cases where the Redis Enterprise Cluster container in the Redis Enterprise Cluster(REC) pod is restarted, the REC node remains down. Workaround: restart the pod, while ensuring the majority of REC nodes are available.
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod's status is CrashLoopBackOff
and we run the cluster recovery, the process will not complete. The workaround is to delete the crashing pods manually. The recovery process will then continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration because the host part of the domain name will exceed 63 characters. The workaround is to limit cluster name to 20 characters or fewer.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state, the state is still running
instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe does not mark a node as "not ready" when running rladmin status
on the node fails.
Role missing on replica sets (RED39002)
The redis-enterprise-operator
role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 does not support DockerHub private registries. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Master pod label in Rancher (RED42896)
The master pod is not always labeled in Rancher.
REC clusters fail to start on Kubernetes clusters with unsynchronized clocks (RED47254)
When REC clusters are deployed on Kubernetes clusters with unsynchronized clocks, the REC cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Deleting an OpenShift project with an REC deployed may hang (RED47192)
When a REC cluster is deployed in a project (namespace) and has REDB resources, the
REDB resources must be deleted first before the REC can be deleted. As such, until the
REDB resources are deleted, the project deletion will hang. The fix is to delete the
REDB resources first and the REC second. Afterwards, you may delete the project.
REC extraLabels are not applied to PVCs on K8s versions 1.15 or older (RED51921)
In K8s 1.15 or older, the PVC labels come from the match selectors and not the
PVC templates. As such, these versions can not support PVC labels. If this feature
is required, the only fix is to upgrade the K8s cluster to a newer version.
Compatibility Notes
- OpenShift 4.7 and Rancher/kOps 1.20 are now supported
- OpenShift 4.1, 4.2, 4.3 (previously deprecated) are no longer supported
- GKE K8s version 1.14 (previously deprecated) is no longer supported
- kOps (upstream K8s) 1.13, 1.14 (previously deprecated) are no longer supported
Deprecation notice
- OpenShift 4.4 (no longer supported by Red Hat) is deprecated
- GKE K8s versions 1.15, 1.16 (no longer supported by Google) are deprecated
- kOps (upstream K8s) 1.15 is deprecated
v6.0.12-5
Overview
The Redis Enterprise K8s 6.0.12-5 release is a major release on top of 6.0.8-20 providing support for the Redis Enterprise Software release 6.0.12-57 and includes several enhancements and bug fixes.
This release of the operator provides:
- New features
- Various bug fixes
Images
This release includes the following container images:
- Redis Enterprise: redislabs/redis:6.0.12-57 or redislabs/redis:6.0.12-57.rhel7-openshift
- Operator and Bootstrapper: redislabs/operator:6.0.12-5
- Services Rigger: redislabs/k8s-controller:6.0.12-5 or redislabs/services-manager:6.0.12-5 (Red Hat registry)
New features
- Azure Kubernetes Service (AKS) is now supported. (RED40323)
- Database custom resources now support roles permissions (role to Redis ACL bindings). (RED49780)
Feature Improvements
- The license information has been added to the REC status. (RED43078)
kubectl get rec
now displays more information (i.e., added "NODES", "VERSION", "STATE", "SPEC STATUS"). (RED46428)- The
extraLabels
in the cluster spec now applies to the PV and PVC at creation. (RED48694) - Added Rancher 2.5 support. (RED50211)
- Added K8s (Kops) 1.19 support. (RED50211)
- Added OpenShift 4.6 support. (RED50495)
- Database resources can now disable the default database user. (RED50215)
- REC credentials no longer use environment variables in pods. (RED47969)
Important fixes
- Fixed an issue where pods are stuck terminating during teardown. (RED44726)
- Fixed an issue where pods are stuck terminating during cluster recovery. (RED43846)
- Changed the operator logs to use human-readable dates and times. (RED39026)
- Fixed the display of resources in the OLM (OpenShift). (RED48116)
- Fixed backup configuration issue for GCS without a subdir. (RED49299)
Known limitations
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod's status is CrashLoopBackOff
and we run the cluster recovery, the process will not complete. The workaround is to delete the crashing pods manually. The recovery process will then continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration because the host part of the domain name will exceed 63 characters. The workaround is to limit cluster name to 20 characters or fewer.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state, the state is still running
instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe does not mark a node as "not ready" when running rladmin status
on the node fails.
Role missing on replica sets (RED39002)
The redis-enterprise-operator
role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 does not support DockerHub private registries. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Master pod label in Rancher (RED42896)
The master pod is not always labeled in Rancher.
REC clusters fail to start on Kubernetes clusters with unsynchronized clocks (RED47254)
When REC clusters are deployed on Kubernetes clusters with unsynchronized clocks, the REC cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Deleting an OpenShift project with an REC deployed may hang (RED47192)
When a REC cluster is deployed in a project (namespace) and has REDB resources, the
REDB resources must be deleted first before the REC can be deleted. As such, until the
REDB resources are deleted, the project deletion will hang. The fix is to delete the
REDB resources first and the REC second. Afterwards, you may delete the project.
REC extraLabels are not applied to PVCs on K8s versions 1.15 or older (RED51921)
In K8s 1.15 or older, the PVC labels come from the match selectors and not the
PVC templates. As such, these versions can not support PVC labels. If this feature
is required, the only fix is to upgrade the K8s cluster to a newer version.
Compatibility Notes
- OpenShift 4.6 and Rancher/kOps 1.19 are now supported.
- Rancher 2.5 is now supported.
- AKS (K8s 1.18) is now supported.
Deprecation notice
- OpenShift 4.1, 4.2, and 4.3 are now deprecated.
- GKE K8s version 1.14 is deprecated.
- kOps 1.13 and 1.14 are deprecated.
v6.0.8-20
Overview
The Redis Enterprise K8s 6.0.8-20 release is a major release on top of 6.0.8-1 providing support for the latest Redis Enterprise Software release 6.0.8-30 and includes several enhancements and bug fixes.
This release of the operator provides:
- The latest release version of the operator
- New features
- Various bug fixes
Images
- Redis Enterprise - redislabs/redis:6.0.8-30 or redislabs/redis:6.0.8-30.rhel7-openshift
- Operator - redislabs/operator:6.0.8-20
- Services Rigger - redislabs/k8s-controller:6.0.8-20 or redislabs/services-manager:6.0.8-20 (Red Hat registry)
New features
- Databases custom resources (REDB) can be created in separate consumer namespaces from the operator and cluster namespace. The operator deployment is configured to watch specific namespaces for these database REDB CR’s.
- The Gesher admission control proxy is now certified by Red Hat.
- REDB CR’s no longer require a Redis Enterprise cluster name. The name will default to the cluster in the context of the operator.
- REC and REDB CR’s are now validated via a schema.
Important fixes
- Using database controller (REDB) no longer generates errors: “failed to update database status" (RED44919)
- Issues with configuring replica-of through the database controller (REDB) and TLS have been fixed. (RED48285)
- A time out issue with “rlutil upgrade” was fixed. (RED48700)
Known limitations
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete. The workaround is to delete the crashing pods manually and recovery process will continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration as the host part of the domain name exceeds 63 characters. The workaround is to limit cluster name to 20 characters or less.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state the state is still running instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe doesn't mark a node as not ready when rladmin status on the node fails.
Role missing on replica sets (RED39002)
The redis-enterprise-operator role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 doesn't support dockerhub private registry. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Master pod label in Rancher (RED42896)
Master pod is not always labeled in Rancher.
Cluster fail to start for clusters with unsynchronized clocks (RED47254)
When REC clusters are deployed on clusters with unsynchronized clocks, the cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Compatibility Notes
N/A
v6.0.8-1
Overview
The Redis Enterprise K8s 6.0.8-1 release is a major release on top of 6.0.6-24 providing support for the latest Redis Enterprise Software release 6.0.8-28 and includes several enhancements (including OpenShift 4.5 and Kubernetes 1.18 support) and bug fixes.
This release of the operator provides:
- The latest release version of the operator
- New features
- New support K8s distributions and platforms
- Various bug fixes
Images
- Redis Enterprise - redislabs/redis:6.0.8-28 or redislabs/redis:6.0.8-28.rhel7-openshift
- Operator - redislabs/operator:6.0.8-1
- Services Rigger - redislabs/k8s-controller:6.0.8-1 or redislabs/services-manager:6.0.8-1 (Red Hat registry)
New features
- Redis Modules can now be configured in the database custom resource.
- Support was added for OpenShift 4.5
- Support was added for Kubernetes 1.18
- Added support for the Gesher admission control proxy to provide an administrator the ability to setup delegation to avoid the need for administrator intervention on every namespaced deployed operator.
Important fixes
- Added the missing Services Rigger health check (RED47062)
- Fixed failures when updating the ui service type (RED45771)
Known limitations
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete. The workaround is to delete the crashing pods manually and recovery process will continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration as the host part of the domain name exceeds 63 characters. The workaround is to limit cluster name to 20 characters or less.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state the state is still running instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe doesn't mark a node as not ready when rladmin status on the node fails.
Role missing on replica sets (RED39002)
The redis-enterprise-operator role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 doesn't support dockerhub private registry. This is a known OpenShift issue.
Internal DNS and Kubernetes DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for Kubernetes DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
Kubernetes-based 5.4.10 deployments seem to negatively impact existing 5.4.6 deployments that share a Kubernetes cluster.
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the Kubernetes worker node hosting the REC pod.
Master pod label in Rancher (RED42896)
Master pod is not always labeled in Rancher.
Cluster fail to start for clusters with unsynchronized clocks (RED47254)
When REC clusters are deployed on clusters with unsynchronized clocks, the cluster does not start correctly. The fix is to use NTP to synchronize the underlying K8s nodes.
Errors in operator log for REDB status (RED44919)
Benign errors are reported in the operator log when using database controller (REDB) (e.g., “failed to update database status". These errors can be ignored.
Compatibility Notes
- Support for OpenShift 4.5 was added,
- Support for Kubernetes 1.18 was added,
- Support for the previous deprecated Kubernetes 1.11 and 1.12 has been removed.
v6.0.6-24
Overview
The Redis Enterprise K8s 6.0.6-24 release is a maintenance release on top of 6.0.6-23 providing support for the latest Redis Enterprise Software release 6.0.6-39 and includes several bug fixes.
This release of the operator provides:
- The latest release version of the operator
- Various bug fixes
Images
- Redis Enterprise - redislabs/redis:6.0.6-39 or redislabs/redis:6.0.6-39.rhel7-openshift
- Operator - redislabs/operator:6.0.6-24
- Services Rigger - redislabs/k8s-controller:6.0.6-24 or redislabs/services-manager:6.0.6-24 (on the RedHat registry)
Important fixes
- A fix for database observability where after 24 hours after creation or update, the controller was unable to observe the database (RED46149)
- A fix for a log collector crash on Windows when pods were not running (RED45477)
Known limitations
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete. The solution is to delete the crashing pods manually and recovery process will continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration as the host part of the domain name exceeds 63 characters. The workaround is to limit cluster name to 20 characters or less.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state the state is still running instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe doesn't mark a node as not ready when rladmin status on the node fails
Role missing on replica sets (RED39002)
The redis-enterprise-operator role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 doesn't support dockerhub private registry. This is a known OpenShift issue.
Internal DNS and K8s DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for K8s DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
K8S-based 5.4.10 clusters seem to negatively impact existing 5.4.6
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the K8S worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Updating UI service in Rancher (RED45771)
Updating the UI service type may fail in Rancher. When this happens, delete the service manually and the operator will recreate it correctly.
Master pod label in Rancher (RED42896)
Master pod is not always labeled in Rancher.
Deprecation notice
Support for K8s version 1.11 and 1.12 is deprecated (excludes Openshift 3.11, which continues to be supported). Openshift 4.1 and 4.2 are deprecated (already End Of Life by Red Hat).
v6.0.6-23
Overview
The Redis Enterprise K8s 6.0.6-23 release is a major release on top of 6.0.6-11 providing support for the Redis Enterprise Software release 6.0.6-39 and includes several enhancements (including Rancher support) and bug fixes
This release of the operator provides:
- Support for the Redis Enterprise Software release 6.0.6-39
- Support for Rancher
- Backup options in the database custom resource and controller
- Alert option in the database custom resource and controller
- UBI images
- Various other enhancements and bug fixes
Images
- Redis Enterprise - redislabs/redis:6.0.6-39 or redislabs/redis:6.0.6-39.rhel7-openshift
- Operator - redislabs/operator:6.0.6-23
- Services Rigger - redislabs/k8s-controller:6.0.6-23 or redislabs/services-manager:6.0.6-23 (on the RedHat registry)
New features
Red Hat UBI base images (RED29651)
The services rigger and operator images are now based on Red Hat UBI base images. Also, the same images are now used in both OpenShift and non-OpenShift environments.
Rancher support (RED37918)
The operator is now supported on Rancher (v2.4.5).
Database replica-of support (RED40160)
Support for replica-of was added to the DB controller.
Database backup configuration (RED40165)
Support for backup configuration was added to the DB controller spec.
Alert configuration (RED40166)
Support for alert configuration was added to the DB controller spec.
Database TLS configuration (RED41758)
Support for TLS authentication configuration was added to the DB controller.
OpenShift 4.4 support (RED41352)
The operator is now supported on Openshift 4.4.
DB controller resources via the OLM (RED41755)
Support configuration of DB controller resources was added to the OLM (preview channel).
Important fixes
- Openshift OLM upgrade support was fixed. Also, installing past versions was added through dedicated channels. (RED44130)
- Fixed log_collector failures when pods were not scheduled. (RED45347)
- Fixed wrong handling of the operator environment variables Specifically, enabling/disabling the database controller now works correctly. (RED45351)
Known limitations
CrashLoopBackOff causes cluster recovery to be incomplete (RED33713)
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete. The solution is to delete the crashing pods manually and recovery process will continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration as the host part of the domain name exceeds 63 characters. The workaround is to limit cluster name to 20 characters or less.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state the state is still running instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe doesn't mark a node as not ready when rladmin status on the node fails
Role missing on replica sets (RED39002)
The redis-enterprise-operator role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 doesn't support dockerhub private registry. This is a known OpenShift issue.
Internal DNS and K8s DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for K8s DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
K8S-based 5.4.10 clusters seem to negatively affect existing 5.4.6
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the K8S worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec".
Updating UI service in Rancher (RED45771)
Updating the UI service type may fail in Rancher. When this happens, delete the service manually and the operator will recreate it correctly.
Master pod label in Rancher (RED42896)
Master pod is not always labeled in Rancher.
Deprecation notice
Support for K8s version 1.11 and 1.12 is deprecated (excludes Openshift 3.11, which continues to be supported).
Compatibility updates
- Added support for Rancher
- Added support for Openshift 4.4
v6.0.6-11
Overview
The Redis Enterprise K8s 6.0.6-11 release is a maintenance release on top of 6.0.6-6 providing support for the latest Redis Enterprise Software release 6.0.6-39 and includes several bug fixes.
Images
- Redis Enterprise - redislabs/redis:6.0.6-39 or redislabs/redis:6.0.6-39.rhel7-openshift
- Operator - redislabs/operator:6.0.6-11 or redislabs/operator:6.0.6-11.rhel7
- Services Rigger - redislabs/k8s-controller:6.0.6-11 or redislabs/k8s-controller:6.0.6-11.rhel7
Important fixes
- The upgrade process may have failed in certain situations (i.e., with CRDB databases). We now ensure that rlutil runs at bootstrap to complete the upgrade process. (RED43635)
- The example and default custom resource for the REC in the OLM now correctly uses 'nodes' (RED43847)
- Fixes for security vulnerabilities in the server rigger image: upgraded to httpd 2.4.42, Kubernetes Python Client 8.0.1, and removed localhost private key. (RED42495)
- A fix for an internal logging issue that caused errors to incorrectly show up on the operator log when databases are created even though the creation succeeded. (RED43336)
Known limitations
CrashLoopBackOff causes cluster recover to be incomplete (RED33713)
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process will not complete. The solution is to delete the crashing pods manually and recovery process will continue.
Long cluster names cause routes to be rejected (RED25871)
A cluster name longer than 20 characters will result in a rejected route configuration as the host part of the domain name exceeds 63 characters. The workaround is to limit cluster name to 20 characters or less.
No cleanup of database services on failures (RED25825)
The service broker doesn't clean up database service bindings when there are failures. The workaround is to manually remove service bindings.
Server broker errors with two service naming schemes (RED25547)
The service broker deployment results in an error when two types of service naming schemes are set. You must choose one of the methods if both are set - redis-port is the recommended default.
Cluster CR (REC) errors are not reported after invalid updates (RED25542)
A cluster CR specification error is not reported if two or more invalid CR resources are updated in sequence.
An unreachable cluster has status running (RED32805)
When a cluster is in an unreachable state the state is still running instead of being reported as an error.
Readiness probe incorrect on failures (RED39300)
STS Readiness probe doesn't mark a node as not ready when rladmin status on the node fails
Role missing on replica sets (RED39002)
The redis-enterprise-operator role is missing permission on replica sets.
Private registries are not supported on OpenShift 3.11 (RED38579)
Openshift 3.11 doesn't support dockerhub private registry. This is a known OpenShift issue.
Internal DNS and K8s DNS may have conflicts (RED37462)
DNS conflicts are possible between the cluster mdns_server and the K8s DNS. This only impacts DNS resolution from within cluster nodes for K8s DNS names.
5.4.10 negatively impacts 5.4.6 (RED37233)
K8S-based 5.4.10 clusters seem to negatively affect existing 5.4.6
Node CPU usage is reported instead of pod CPU usage (RED36884)
In Kubernetes, the node CPU usage we report on is the usage of the K8S worker node hosting the REC pod.
Clusters must be named "rec" in OLM-based deployments (RED39825)
In OLM-deployed operators, the deployment of the cluster will fail if the name is not "rec". When the operator is deployed via the OLM, the security context constraints (scc) is bound to a specific service account name (i.e., "rec"). The workaround is to name the cluster "rec"
v6.0.6-6
Overview
The Redis Enterprise K8s 6.0.6-6 release is a major release providing support for the latest Redis Enterprise Software release 6.0.6 and includes multiple new features and bug fixes.Follow the instructions in Upgrading a Redis Enterprise Cluster in Operator-based Architecture to upgrade to this Kubernetes operator release.
Note: If you are running Active-Active (CRBD) databases on a previous release, do not upgrade to 6.0.6-6 at this time. There is an issue with the upgrade process that is currently being investigated (RED43635). For more information and support please contact support@redislabs.com
Images
- Redis Enterprise - redislabs/redis:6.0.6-6 or redislabs/redis:6.0.6-6.rhel7-openshift
- Operator - redislabs/operator:6.0.6-6 or redislabs/operator:6.0.6-6.rhel7
- Services Rigger - redislabs/k8s-controller:6.0.6-6 or redislabs/k8s-controller:6.0.6-6.rhel7
New features and improvements
Database controller
A new database controller in the operator provides the ability to create
and manage databases on a Redis Enterprise cluster via a custom resource (RED36516).
Admission controller
A new admission controller in the operator provides validation of
database custom resources (RED36458).
Pod tolerations
Support for specifying Redis Enterprise cluster node pod tolerations of node taints
has been added to the cluster CR (see podTolerations) (RED33069).
Pod annotations
Support for specifying Redis Enterprise cluster node pod annotations has been
added to the cluster CR (see podAnnotations) (RED35613).
Kubernetes versions
Support for Kubernetes 1.17 was added and versions 1.9 and 1.10 (previously deprecated) are no longer supported (RED41049).
Improved OLM Experience
The overall user experience and documentation in the OLM (OperatorHub) has been improved (RED37008).
Resource limits
Resource limits have been added to the recommended operator configuration (RED39572).
LoadBalancer service type added
The LoadBalancer
value has been added to the databaseServiceType
option in servicesRiggerSpec
(RED43215):
servicesRiggerSpec:
databaseServiceType: LoadBalancer
Important fixes
- Service creation failure causes cluster setup failure (RED37197)
- UI service update failure (RED37198)
- Error shown in OLM deployment: "The field status.state is invalid" (RED40278)
- OLM: StatefulSet not listed as an object owned by the Redis Enterprise Cluster (RED39296)
- Setting extraLabels in the cluster CR did not label pods on OpenShift (RED39763)
- log_collector failed to get the pods logs when a namespace wasn't given (RED39292)
- Role and RoleBinding created or updated using an existing ServiceAccount in REC spec (RED42912)
Known limitations
CrashLoopBackOff pod status and cluster recovery
When a pod status is CrashLoopBackOff and we run the cluster recovery, the process
will not complete. The solution is to delete the crashing pods manually and
recovery process will continue (RED33713).
Active-Active (CRDB) - limitation on cluster name length
A cluster name longer than 20 characters will result in a rejected route
configuration as the host part of the domain name exceeds 63 characters. Cluster
names must be limited to 20 characters or less (RED25871).
Active-Active (CRDB) service broker cleanup
The service broker doesn't clean up database service bindings in case of failures.
These bindings must be removed manually (RED25825).
Service broker deployment error
The service broker deployment results in an error when two types of service naming
schemes are set. Choosing one of the methods will resolve this error (redis-port
is the recommended default) (RED25547).
Cluster spec invalid errors not reported
A cluster CR specification error is not reported if two or more invalid CR resources are
updated in sequence (RED25542).
Unreachable cluster does not produce an error
When a cluster is in an unreachable state the state is still running
instead of
being reported as an error (RED32805).
Readiness probe ignores rladmin failure
STS Readiness probe doesn't mark a node as not ready when rladmin status nodes fails (RED39300).
Missing permission for role
The redis-enterprise-operator role is missing permission on replicasets (RED39002).
Openshift 3.11 doesn't support DockerHub private registry
Openshift 3.11 doesn't support DockerHub private registry. This is a known OpenShift
issue and not addressable by the Redis Enterprise operator (RED38579).
Possible DNS conflicts within cluster nodes
DNS conflicts are possible between the cluster mdns_server and the K8s DNS.
This only impacts DNS resolution from within cluster node and while using the full fqdn *.cluster.local (RED37462).
Coexistence of 5.4.10 and 5.4.6 clusters
K8s clusters with Redis Enterprise 5.4.6 clusters are negatively affected by installing a Redis Enterprise 5.4.10 cluster due to changes in CRD (CustomeResourceDefinition) (RED37233).
Redis Enteprise CPU utilization metric reports at K8s node level rather than at pod level
In Kubernetes, the node CPU usage we report on is the usage of the K8S worker node hosting the REC pod (RED-36884). Pod resource utilization should be measured by K8s-native means rather than through the application.
Cluster name is limited on OpenShift via OLM
In OLM-deployed operators, the deployment of the cluster will fail if the name
is not "rec". When the operator is deployed via the OLM, the security context constraints (scc)
is bound to a specific service account name (i.e., "rec"). Naming the cluster
"rec" resolves the issue (RED39825).
Coming Soon
The following lists features, fixes and changes the Redis Labs team is currently investing in:
Redis Enteprise and Kubernetes Container Artifacts
Starting from the next release of Redis Enterprise for K8s, new container artifacts will be published using different base images:
- Redis Enterprise - A UBI (RHEL 7) base image will replace the Ubuntu and the RHEL7 base images
- Operator - An Image built from scratch containing the Golang executable will replace the Ubuntu and the RHEL7 base images
- Services Rigger - A UBI (RHEL 7) base image will replace the Ubuntu and the RHEL7 base images
Deprecation notice
The service broker solution is deprecated and will not be supported starting from the next release of the Redis Enterprise Operator for Kubernetes.
Additional Redis Enterprise Database configuration options in the Database Controller
We're currently investing in the following additional capabilities of the Database Controller:
- Support for loading database modules
- Support for setting up Alerts, expressed as K8s events
- Support for configuring database backup options