Red Hat DocumentationFuse Message BrokerToggle FramesPrintFeedback

Configuring JMX

Overview

By default a broker is set up to allow for JMX management. It uses the JVM's MBean server and creates its own JMX connector at service:jmx:rmi:///jndi/rmi://hostname:1099/jmxrmi. If the default configuration does not meet the needs of the deployment environment, the broker provides configuration properties for customizing most aspects of its JMX behavior. For instance, you can completely disable JMX for a broker. You can also force the broker to create its own MBean server.

Enabling and disabling

By default JMX is enabled for a Fuse Message Broker broker. To disable JMX entirely you simply set the broker element's useJmx attribute to false. This will stop the broker from exposing itself via JMX.

Important

Disabling JMX will also disable the command-line administrative tools.

Securing access to JMX

In a production environment it is advisable to secure the access to your brokers' management interfaces. The steps to secure access to a broker's JMX interface depends on the JMX connector the broker uses.

If the broker creates its own JMX connector you configure the security options directly in the broker's configuration. If the broker uses the JMX connector provided by the JVM, you need to modify the scripts used to start the broker to pass the security configuration to the JVM.

For a detailed description of the steps required see ????.

Advanced configuration

If the default JMX behavior is not appropriate for your deployment environment, you can customize how the broker exposes its MBeans. To customize a broker's JMX configuration, you add a managementContext child element to the broker's broker element. The managementContext element uses a managementContext child to configure the broker. The attributes of the inner managementContext element specify the broker's JMX configuration.

Table 4 describes the configuration properties for controlling a broker's JMX behavior.

Table 4. Broker JMX Configuration Properties

PropertyDefault ValueDescription
useMBeanServer trueSpecifies whether the broker will use the MBean server created by the JVM. When set to false, the broker will create an MBean server.
jmxDomainName org.apache.activemqSpecifies the JMX domain used by the broker's MBeans.
createMBeanServer trueSpecifies whether the broker creates an MBean server if none is found.
createConnector trueSpecifies whether the broker creates a JMX connector for the MBean server. If this is set to false the broker will only be accessible using the JMX connector created by the JVM.
connectorPort 1099Specifies the port number used by the JMX connector created by the broker.
connectorHost localhostSpecifies the host used by the JMX connector and the RMI server.
rmiServerPort 0Specifies the RMI server port. This setting is useful if port usage needs to be restricted behind a firewall.
connectorPath /jmxrmiSpecifies the path under which the JMX connector will be registered.

Example 27 shows configuration for a broker that will only use the JVM's MBean server and will not create its own JMX connector.

Example 27. Configuring a Broker's JMX Connection

<broker ... >
  ...
  <managementContext>
    <managementContext createMBeanServer="false"
                       createConnector="false" />
  </managementContext>
  ...
</broker>

Comments powered by Disqus