3.3. 注册 JMX MBeans
数据中心可以注册可用于收集统计信息并执行管理操作的 JMX MBeans。您还必须启用统计信息,否则 Data Grid 为 JMX MBeans 中的所有统计属性提供 0 值。
流程
- 打开您的 Data Grid 配置进行编辑。
-
将
jmx元素或对象添加到缓存容器中,并将true指定为enabled属性或字段的值。 -
添加
domain属性或字段,并根据需要指定公开 JMX MBeans 的域。 - 保存并关闭您的客户端配置。
JMX 配置
XML
JSON
YAML
GlobalConfigurationBuilder
GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
.jmx().enable()
.domain("org.mydomain");
GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
.jmx().enable()
.domain("org.mydomain");
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
bin/server.sh --jmx 9999Copy to Clipboard Copied! Toggle word wrap Toggle overflow 警告在生产环境中不适用于禁用 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
bin/server.sh -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow 警告启用没有身份验证或 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。
流程
- 打开您的 Data Grid 配置进行编辑。
-
将
mbean-server-lookup属性或字段添加到缓存管理器的 JMX 配置中。 -
指定
MBeanServerLookup实现的完全限定名称(FQN)。 - 保存并关闭您的客户端配置。
JMX MBean 服务器查找配置
XML
JSON
YAML
GlobalConfigurationBuilder
GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
.jmx().enable()
.domain("org.mydomain")
.mBeanServerLookup(new com.acme.MyMBeanServerLookup());
GlobalConfiguration global = GlobalConfigurationBuilder.defaultClusteredBuilder()
.jmx().enable()
.domain("org.mydomain")
.mBeanServerLookup(new com.acme.MyMBeanServerLookup());