Data Grid Operator 8.3 发行注记

Red Hat Data Grid 8.3

获取 Data Grid Operator 8.3 的发行信息

Red Hat Customer Content Services

摘要

了解 Data Grid Operator 8.3 中的功能和增强,以及已知问题。

Red Hat Data Grid

数据网格是一个高性能、分布式内存数据存储。

无架构数据结构
灵活性将不同的对象存储为键值对。
基于网格的数据存储
设计为在集群间分发和复制数据。
弹性扩展
动态调整节点数,以在不中断服务的情况下满足需求。
数据互操作性
在来自不同端点的网格中存储、检索和查询数据。

data Grid 文档

有关 Data Grid 的文档可以通过红帽客户门户网站获得。

数据网格下载

访问 Data Grid Software Downloads on the Red Hat Customer Portal(Red Hat Customer Portal)。

注意

您必须有一个红帽帐户才能访问和下载数据网格软件。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始: master、slave、blacklist 和 whitelist。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息

第 1 章 data Grid Operator 8.3

获取有关 Data Grid Operator 8.3 的版本详情,以及有关问题的信息。

1.1. data Grid Operator 8.3.7

8.3.7 中的新内容。

禁用 FIPS 模式

您可以在 Infinispan CR 中禁用 FIPS 模式,以便使用 JVM 的任何组件都可以忽略 FIPS 模式。这意味着,您的 Data Grid 实例可以在任何启用了 FIPS 模式的 OpenShift 集群上运行。

增强的双向协调

Data Grid Operator 8.3.7 提高了双向协调机制,使其包含幂等的创建和检索功能。幂等功能将双向协调与 Kubernetes 约定一致。

请参阅 资源协调 (Data Grid Operator)

更新了集群视图响应

现在,当从 Cache 自定义资源(CR)创建缓存时,Data Grid Operator 8.3.7 可以将 status 字段更新为 False

验证和变异 Webhook

data Grid Operator 8.3.7 包含验证和变异 Webhook。Webhook 会更改 Kubernetes API 的行为,以便此 API 可以立即拒绝任何带有无效规格的 CR。

1.2. data Grid Operator 8.3.4

8.3.4 中的新功能.

使用 Data Grid Operator 进行热 Rod 滚动升级

从 8.3.4 版本起,您可以在新版本可用的情况下升级 Data Grid 集群,而无需停机和数据丢失。关闭升级仍然是默认的升级类型。有关如何启用 Hot Rod 滚动升级的详情,请参考 升级 Data Grid 集群

重要

热进行滚动升级作为技术预览提供。如需更多信息,请参阅红帽技术预览功能支持范围

用于创建的资源的用户定义的注解

此发行版本引入了可配置的注解,可用于组织和监控 Data Grid 资源。

提高性能,避免不必要的 iptable 规则

Data Grid Operator 端点现在作为一个无头服务提供。无头服务可避免创建多个 iptable 规则,它们可能会影响集群的性能。

OpenShift 路由作为公开类型进行跨站点复制

此发行版本可让您使用 OpenShift Route 作为新的公开类型,用于跨站点复制。您可以使用 OpenShift Route 处理 Data Grid 集群间备份操作的网络流量。

data Grid Operator 资源协调

Data Grid Operator 8.3.4 引入了双向协调,它允许与 OpenShift 自定义资源(CR)定义同步数据网格缓存。双向协调将 CR 与通过 Data Grid 控制台、命令行界面(CLI)或其他客户端应用程序对 Data Grid 资源做出的更改同步,反之亦然。

要执行双向协调,必须在 Data Grid 服务中启用 configListener

配置增强

配置跨站点复制时,您不再需要在 Data Grid CR 中指定位置。Data Grid Operator 在没有配置站点位置的情况下配置 Data Grid 服务。

1.3. data Grid Operator 8.3.1

8.3.1 中的新内容。

为 Data Grid Operator 部署更新了 OpenShift 捆绑包

用于 Data Grid Operator 部署的 OpenShift 捆绑包包括使用 OpenJDK 11 构建的镜像,以支持多个系统架构,包括:

  • x86 (x86_64)
  • s390x (IBM Z)
  • ppc64le (IBM Power Systems)

OpenJ9 弃用

任何用于 IBM Z 和 IBM Power Systems 的 OpenJ9 镜像将被弃用。

如需更多信息,请参阅 Power 和 Z OpenShift Images 中的 Java 更改

内存和 CPU 请求和限值的改进

