2.2. Data Grid 服务器配置


Data Grid 提供了一个可扩展的数据层,可让您智能、高效地使用可用的计算资源。为了通过数据网格服务器部署实现此目的,配置被分为两个层: dynamic 和 static。

动态配置

动态配置是可变的,在运行时更改,在创建缓存时,向集群添加和删除节点。

部署 Data Grid Server 集群后,您可以通过 Data Grid CLI、Data Grid Console 或 Hot Rod 和 REST 端点创建缓存。Data Grid Server 将这些缓存永久存储为跨节点分布的集群状态的一部分。每个加入节点都会收到在发生更改时,Data Grid Server 会在所有节点间自动同步的完整集群状态。

静态配置

静态配置不可变,在运行时保持不变。

在设置底层机制时,您可以定义静态配置,如集群传输、身份验证和加密、共享数据源等。

默认情况下,Data Grid 服务器使用 $RHDG_HOME/server/conf/infinispan.xml 进行静态配置。

配置的根元素是 infinispan,并声明两个基本模式:

<infinispan
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:infinispan:config:13.0 https://infinispan.org/schemas/infinispan-config-13.0.xsd
                            urn:infinispan:server:13.0 https://infinispan.org/schemas/infinispan-server-13.0.xsd"
        xmlns="urn:infinispan:config:13.0"
        xmlns:server="urn:infinispan:server:13.0">
Copy to Clipboard Toggle word wrap
  • urn:infinispan:config 模式验证缓存容器等核心 Infinispan 功能的配置。
  • urn:infinispan:server 模式验证 Data Grid Server 的配置。
缓存容器配置

您可以使用 cache-container 元素配置 CacheManager 接口,它提供管理缓存生命周期的机制:

<!-- Creates a cache manager named "default" that exports statistics. -->
<cache-container name="default"
                 statistics="true">
  <!-- Defines cluster transport properties, including the cluster name. -->
  <!-- Uses the default TCP stack for inter-cluster communication. -->
  <transport cluster="${infinispan.cluster.name}"
             stack="${infinispan.cluster.stack:tcp}"
             node-name="${infinispan.node.name:}"/>
</cache-container>
Copy to Clipboard Toggle word wrap

cache-container 元素也可以包含以下配置元素:

  • 缓存管理器 的安全性
  • MicroProfile 兼容指标的指标。
  • JMX 用于 JMX 监控和管理.
重要

在以前的版本中,您可以在 Data Grid 配置中定义多个 cache-container 元素,以便在不同的端点上公开缓存容器。

在 Data Grid 8 中,不得配置多个缓存容器,因为 Data Grid CLI 和 Console 只能处理每个集群的一个缓存管理器。但是,如果需要,您可以将缓存容器的名称更改为比"default"更有意义的环境。

您应该使用单独的 Data Grid 集群来实现多租户,以确保缓存管理器不会相互干扰。

服务器配置

您可以使用 server 元素配置底层 Data Grid 服务器机制:

<server>
  <interfaces>
    <interface name="public"> 
1

      <inet-address value="${infinispan.bind.address:127.0.0.1}"/> 
2

    </interface>
  </interfaces>

  <socket-bindings default-interface="public" 
3

                   port-offset="${infinispan.socket.binding.port-offset:0}"> 
4

    <socket-binding name="default" 
5

                    port="${infinispan.bind.port:11222}"/> 
6

    <socket-binding name="memcached" port="11221"/> 
7

  </socket-bindings>

  <security>
     <security-realms> 
8

        <security-realm name="default"> 
9

           <server-identities> 
10

              <ssl>
                <keystore path="application.keystore" 
11

                          keystore-password="password"
                          alias="server"
                          key-password="password"
                          generate-self-signed-certificate-host="localhost"/>
              </ssl>
           </server-identities>
           <properties-realm groups-attribute="Roles"> 
12

              <user-properties path="users.properties" 
13

                               relative-to="infinispan.server.config.path"
                               plain-text="true"/> 
14

              <group-properties path="groups.properties" 
15

                                relative-to="infinispan.server.config.path" />
           </properties-realm>
        </security-realm>
     </security-realms>
  </security>

  <endpoints socket-binding="default" security-realm="default" /> 
16


</server>
Copy to Clipboard Toggle word wrap
1
创建名为"public"的接口,使服务器在您的网络上可用。
2
127.0.0.1 环回地址用于公共接口。
3
将公共接口绑定到 Data Grid Server 端点侦听传入客户端连接的网络端口。
4
为网络端口指定偏移 0。
5
创建名为 "default" 的套接字绑定。
6
为套接字绑定指定端口 11222
7
为 Memcached 连接器在端口 11221 创建套接字绑定。
8
定义保护端点不受网络入侵的安全域。
9
创建名为"default"的安全域。
10
配置用于身份验证的 SSL/TLS 密钥存储。
11
指定包含服务器证书的密钥存储。
12
配置"默认"安全域,以使用属性文件来定义将用户映射到角色的用户和组。
13
命名包含 Data Grid 用户的属性文件。
14
指定 users.properties 文件的内容存储为纯文本。
15
命名将 Data Grid 用户映射到角色的属性文件。
16
使用 Hot Rod 和 REST 连接器配置端点。

本例显示隐式 hotrod-connectorrest-connector 元素,这是 Data Grid 8.2 的默认设置。
8.0 和 8.1 中的数据网格服务器配置使用明确声明的 Hot Rod 和 REST 连接器。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat