Redis Enterprise for Kubernetes 发行说明 6.4.2-6(2023 年 6 月)

Redis Enterprise K8s 6.4.2-6 版本支持 Redis Enterprise Software 6.4.2,并包含新功能和功能改进。

适用于 Kubernetes 的 Redis Enterprise

概述

Redis Enterprise K8s 6.4.2-6 版本支持 Redis Enterprise Software 6.4.2,并包含新功能和功能改进。

下面介绍了主要功能、错误修复和已知限制。

图像

  • Redis 企业版redislabs/redis:6.4.2-81
  • 作员redislabs/operator:6.4.2-6
  • 服务索具redislabs/k8s-controller:6.4.2-6

OpenShift 镜像

  • Redis 企业版registry.connect.redhat.com/redislabs/redis-enterprise:6.4.2-81.rhel8-openshift(或redislabs/redis-enterprise:6.4.2-81.rhel7-openshift如果从 RHEL 7 升级)
  • 作员registry.connect.redhat.com/redislabs/redis-enterprise-operator:6.4.2-6
  • 服务索具registry.connect.redhat.com/redislabs/services-manager:6.4.2-6

OpenShift OLM 捆绑包

  • Redis Enterprise 运营商捆绑包版本:v6.4.2-6

新功能

  • 主动-主动数据库控制器正式发布,用于声明式配置支持

功能改进

  • 主动-主动控制器改进包括添加对以下内容的支持:
    • 通过 OLM 配置
    • 证书globalConfiguration
    • 备份globalConfiguration
    • 模块 (预览版)
    • Hashicorp Vault 秘密
    • 指示同步失败到 REAADB
  • 添加了对 separate 的支持podAnnotations对于 Redis Enterprise 容器,允许设置appArmor异常
  • 时区可以作为环境变量传递到 Redis Enterprise Pod 中
  • REDB 命名空间可以被标记,而无需 operator 进入CrashLoopBackoff
  • 添加了对 K8s 1.27 的支持
  • 添加了对 EKS 的 K8s 1.25 的支持
  • 添加了对 AKS 和 GKE 的 K8s 1.26 的支持
  • 改进了日志收集器执行日志,筛选出空文件,捕获卷附件,用于禁用 RS 捕获调试信息包的选项
  • 添加extraEnvVars字段以支持 RS Pod 的环境变量
  • 将 RKE2 更改为 Rancher 发行版的默认值

修复的 bug

  • 无法删除处于无效状态的 REC (RED-78124)
  • 删除 REC 后未删除 OpenShift 路由 (RED-94121)
  • 源集群中的 REAADB 密钥状态未更新 (RED-96296)
  • 未被允许拒绝的无效 REAADB 可能会在应用后被删除 (RED-96300)
  • 作员在启动时记录有关缺少节点权限的错误 (RED-98227)
  • 作员继续循环更新 REC 证书 (RED-98586)
  • 尝试将多字节字符写入文件时,日志收集器脚本可能会崩溃 (RED-99869)
  • 使用旧 kubectl 时,日志收集器无法包含 RS debuginfo (RED-101170)
  • 由于 OLM 表单视图中需要 LDAP 配置,REC 创建失败 (RED-100517)
  • 如果在升级开始时 Pod 0 不是 Master 节点,则在 OpenShift 上升级到 6.4.2(或 6.2.18)将失败 (RED-102100)
  • 从 6.2.8-15(及更低版本)升级到 6.2.12-1(及更高版本)可能会破坏数据库 (RED-102241)

API 变更

RedisEnterpriseCluster (REC) API 中的以下字段已更改:

  • containerTimezoneSpec.timezoneName添加了在 Redis Enterprise Pod 上配置时区

  • hostAliases添加了向 Redis Enterprise pod 添加条目/etc/hosts

  • redisEnteprisePodAnnotations添加了以指定只应在 Redis Enterprise 容器组(Redis Enterprise Pod)上设置的注释

  • ingressOrRouteSpecenabled (已启用) 可在未启用 Alpha 功能的情况下使用

  • extraEnvVars为高级用户添加了向 Redis Enterprise Pod 添加环境变量的功能

  • ServicesRiggerConfigurationSpec.podAnnotations添加了指定只应在 Service Rigger Pod 上设置的注释

  • 添加了以下自定义资源定义:

兼容性说明

已弃用的功能

  • 对高级准入控制配置 Gesher 的支持已弃用。

支持的发行版

下表显示了此版本发布时支持的发行版。您还可以在 支持的 Kubernetes 发行版中找到此列表。

