Redis Enterprise for Kubernetes 7.8.2-6(2024年11月)发布说明
功能发布,包括对Redis软件7.8.2和基于RHEL9的镜像的支持。
亮点
此版本中的新内容
增强功能
- 并行启动和恢复(默认启用)(RED-117645)。
- Azure 市场部署 (RED-113029)
- 支持 Redis Software 7.8.2-34。
- 改进了模块和Redis数据库版本的升级验证(RED-132197)。
- 支持社区 Kubernetes 1.31 (RED-13549)。
- 使用日志收集器所需的新最小角色 (RED-132686)。
- 支持为Active-Active数据库更新代理证书(RED-122552)。
- 在LDAP配置中添加
directory_timeout_s
字段(RED-119079)。 - 允许为Active-Active数据库中的复制端点配置端口号(RED-113626)。
已解决的问题
- 修复了REAADB
globalConfigurations
字段的文档(RED-138727)。 - 允许在没有安装
kubectl
的情况下执行日志收集器(RED-131537)。 - 修复了rec-bulletin-board配置映射的重新创建问题(RED-130599)。
- 避免删除用户创建的运算符配置映射 (RED-129214)。
- 修复了引导程序日志中显示的错误 (RED-125776)。
- 限制对Vault的调用次数(RED-125396)。
- 修复了日志收集器检测版本的问题 (RED-121144)。
API变更
CRD | 字段 | 变更 | 描述 |
---|---|---|---|
REC | status.CertificatesUpdateStatus |
重命名 | 重命名状态字段并更改了结构 |
REC | status.state |
向枚举添加值 | runningRollingUpgrade |
REDB | spec.modulesList |
字段已启用 | 不需要设置ENABLE_ALPHA_FEATURES 来启用。 |
RERC | spec.apiPort |
已添加 | |
REDB | redb.upgradeSpec.upgradeModulesToLatest |
默认值已更改 | 现在默认值为 true |
版本变更
重大变更
基于RHEL9的镜像
-
Redis Enterprise 镜像现在基于 Red Hat Enterprise Linux 9 (RHEL9)。这意味着升级到 7.8.2-6 需要:
-
集群版本为7.4.2-2或更高版本。
-
数据库版本 7.2 或更高版本。
-
适用于您需要的任何模块的RHEL9兼容二进制文件。
请参阅Upgrade Redis Enterprise for Kubernetes以获取升级到7.8.2-6的详细步骤。
弃用
- 基于Ubuntu的镜像不再受支持。
- REDB 字段 `upgradeSpec.upgradeModulesToLatest` 已弃用。
- REDB 字段
spec.modulesList.version
已弃用。
支持的分布
下表显示了本次发布时支持的发行版。您也可以在支持的Kubernetes发行版中找到此列表。
✅ 支持 – 此版本的 Redis Enterprise Software for Kubernetes 支持此发行版。
⚠️ 已弃用 – 此版本的 Redis Enterprise Software for Kubernetes 仍然支持此发行版,但在未来的版本中将不再支持。
❌ 生命周期结束 – 此发行版的支持已终止。
以下未列出的任何发行版均不支持生产工作负载。
Kubernetes 版本 | 1.25 | 1.26 | 1.27 | 1.28 | 1.29 | 1.30 | 1.31 |
---|---|---|---|---|---|---|---|
社区 Kubernetes | ❌ | ✅ | ✅ | ✅ | ✅ | ||
Amazon EKS | ❌ | ⚠️ | ✅ | ✅ | ✅ | ||
Azure AKS | ⚠️ | ✅ | ✅ | ✅ | |||
Google GKE | ❌ | ✅ | ✅ | ✅ | |||
Rancher RKE2 | ⚠️ | ✅ | ✅ | ||||
VMware TKG 2.3 | ⚠️ | ||||||
VMware TKG 2.4 | ✅ | ✅ | |||||
OpenShift | 4.12 | 4.13 | 4.14 | 4.15 | 4.16 | ||
**** | ✅ | ✅ | ✅ | ✅ | ✅ | ||
VMWare TKGI | 1.16 | 1.17 | 1.18 | 1.19 | |||
**** | ❌ | ✅ | ✅ | ✅ |
下载
Redis Enterprise: redislabs/redis:7.8.2-34
Operator: redislabs/operator:7.8.2-6
Services Rigger: redislabs/k8s-controller:7.8.2-6
OLM operator bundle: v7.8.2-6.3
已知限制
新的限制
-
仅支持从7.4.2-2及更高版本升级。 如果您使用的是较早的版本,请在升级到7.8.2-6之前安装7.4.2-2。
-
当更改REDB字段
spec.modulesList
时,即使指定了不同的版本,版本也可能会升级到最新。 为了防止升级到最新版本,请在升级到7.8.2-6之前将spec.upgradeSpec.setModuleToLatest
设置为false
。
现有限制
-
缺少准入端点(罕见)(RED-119469) 重新启动操作员pod。
-
REDB 的“redisVersion”字段不能用于 memcached 数据库(RED-119152)
-
在修改Active-Active数据库的后缀时,当服务触发器处于终止状态时,服务触发器将循环删除和创建入口或路由资源(RED-107687) 等待服务触发器pod完成终止。
-
REAADB 更改可能会失败,并出现“网关超时”错误,主要发生在 OpenShift 上 (RED-103048) 请重试操作。
-
直接在Redis Enterprise软件上创建两个同名的数据库将导致服务被删除,数据库将不可用(RED-99997) 避免重复数据库名称。通过K8s创建数据库时会有验证机制来防止这种情况发生。
-
安装操作员捆绑包时产生警告:
Warning: would violate PodSecurity "restricted: v1.24"
(RED-97381) 忽略此警告。此问题在官方红帽文档中记录为无害。 -
RERC资源必须具有唯一的名称(RED-96302) 字符串“rec-name”/“rec-namespace”必须与Active-Active数据库中所有其他参与集群的字符串不同。
-
Admission 不会阻止 REAADB 使用超过许可证配额的
shardCount
(RED-96301) 修复 REAADB 的问题并重新应用。 -
Active-Active 控制器仅支持全局数据库选项。不支持特定于位置的配置 (RED-86490)
-
Active-Active 设置移除可能会保留未删除的服务或路由 (RED-77752) 如果遇到此问题,请手动删除服务或路由。
-
autoUpgrade
设置为true
时,当redisUpgradePolicy
设置为true
时可能会导致意外的 bdb 升级 (RED-72351) 如果您的部署受到影响,请联系支持。 -
按照之前的快速入门指南版本会导致创建REDB时出现问题,原因是无法识别的内存字段名称(RED-69515) 解决方法是使用更新(当前)版本的Kubernetes部署Redis企业软件。
-
在规范中使用小数值时的PVC大小问题 (RED-62132) 确保您使用整数值作为PVC大小。
-
REC 在初始启动时可能会报告错误状态 (RED-61707) 目前除了忽略这些错误外,没有其他解决方法。
-
Hashicorp Vault 集成 - 不支持 Gesher (RED-55080) 此问题没有解决方法。Gesher 支持已被弃用。
-
REC集群在时钟未同步的Kubernetes集群上无法启动(RED-47254) 当REC集群部署在时钟未同步的Kubernetes集群上时,REC集群无法正确启动。解决方法是使用NTP同步底层K8s节点的时钟。
-
删除部署了REC的OpenShift项目可能会挂起 (RED-47192) 当在一个项目(命名空间)中部署了REC集群并且有REDB资源时,必须先删除REDB资源才能删除REC。因此,在删除REDB资源之前,项目删除操作将会挂起。解决方法是先删除REDB资源,然后再删除REC。之后,您就可以删除项目了。
-
在基于OLM的部署中,集群必须命名为'rec'(RED-39825) 在通过OLM部署的操作符中,如果集群名称不是"rec",则集群的部署将失败。当操作符通过OLM部署时,安全上下文约束(scc)绑定到特定的服务账户名称(即"rec")。解决方法是将集群命名为"rec"。
-
失败时准备探测不正确 (RED-39300) 当在节点故障时运行
rladmin status
时,STS准备探测未将节点标记为“未就绪”。 -
内部DNS和Kubernetes DNS可能存在冲突 (RED-37462) 集群的
mdns_server
和K8s DNS之间可能存在DNS冲突。这仅影响从集群节点内部解析Kubernetes DNS名称。 -
基于K8s的5.4.10集群似乎对现有的5.4.6集群产生了负面影响(RED-37233) 将集群升级到最新版本。
-
报告的是节点CPU使用率而不是pod CPU使用率 (RED-36884) 在Kubernetes中,报告的节点CPU使用率是托管REC pod的Kubernetes工作节点的使用率。
-
无法访问的集群状态为运行中 (RED-32805) 当集群处于无法访问状态时,状态保持为
running
,而不是触发错误。 -
长集群名称导致路由被拒绝 (RED-25871) 集群名称超过20个字符将导致路由配置被拒绝,因为域名的主机部分超过了63个字符。解决方法是限制集群名称在20个字符或更少。
-
在无效更新后未报告集群CR(REC)错误(RED-25542) 如果连续更新两个或更多无效的CR资源,则不会报告集群CR规范错误。