Redis Enterprise for Kubernetes 发行说明 6.2.4-1(2021 年 9 月)
支持 RS 6.2.4 和 OpenShift 4.8。支持 K8s 1.19(EKS 和 AKS)、K8s 1.20(Rancher、EKS、AKS)、K8s 1.21(GKE 和 kOps)。
适用于 Kubernetes 的 Redis Enterprise |
---|
概述
Redis Enterprise K8s 6.2.4-1 版本为 Redis Enterprise Software 版本 6.2.4 提供支持,并包含多项增强功能和错误修复。
下面介绍了主要的新功能、错误修复和已知限制。
图像
此版本包括以下容器映像:
- Redis 企业版:
redislabs/redis:6.2.4-55
或redislabs/redis:6.2.4-55.rhel7-openshift
- 作员:
redislabs/operator:6.2.4-1
- 服务索具:
redislabs/k8s-controller:6.2.4-1
或redislabs/services-manager:6.2.4-1
(在 Red Hat 注册表中)
新功能
- 通过 K8s 自定义资源进行节点间加密配置(RED-59699、RED-60318)
功能改进
- 支持在包含逗号分隔的服务名称列表的 REDB 密钥中加入属性 (RED-48469)
- 支持 OpenShift 4.8 (K8s 1.21) (RED-59424)
- 支持 K8s 1.21 - GKE (RED-59048)
- 支持 K8s 1.21 - kOps (RED-59047)
- 支持 K8s 1.19-1.21 - EKS (RED-60287)
- 支持 K8s 1.19、1.20 - AKS (RED-59050)
- 支持 K8s 1.20 - Rancher (RED-59049)
修复的 bug
- 修复了 RS Pod 无法从容器故障中恢复的问题 (RED-53042)
- 修复了在 statefulSet 推出时 Redis Enterprise Pod 过早重启导致仲裁丢失的罕见问题 (RED-53042)
- 改进了有关将准入控制器与多个命名空间结合使用的 Github 公共文档 (RED-59915)
- 修复了 HashiCorp Vault 企业命名空间和自定义身份验证路径的集成问题 (RED-61273)
已知限制
大型集群
在具有 9 个以上 REC 节点的集群上,在某些情况下,Kubernetes 升级可能会导致 Redis 集群无响应。6.4.2-5 版本中提供了修复。在升级 Kubernetes 集群之前,请将 Operator 版本升级到 6.4.2-5 或更高版本。(红色-93025)
应用 bundle.yaml 时生成警告
在 K8s 集群 1.20 及以上版本上应用 bundle.yaml 时,会产生以下警告:
Warning: apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
可以安全地忽略该警告。引入对 K8s 1.22 的支持后,未来版本将利用更新的 CustomResourceDefinition API 版本。
启用 Kubernetes Webhook 会生成警告
安装和配置准入控制器 Webhook(步骤 5)时,会生成以下警告:
Warning: admissionregistration.k8s.io/v1beta1 ValidatingWebhookConfiguration is deprecated in v1.16+, unavailable in v1.22+; use admissionregistration.k8s.io/v1 ValidatingWebhookConfiguration
可以安全地忽略该警告。引入对 K8s 1.22 的支持后,未来的版本将利用更新的 API 版本进行 ValidatingWebhookConfiguration。
Hashicorp Vault 集成 - 不支持 Gesher (RED-55080)
目前没有解决方法
较长的集群名称会导致路由被拒绝 (RED-25871)
超过 20 个字符的集群名称将导致路由配置被拒绝,因为域名的主机部分将超过 63 个字符。解决方法是将集群名称限制为 20 个字符或更少。
无效更新后,不会报告群集 CR (REC) 错误 (RED-25542)
如果依次更新了两个或多个无效的 CR 资源,则不会报集群 CR 规格错误。
无法访问的集群的状态为 running (RED-32805)
当集群处于 unreachable 状态时,状态仍为running
而不是作为错误报告。
故障时就绪探针不正确 (RED-39300)
STS Readiness 探测在运行时不会将节点标记为 “not ready”rladmin status
在 node 失败。
副本集上缺少角色 (RED-39002)
这redis-enterprise-operator
角色缺少对副本集的权限。
OpenShift 3.11 不支持私有注册表 (RED-38579)
OpenShift 3.11 不支持 DockerHub 私有镜像仓库。这是一个已知的 OpenShift 问题。
内部 DNS 和 Kubernetes DNS 可能存在冲突 (RED-37462)
集群之间可能存在 DNS 冲突mdns_server
和 K8s DNS。这仅影响集群节点内 Kubernetes DNS 名称的 DNS 解析。
5.4.10 对 5.4.6 产生负面影响 (RED-37233)
基于 Kubernetes 的 5.4.10 部署似乎会对共享 Kubernetes 集群的现有 5.4.6 部署产生负面影响。
报告节点 CPU 使用率而不是 Pod CPU 使用率 (RED-36884)
在 Kubernetes 中,我们报告的节点 CPU 使用率是托管 REC Pod 的 Kubernetes 工作节点的使用率。
在基于 OLM 的部署中,集群必须命名为 “rec” (RED-39825)
在 OLM 部署的 Operator 中,如果名称不是 “rec”,则集群部署将失败。通过 OLM 部署 Operator 时,安全上下文约束 (scc) 将绑定到特定的服务账户名称(即“rec”)。解决方法是将集群命名为 “rec”。
REC 集群无法在时钟不同步的 Kubernetes 集群上启动 (RED-47254)
当 REC 集群部署在时钟不同步的 Kubernetes 集群上时,REC 集群无法正常启动。解决方法是使用 NTP 同步底层 K8s 节点。
删除部署了 REC 的 OpenShift 项目可能会挂起 (RED-47192)
当 REC 集群部署在项目(命名空间)中并具有 REDB 资源时, 必须先删除 REDB 资源,然后才能删除 REC。因此,直到 REDB 资源被删除,则项目删除将挂起。解决方法是删除 首先是 REDB 资源,其次是 REC。之后,您可以删除该项目。
REC extraLabel 不会应用于 K8s 版本 1.15 或更早版本上的 PVC (RED-51921)
在 K8s 1.15 或更早版本中,PVC 标签来自匹配选择器,而不是 PVC 模板。因此,这些版本不支持 PVC 标签。如果此功能 是必需的,唯一的解决方法是将 K8s 集群升级到较新版本。
REC 可能会在初始启动时报告错误状态 (RED-61707)
目前除了忽略这些错误外,没有其他解决方法。
在规范中使用十进制值时出现 PVC 大小问题 (RED-62132)
此问题的解决方法是确保对 PVC 大小使用整数值。
较长的 REC 名称或命名空间名称会导致失败 (RED-62222)
REC 名称和命名空间名称的总长度必须等于或小于 45 个字符。
兼容性说明
有关支持的发行版的完整列表,请参阅支持的 Kubernetes 发行版。
现在支持
- OpenShift 4.8
- GKE K8s 版本 1.21
- kOps K8s 版本 1.21
- EKS K8s 版本 1.19-1.21
- AKS K8s 版本 1.19-1.20
- Rancher K8s 版本 1.20
不再支持
- GKE K8s 版本 1.17(之前已弃用)
- kOps K8s 版本 1.15(以前已弃用)
弃用通知
- kOps 1.16 和 1.17 已弃用
- VMWare TKGI 1.7 (K8s 1.16)、VMWare TKGI 1.8 (K8s 1.17) 已弃用(VMWare 不再支持)
- Openshift 3.11 (K8s 1.11) 现已弃用。Redis 将在 Openshift 3.11 的生命周期内继续支持现有部署,但强烈建议不要进行新的部署。