Redis Enterprise for Kubernetes 发行说明 6.2.12-1(2022 年 9 月)
添加了对其他发行版的支持,以及功能改进和错误修复。
适用于 Kubernetes 的 Redis Enterprise |
---|
概述
Redis Enterprise K8s 6.2.12-1 支持 Redis Enterprise Software 版本 6.2.12,并包括功能改进和错误修复。
下面介绍了关键的 bug 修复和已知限制。
图像
此版本包括以下容器映像:
- Redis 企业版:
redislabs/redis:6.2.12-82
或redislabs/redis:6.2.12-82.rhel8-openshift
- 作员:
redislabs/operator:6.2.12-1
- 服务索具:
redislabs/k8s-controller:6.2.12-1
或redislabs/services-manager:6.2.12-1
(在 Red Hat 注册表中)
功能改进
- Redis Enterprise Software 6.2.12 支持 (RED-83829)
- 添加了对 Redis Enterprise 创建的服务上的注释的支持 (RED-56245)
- 支持具有相同作员版本的相同 Redis Software 版本的其他构建。将发布支持的版本列表。(红色-78757)
Bug 修复
- 修复 Golang 相关漏洞 (RED-79205)
- 日志收集器创建较大的软件包 (RED-79650)
- 当 Redis Enterprise 集群未运行时,日志收集器崩溃 (RED-79996)
- 在某些情况下,Redis Enterprise Software Pod 终止过程可能会导致 Pod 关闭,而无法正确故障转移其主分片。此问题已得到修复,因此在宽限期内无限期地重试故障转移尝试,宽限期默认为 1 年。宽限期可通过 REC 中的 redisEnterpriseTerminationGracePeriodSeconds 参数进行控制(但请注意,在没有适当故障转移的情况下关闭 Pod 可能会导致数据丢失)。(红色-75388)
API 变更
Redis Enterprise 集群podSecurityPolicy
已弃用。此功能仍受支持,但在删除所有支持该功能的 K8s 版本后将删除此功能。
兼容性说明
下表显示了此版本发布时支持的发行版。有关当前支持的发行版列表,请参阅支持的 Kubernetes 发行版。
Kubernetes 版本 | 1.20 | 1.21 | 1.22 | 1.23 | 1.24 |
---|---|---|---|---|---|
社区 Kubernetes | 支持 | 支持 | 支持 | ||
亚马逊 EKS | 荒废的 | 支持 | 支持* | ||
Azure AKS | 支持 | 支持 | 支持* | ||
谷歌 GKE | 荒废的 | 支持 | 支持 | 支持* | |
牧场主 2.6 | 支持 | 支持 | 支持* | ||
OpenShift 版本 | 4.7 | 4.8 | 4.9 | 4.10 | 4.11 |
荒废的 | 荒废的 | 支持 | 支持 | 支持* | |
VMware TKGI 版本 | 1.11 | 1.12 | 1.13 | 1.14 | 1.15 |
荒废的 | 荒废的 | 支持* | 支持* |
* 此版本中添加的支持
已添加支持
- Azure AKS 1.24
- 亚马逊 EKS 1.23
- 谷歌 GKE 1.24
- OpenShift 4.11
- 牧场主 1.23
- VMware TKGI 1.14 版
荒废的
- 亚马逊 EKS 1.21
- 谷歌 GKE 1.21
- OpenShift 4.7
- OpenShift 4.8
- VMware TKGI 1.11 版
- VMware TKGI 1.12 版
不再支持
- 社区版 Kubernetes 1.21
- 亚马逊 EKS 1.19、1.20
- Azure AKS 1.21
- 谷歌 GKE 1.19、1.20
- 牧场主 2.6、1.19、1.20
- VMware TKGI 1.10 版
升级前
请注意,此版本中包含的以下更改会影响升级过程。升级前请仔细阅读。
支持的升级路径
如果您使用的是 Operator 版本 6.2.8-15 或更早版本,则无法直接升级到 Operator 版本 6.2.12 到 6.4.2-5。您必须先升级到 Operator 版本 6.2.10-45,然后才能升级到 6.2.12 和 6.4.2-5 之间的 Operator 版本。但是,支持直接升级到 Operator 版本 6.4.2-6。
已知限制
大型集群
在具有 9 个以上 REC 节点的集群上,在某些情况下,Kubernetes 升级可能会导致 Redis 集群无响应。6.4.2-5 版本中提供了修复。在升级 Kubernetes 集群之前,请将 Operator 版本升级到 6.4.2-5 或更高版本。(红色-93025)
-
较长的集群名称会导致路由被拒绝 (RED-25871)
超过 20 个字符的集群名称将导致路由配置被拒绝,因为域名的主机部分将超过 63 个字符。解决方法是将集群名称限制为 20 个字符或更少。
-
更新无效后,不会报告群集 CR (REC) 错误 (RED-25542)
如果依次更新了两个或多个无效的 CR 资源,则不会报集群 CR 规格错误。
-
无法访问的集群的状态为 running (RED-32805)
当集群处于 unreachable 状态时,状态仍为
running
而不是作为错误报告。 -
故障时就绪探针不正确 (RED-39300)
STS Readiness 探测在运行时不会将节点标记为 “not ready”
rladmin status
节点故障时。 -
副本集上缺少角色 (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 集群升级到较新版本。
-
Hashicorp Vault 集成 - 不支持 Gesher (RED-55080)
目前没有解决方法。
-
REC 可能会在初始启动时报告错误状态 (RED-61707)
目前除了忽略这些错误外,没有其他解决方法。
-
在规范中使用十进制值时出现 PVC 大小问题 (RED-62132)
此问题的解决方法是确保对 PVC 大小使用整数值。
-
遵循旧版快速入门指南会导致由于无法识别的内存字段名称而导致创建 REDB 时出现问题 (RED-69515)
解决方法是使用在线提供的快速入门文档的较新(当前)修订版。
-
autoUpgrade
在以下情况下,设置为 true 可能会导致 BDB 意外升级redisUpgradePolicy
设置为 true (RED-72351)如果您的部署受到影响,请联系支持人员。
-
使用路由从外部访问集群时,在 OpenShift 上更新凭证的过程可能会有问题(RS 问题)(RED-73251)(RED-75329) 要解决此问题,请从 K8s 集群中访问 API。
-
在 Windows 上,
log_collector
无法识别-n
旗帜 (RED-83532)要解决此问题,请使用其他作系统。
-
在使用 Nginx 入口控制器时,如果入口类注释不完全是 “nginx”,则主动-主动数据库创建将失败 (RED-83070)