Redis Enterprise for Kubernetes 发行说明 6.2.8-11(2022 年 1 月)
支持 Istio 作为入口控制器、K8s 1.22 (AKS、kOps、GKE)、OpenShift 4.9
概述
Redis Enterprise K8s 6.2.8-11 版本为Redis Enterprise Software 版本 6.2.8提供支持,并包含多项增强功能和错误修复。
下面介绍了主要的新功能、错误修复和已知限制。
图片
此版本包括以下容器映像:
- Redis Enterprise:
redislabs/redis:6.2.8-53或redislabs/redis:6.2.8-53.rhel7-openshift - 操作员:
redislabs/operator:6.2.8-11 - 服务装配工:
redislabs/k8s-controller:6.2.8-11或redislabs/services-manager:6.2.8-11(在 Red Hat 注册表上)
功能改进
- Istio 网关/虚拟服务支持作为入口控制器。请注意,对于 Active-Active 数据库,操作员不会创建入口规则,这些规则应手动配置。测试的 Istio 版本是 Istio 1.12.0 (RED-64020)
- 支持 K8s 1.22(AKS、kOps、GKE)和 OpenShift 4.9(RED-64016)
- 支持 REC 中的 pod 终止宽限期定制(高级用例)(RED-67217)
- 改进了文档中 SCC 配置步骤的安全粒度 (RED-67321)
- 在集群上创建两个同名数据库时的行为发生变化。操作员避免为它们创建服务,以防止可能的损坏 (RED-64535)
- 改进了有关使用 Hashicorp Vault 时更改集群凭据的文档 (RED-65304)
修复错误
- 升级的 Go 依赖项标记为易受攻击(RED-63858、RED-68651)
- 避免在 K8s 1.21 上用弃用通知淹没操作员日志(RED-67544)
- 修复了在 Microsoft Windows 上运行的日志收集器实用程序问题 (RED-67682)
- 修复了使用 Windows 行尾作为 TLS 证书时对 RS 集群进行过度更新的问题 (RED-67874)
已知限制
大型集群
在具有超过 9 个 REC 节点的集群上,Kubernetes 升级在某些情况下可能会导致 Redis 集群无响应。6.4.2-5 版本中提供了修复。在升级 Kubernetes 集群之前,请先将您的操作员版本升级到 6.4.2-5 或更高版本。(RED-93025)
使用捆绑软件升级kubectl apply -f失败(RED-69515)
使用捆绑软件升级kubectl apply -f失败,出现以下错误:
The CustomResourceDefinition "redisenterpriseclusters.app.redislabs.com" is invalid: spec.preserveUnknownFields: Invalid value: true: must be false in order to use defaults in the schema
解决方法:升级前,将 REC 自定义资源上的“spec.preserveUnknownFields”值设置为 false。您可以使用以下命令:
kubectl patch crd redisenterpriseclusters.app.redislabs.com -p $'spec:\n preserveUnknownFields: false'
长集群名称导致路由被拒绝 (RED-25871)
集群名称长度超过 20 个字符会导致路由配置被拒绝,因为域名的主机部分将超过 63 个字符。解决方法是将集群名称限制为 20 个字符或更少。
无效更新后未报告集群 CR(REC)错误(RED-25542)
如果连续更新两个或更多无效的 CR 资源,则不会报告集群 CR 规范错误。
无法访问的集群处于运行状态 (RED-32805)
当集群处于不可达状态时,该状态保持不变,running而不是被报告为错误。
故障时就绪探测不正确(RED-39300)
在节点发生故障时,STS 就绪情况探测不会将节点标记为“未就绪” rladmin status。
副本集上缺少角色(RED-39002)
该redis-enterprise-operator角色缺少对副本集的权限。
OpenShift 3.11 不支持私有注册表(RED-38579)
OpenShift 3.11 不支持 DockerHub 私有注册表。这是一个已知的 OpenShift 问题。
内部 DNS 和 Kubernetes DNS 可能存在冲突 (RED-37462)
集群mdns_server和 K8s DNS 之间可能会发生 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 部署的操作员中,如果名称不是“rec”,则集群部署将失败。当通过 OLM 部署操作员时,安全上下文约束 (scc) 会绑定到特定的服务帐户名称(即“rec”)。解决方法是将集群命名为“rec”。
REC 集群无法在时钟不同步的 Kubernetes 集群上启动 (RED-47254)
当 REC 集群部署在时钟不同步的 Kubernetes 集群上时,REC 集群无法正确启动。解决方法是使用 NTP 同步底层 K8s 节点。
删除已部署 REC 的 OpenShift 项目可能会挂起 (RED-47192)
当 REC 集群部署在项目(命名空间)中并且具有 REDB 资源时,必须先删除 REDB 资源,然后才能删除 REC。因此,在删除 REDB 资源之前,项目删除将挂起。解决方法是先删除 REDB 资源,然后再删除 REC。之后,您可以删除项目。
REC extraLabels 不适用于 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 时出现问题
解决方法是使用在线提供的快速入门文档的较新(当前)修订版。
兼容性说明
请参阅支持的 Kubernetes 发行版以获取受支持的发行版的完整列表。
现已支持
此版本增加了对以下内容的支持:
- 适用于 GKE、AKS 和 kOps 的 K8s 1.22
- OpenShift 4.9(使用 K8s 1.22)
已弃用
- Rancher 2.5/K8s 1.17 支持已弃用
不再受支持
此版本取消了对以下内容的支持:
- Rancher 2.4(之前已弃用)