3.3. 注册 JMX MBeans


数据中心可以注册可用于收集统计信息并执行管理操作的 JMX MBeans。您还必须启用统计信息,否则 Data Grid 为 JMX MBeans 中的所有统计属性提供 0 值。

流程

  1. 打开您的 Data Grid 配置进行编辑。
  2. jmx 元素或对象添加到缓存容器中,并将 true 指定为 enabled 属性或字段的值。
  3. 添加 domain 属性或字段,并根据需要指定公开 JMX MBeans 的域。
  4. 保存并关闭您的客户端配置。

JMX 配置

XML

<infinispan>
  <cache-container statistics="true">
    <jmx enabled="true"
         domain="example.com"/>
  </cache-container>
</infinispan>
Copy to Clipboard Toggle word wrap

JSON

{
  "infinispan" : {
    "cache-container" : {
      "statistics" : "true",
      "jmx" : {
        "enabled" : "true",
        "domain" : "example.com"
      }
    }
  }
}
Copy to Clipboard Toggle word wrap

YAML

infinispan:
  cacheContainer:
    statistics: "true"
    jmx:
      enabled: "true"
      domain: "example.com"
Copy to Clipboard Toggle word wrap

GlobalConfigurationBuilder

GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
   .jmx().enable()
   .domain("org.mydomain");
Copy to Clipboard Toggle word wrap

3.3.1. 启用 JMX 远程端口

提供唯一的远程 JMX 端口,以通过 JMXServiceURL 格式的连接公开 Data Grid MBeans。

您可以使用以下方法之一启用远程 JMX 端口:

  • 启用需要向其中一个 Data Grid 服务器安全域进行身份验证的远程 JMX 端口。
  • 使用标准 Java 管理配置选项手动启用远程 JMX 端口。

先决条件

  • 对于带有身份验证的远程 JMX,请使用默认安全域定义用户角色。用户必须具有具有读/写访问权限的 controlRole,或者具有只读访问权限的 monitorRole 才能访问任何 JMX 资源。

流程

使用以下方法之一启动启用了远程 JMX 端口的 Data Grid 服务器:

  • 通过端口 9999 启用远程 JMX。

    bin/server.sh --jmx 9999
    Copy to Clipboard Toggle word wrap
    警告

    在生产环境中不适用于禁用 SSL 的远程 JMX。

  • 在启动时将以下系统属性传递给 Data Grid 服务器。

    bin/server.sh -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
    Copy to Clipboard Toggle word wrap
    警告

    启用没有身份验证或 SSL 的远程 JMX 不安全,在任何环境中都不推荐使用。禁用身份验证和 SSL 允许未授权用户连接到服务器并访问托管的数据。

3.3.2. Data Grid MBeans

Data Grid 会公开代表可以管理资源的 JMX MBeans。

org.infinispan:type=Cache
可用于缓存实例的属性和操作。
org.infinispan:type=CacheManager
用于缓存管理器的属性和操作,包括数据网格缓存和集群健康统计信息。

有关可用 JMX MBeans 的完整列表以及描述和可用操作和属性,请参阅 Data Grid JMX 组件 文档。

3.3.3. 在自定义 MBean 服务器中注册 MBeans

数据中心包含一个 MBeanServerLookup 接口,您可以使用它在自定义 MBeanServer 实例中注册 MBeans。

先决条件

  • 创建 MBeanServerLookup 实施,以便 getMBeanServer () 方法返回自定义 MBeanServer 实例。
  • 配置 Data Grid 以注册 JMX MBeans。

流程

  1. 打开您的 Data Grid 配置进行编辑。
  2. mbean-server-lookup 属性或字段添加到缓存管理器的 JMX 配置中。
  3. 指定 MBeanServerLookup 实现的完全限定名称(FQN)。
  4. 保存并关闭您的客户端配置。
JMX MBean 服务器查找配置

XML

<infinispan>
  <cache-container statistics="true">
    <jmx enabled="true"
         domain="example.com"
         mbean-server-lookup="com.example.MyMBeanServerLookup"/>
  </cache-container>
</infinispan>
Copy to Clipboard Toggle word wrap

JSON

{
  "infinispan" : {
    "cache-container" : {
      "statistics" : "true",
      "jmx" : {
        "enabled" : "true",
        "domain" : "example.com",
        "mbean-server-lookup" : "com.example.MyMBeanServerLookup"
      }
    }
  }
}
Copy to Clipboard Toggle word wrap

YAML

infinispan:
  cacheContainer:
    statistics: "true"
    jmx:
      enabled: "true"
      domain: "example.com"
      mbeanServerLookup: "com.example.MyMBeanServerLookup"
Copy to Clipboard Toggle word wrap

GlobalConfigurationBuilder

GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
   .jmx().enable()
   .domain("org.mydomain")
   .mBeanServerLookup(new com.acme.MyMBeanServerLookup());
Copy to Clipboard Toggle word wrap

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部