此发行版本会增加在创建 Data Grid pod 时 Data Grid Operator 请求的内存和 CPU 资源的默认值。

  • 1Gi 内存。
  • CPU 请求将被绑定。

另外,您也可以在 Infinispan CR 中以 < limit>:<requests& gt; 格式分配资源,如下所示:

spec:
  container:
    cpu: "2000m:1000m"
    memory: "2Gi:1Gi"

更新了就绪度和存活度探测,以提高性能

对就绪度和存活度探测的设置进行了更新,以便 Data Grid 集群可以更早地可用。

1.4. Data Grid Operator 8.3 GA

8.3 GA 中的新功能.

Data Grid Operator 代码库的大量改进

Data Grid 团队对 Data Grid Operator 代码库的内部改进进行了大量时间和精力来启用未来改进。

完全支持原生 CLI 安装和操作

为改进安装和操作体验,Data Grid 8.3 作为 oc 客户端插件提供对原生 CLI 的完整支持。使用以下命令安装原生 CLI 扩展了 oc 客户端:

命令

描述

oc infinispan install

创建 Data Grid Operator 订阅并默认安装到全局命名空间中。

oc infinispan create cluster

创建 Data Grid 集群。

oc infinispan get cluster

显示正在运行的 Data Grid 集群。

oc infinispan shell

在 Data Grid 集群中启动交互式远程 shell 会话。

oc infinispan delete cluster

删除 Data Grid 集群。

oc infinispan uninstall

删除 Data Grid Operator 安装和所有受管资源。

自定义 Data Grid Server 配置

现在,您可以在 ConfigMap 中添加 Data Grid Server 配置,并使其可用于 Data Grid Operator。然后,Data Grid Operator 可将自定义配置应用到您的 Data Grid 集群。

用于跨站点复制的可配置中继节点数

Data Grid 集群现在使用路由器 pod(即 GossipRouter 实例)来协调 RELAY 消息进行跨站点复制。您还可以使用 site. local.maxRelayNodes 字段配置每个集群中可向路由器 pod 发送 RELAY 消息的 pod 数量。

用于跨站点连接的 TLS 安全性

添加密钥存储和可选的信任存储,以加密 RELAY 消息和安全 Data Grid 集群之间的跨站点复制流量。

缓存服务类型弃用

Cache 服务类型旨在提供一种便捷方式,使用最小配置创建低延迟数据存储。Infinispan CRD 上的附加开发显示,Cache CR 提供了实现此目标的一种更好方法,从而让用户更多选择,减少部署开销。因此,在下一个版本的 Infinispan CRD 中计划将缓存服务类型删除,不再处于主动开发中。

红帽建议为集群配置 DataGrid 服务类型。DataGrid 服务类型将继续从新功能和改进工具中受益,以自动化复杂的操作,如集群升级和数据迁移。

您可以创建 DataGrid 服务集群,如下所示:

  • Infinispan CR 中设置 spec.service.type: DataGrid
  • 使用 -Pservice.type=DataGrid 参数以及原生 CLI 插件。

1.5. Data Grid Operator 8.3.x 发行信息

下表提供了 Data Grid Operator 的详细信息。

注意

Data Grid Operator 版本并不总是与 Data Grid 版本直接对应,因为发布计划不同。

data Grid Operator 版本data Grid 版本功能

8.3.8

8.3.1

修复安全漏洞。

8.3.7

8.3.1

包括几个程序错误修复。有关新功能,请参阅 Data Grid Operator 8.3.7

8.3.6

8.3.1

包括几个程序错误修复。

8.3.5

8.3.1

修复安全漏洞。

8.3.4

8.3.1

请参阅 Data Grid Operator 8.3.4

8.3.3

8.3.0

修复安全漏洞。

8.3.2

8.3.0

修复安全漏洞。

8.3.1

8.3.0

* 为 Data Grid Operator 部署更新捆绑包。

* 增加默认内存和 CPU 限值。

* 在 Infinispan CRD 中添加用于 requests 和 limits 的单独设置。

* 更新就绪度和存活度探测,以提高性能。

8.3.0

8.3.0

请参阅 Data Grid Operator 8.3 GA

第 2 章 已知和修复问题

了解 Data Grid Operator 已知的问题,并了解哪些问题已被解决。

2.1. Data Grid Operator 部署已知问题

本节论述了影响 Data Grid Operator 管理的 Data Grid 集群的问题。有关 Data Grid 的完整详情,您应该参考 Data Grid 8.3 发行注记