Kubernetes 版本 1.22 1.23 1.24 1.25 1.26 1.27
社区 Kubernetes 荒废的 支持 支持 支持 支持*
亚马逊 EKS 荒废的 荒废的 支持 支持*
Azure AKS 荒废的 支持 支持 支持*
谷歌 GKE 荒废的 荒废的 支持 支持 支持*
牧场主 2.6 荒废的 荒废的 支持
牧场主 2.7 荒废的 支持
VMware TKG 1.6 版 荒废的 荒废的
OpenShift 版本 4.9 4.10 4.11 4.12
荒废的 支持 支持
VMware TKGI 版本 1.13 1.14 1.15
荒废的 荒废的 支持

* 此版本中添加的支持

注意:
Redis Enterprise for Kubernetes 现在使用 RKE2 作为 Rancher 发行版的默认版本。

升级前

请注意,此版本中包含的以下更改会影响升级过程。在升级到 6.4.2-6 之前,请仔细阅读。

  • 验证 WebhookConfiguration

    该版本使用新的ValidatingWebhookConfiguration资源将redb-admissionwebhook 资源。要使用版本 6.4.2-4 或更高版本,请删除旧的 Webhook 资源并应用新文件。有关说明,请参阅升级 Redis 集群

  • OpenShift SCC

    此版本包括一个新的 SCC (redis-enterprise-scc-v2),您需要在升级之前绑定到您的服务账户。如果跳过此步骤,则运行版本 6.2.12 或更早版本升级到版本 6.2.18 或更高版本的 OpenShift 集群可能会卡住。有关详细信息,请参阅升级 Redis Enterprise 集群 (REC)。

已知限制

新的限制

  • 修补缺少密钥或 RERC 的 REAADB 时,准入控制器可能不会发出警报 (RED-104463)从规范中删除密钥并创建缺少的密钥,然后再次重新修补 REAADB。

  • REAADB 更改可能会失败,并显示“网关超时”错误,主要在 OpenShift 上 (RED-103048)重试该作。

  • 当服务创建因服务已存在而失败时,会出现误导性错误provided IP is already allocated“ (RED-100669)手动删除服务。

  • 创建 REC 期间的现有 OpenShift 路由可能会阻止 REC 启动 (RED-100668)手动删除路由。

  • 直接在 Redis Enterprise 软件上创建两个同名数据库将导致服务被删除,并且数据库将不可用 (RED-99997)避免重复数据库名称。通过 K8s 创建数据库已进行验证以防止这种情况。

  • 安装 Operator 捆绑包时会产生警告:Warning: would violate PodSecurity "restricted: v1.24"(红色-97381)忽略该警告。此问题在 Red Hat 官方文档中记录为良性。

现有限制

  • RERC 资源必须具有唯一名称 (<rec-name>/<rec-namespace>) (红色-96302)

  • 准入不会阻止 REAADBshardCount超过许可证配额。(红色-96301)修复 REAADB 的问题并重新应用。

  • 主动-主动安装程序删除可能会使服务或路由保持不被删除 (RED-77752)如果遇到此问题,请手动删除服务或路由。

  • autoUpgrade设置为true在以下情况下可能会导致意外的 BDB 升级redisUpgradePolicy设置为true(红色-72351)如果您的部署受到影响,请联系支持人员。

  • 遵循前面的快速入门指南版本,由于内存字段名称无法识别,导致创建 REDB 时出现问题 (RED-69515)解决方法是使用 Quick Start 的较新 (当前) 修订版。

  • 在规范中使用十进制值时出现 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 部署的 Operator 中,如果名称不是 “rec”,则集群部署将失败。通过 OLM 部署 Operator 时,安全上下文约束 (scc) 将绑定到特定的服务账户名称(即“rec”)。解决方法是将集群命名为 “rec”。

  • 故障时就绪探针不正确 (RED-39300)STS Readiness 探测在运行时不会将节点标记为 “not ready”rladmin status节点故障时。

  • 内部 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 工作节点的使用率。

  • 无法访问的集群的状态为 running (RED-32805)当集群处于 unreachable 状态时,状态保持不变running而不是触发错误。

  • 较长的集群名称会导致路由被拒绝 (RED-25871)超过 20 个字符的集群名称将导致路由配置被拒绝,因为域名的主机部分超过 63 个字符。解决方法是将集群名称限制为 20 个字符或更少。

  • 无效更新后,不会报告群集 CR (REC) 错误 (RED-25542)如果依次更新了两个或多个无效的 CR 资源,则不会报集群 CR 规格错误。

安全

有关与 CVE 相关的修复列表,请参阅 Redis Enterprise 6.4.2-81 发行说明

为本页评分
返回顶部 ↑