6.2. 使用 JMX 管理 AMQ 代理
您可以使用 Java 管理扩展(JMX)来管理代理。管理 API 由代理使用 MBeans 接口公开。代理将其资源注册到域 org.apache.activemq
。
例如,要管理名为 exampleQueue
的队列的 ObjectName
是:
org.apache.activemq.artemis:broker="__BROKER_NAME__",component=addresses,address="exampleQueue",subcomponent=queues,routingtype="anycast",queue="exampleQueue"
MBean 是:
org.apache.activemq.artemis.api.management.QueueControl
MBean 的 ObjectName
使用帮助程序类 org.apache.activemq.artemis.api.core.management.ObjectNameBuilder
构建。您还可以使用 jconsole 来查找要管理的 MBean 的 ObjectName
。
使用 JMX 管理代理与使用 JMX 管理任何 Java 应用程序相同。它可以通过反映性或创建 MBean 的代理来完成。
6.2.1. 配置 JMX 管理
默认情况下,启用 JMX 以管理代理。您可以通过在 broker.xml
配置文件中设置 jmx-management-enabled
属性来启用或禁用 JMX 管理。
流程
-
打开
<broker_instance_dir>/etc/broker.xml
配置文件。 设置
<jmx-management-enabled>
。<jmx-management-enabled>true</jmx-management-enabled>
如果启用了 JMX,则代理可以使用
jconsole
在本地进行管理。注意出于安全原因,默认情况下不启用与 JMX 的远程连接。
如果您要从同一
MBeanServer
管理多个代理,请为每个代理配置 JMX 域。默认情况下,代理使用 JMX 域
org.apache.activemq.artemis
。<jmx-domain>my.org.apache.activemq</jmx-domain>
注意如果您在 Windows 系统中使用 AMQ Broker,则必须在 artemis 或
artemis.
cmd<install_dir>/bin
下。
其它资源
- 有关为远程管理配置代理的更多信息,请参阅甲骨文的 Java 管理指南。