意外行为在 OOM 异常后发生

问题: JDG-3991

描述: 如果内存不足例外会导致 Data Grid Server 在 OpenShift 上终止,则可能会出现意外行为。在某些情况下,节点无法重启,并且 org.infinispan.LOCKS 进入 degraded 模式。以下异常写入 pod 日志文件:

FATAL (main) [org.infinispan.SERVER] ISPN080028: Red Hat Data Grid Server failed to start java.util.concurrent.ExecutionException: org.infinispan.manager.EmbeddedCacheManagerStartupException: org.infinispan.commons.CacheException: Initial state transfer timed out for cache org.infinispan.LOCKS on <pod-name-id>

临时解决方案: 这个问题还没有临时解决方案。您应该在 Data Grid 缓存中配置驱除,以帮助避免 OOM 异常。

2.2. 修复了 Data Grid Operator 8.3.0

Data Grid Operator 8.3.0 包括以下显著的修复:

2.3. 修复了 Data Grid Operator 8.3.1

data Grid Operator 8.3.1 包括以下显著的修复:

  • JDG-5078 Ensure 与 sidecar 注入兼容

2.4. 修复了 Data Grid Operator 8.3.4

data Grid Operator 8.3.4 包括以下显著的修复:

  • JDG-5171 Operator 版本未定义
  • Data Grid Operator 进行升级时,JDG-5108 Data Grid 恢复过程会失败
  • JDG-5119 Deadlock 当使用 propagationPolicy = foreground 删除 Infinispan CR时发生
  • JDG-4304 Data Grid Operator 不会反映 EndpointEncryption 字段的变化

2.5. 修复了 Data Grid Operator 8.3.6

Data Grid Operator 8.3.6 包括以下显著的修复:

2.6. 修复了 Data Grid Operator 8.3.7 中

data Grid Operator 8.3.7 包括以下显著的修复:

  • JDG-5425 为角色指定多个授权可能会导致服务器启动失败。
  • JDG-5410 指定证书 secret 的 tls.keytls.crt 密钥会导致服务器启动失败。
  • 在没有 pod 的集群时,JDG-5405 Initiating a shudown 会导致 OpenShift 上的 Pod Status 图表出现问题。

第 3 章 OpenShift 上的数据网格

3.1. Data Grid 8.3 镜像

Data Grid 8.3 包含两个容器镜像,即 Data Grid Operator 镜像和 Data Grid Server 镜像。

Data Grid 镜像托管在 Red Hat Container Registry 上,您可以在其中找到镜像的健康索引以及每个标记版本的信息。

自定义数据网格部署

红帽不支持通过 Source-to-Image(S2I)进程或 ConfigMap API 自定义 Red Hat Container Registry 中的任何 8.3 镜像。

因此无法使用自定义:

  • 发现协议
  • JGroup SYM_ENCRYPTASYM_ENCRYPT 加密机制

3.2. OpenShift 上的嵌入式缓存

在 OpenShift 上运行的应用程序中使用内嵌数据网格缓存(在以前的版本中被称为 Library Mode)中,仅用于特定用途:

  • 在自定义 Java 应用程序中使用本地或分布式缓存来保持对缓存生命周期的完全控制。另外,在使用仅适用于嵌入式数据网格(如分布式流)的功能时。
  • 减少网络延迟以提高缓存操作速度。

Hot Rod 协议提供近缓存功能,可实现与标准客户端-服务器架构相同的性能。

要求

在 OpenShift 上运行的应用程序中嵌入数据网格需要您使用发现机制,以便 Data Grid 节点可以组成集群来复制和分发数据。

红帽只支持 DNS_PING 作为集群发现机制。

DNS_PING 会公开一个名为 ping 的端口,Data Grid 节点用于执行发现和加入集群。TCP 是 ping 端口唯一支持的协议,如下例所示,在 OpenShift 中:

spec:
  ...
  ports:
    - name: ping
      port: 8888
      protocol: TCP
      targetPort: 8888

限制

在 OpenShift 上运行的应用程序中嵌入了数据网格,也有一些特定的限制:

  • 目前不支持持久缓存存储。
  • 嵌入式数据网格不支持 UDP。

自定义缓存服务

红帽强烈不建议嵌入了 Data Grid,以构建自定义缓存服务器来处理远程客户端请求。为了便于定期使用,在性能改进并修复安全问题方面自动更新,您应该使用 Data Grid Operator 创建 Data Grid 集群。

法律通告

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.