Setting Up MMC-Mule Communications
This page covers:
How to register or unregister a Mule server in MMC
How to configure communication settings between Mule ESB server and MMC
This document assumes that you are familiar with the basic Architecture of the Mule Management Console, and that you have the Management Console.
The Mule Management Console is a Web application that you can use to monitor and manage one or more Mule ESB servers, clusters, and applications. The Management Console communicates with Mule ESB servers via the MMC agent installed in each Mule ESB server. In order for communication between MMC and a Mule ESB server to take place, you need to register the server in the Management Console.
Communication between MMC and a Mule ESB server begins over HTTP, but after the initial handshake and authentication, the HTTP connection is dropped and a new HTTPS connection is opened.
Each Mule server can only be registered with one MMC, but each MMC can manage an unlimited number of Mule ESB servers.
When you run the production version of MMC for the first time, it will attempt to detect any Mule servers on the network, but will not try to pair with any server it finds. You must manually register your Mule server.
To pair the MMC with a Mule instance, you provide MMC with the URL of the Mule agent listening on the the Mule ESB server. The default port is 7777, and the path is
mmc-support. So, if you wish to register a Mule server on host 126.96.36.199, the URL would be
http://188.8.131.52:7777/mmc-support. When you provide this URL to MMC, the Management Console will attempt to pair with the Mule agent in the specified URL, then report success or failure.
To register a Mule server to MMC, follow these steps:
Go to the Servers tab.
In the left-hand pane is a list of servers divided by groups. If MMC has found any active servers, it will indicate the number of servers found in the Unregistered heading, as shown below.
Click Unregistered. MMC will display a list of unregistered servers it has found, if any, including each server’s host and port.
If the server you wish to register is on this list, click the checkbox next to the server name (see location of the mouse pointer above), then click Register in the top right corner. MMC will attempt to register the server, and will report success or failure.
If the server you wish to register is not on the Unregistered Servers list, click New Server in the top right corner.
Enter your server’s name and URL manually, then click Add. MMC will attempt to register the server, and will report success or failure.
After you have registered your servers, click All in the left servers group pane to go to the All Servers list, where you should see all the servers that MMC has detected. Additionally, all registered servers will display their status (a red indicator for stopped servers; green for running).
Each Mule ESB server can only be registered to one MMC at a time. If you want to register a Mule ESB server to a new MMC, you must first unregister it in the MMC that the server is currently registered with. You can do this either in the MMC itself or on the server’s configuration files. Both methods are explained below.
If the server is part of a cluster, you must disband the cluster before you unregister the server. See Creating or Disbanding a Cluster for details.
In the MMC where the server is registered, obtain a list of servers that includes the server you wish to unregister, for example by clicking All in the server groups pane.
Select the desired server by clicking the checkbox next to the server name.
Click Remove, then Unregister Server(s). MMC will ask for confirmation; click Yes.
The server has been unregistered; you can now register it in another Management Console.
It is possible that you are not able to unregister a Mule server via the MMC, for example if the MMC has been undeployed and is no longer available. In this case, follow the steps below.
Ensure that the ESB server is not running.
Go to the directory
$MULE_HOME/.mule/.agent. This directory contains Mule ESB server-MMC pairing information.
Find and delete the file
After you delete the file, you can register the Mule server to any instance of MMC, following the steps outlined Registering Mule ESB Servers with MMC. When you register the server, a new
truststore.jks will be created.
A Mule ESB server communicates with MMC using its embedded agent. By default, the agent is enabled and listening on port 7777. You can change the port with the
-Dmule.mmc.bind.port parameter for the Java Virtual Machine (JVM). You can do this in two ways, which are listed below.
If starting the Mule ESB server from the provided startup script, you can include the port number parameter as a parameter to the startup command as shown below. If running in background, include the parameter after
mule@host:/opt/mule-3.4.1/bin$ ./mule start -M-Dmule.mmc.bind.port=7783
(If you wish to use more than one parameter, include all parameters as a list separated by whitespace.)
Include your parameters in the configuration file
$MULE_HOME/conf/wrapper.conf. The distribution includes this file with comments; you can edit this file or add to it as needed.
You must include the agent port parameter as a
java.additional parameter. These parameters are defined in the
wrapper.conf file in the form
wrapper.java.additional.<number>=<name>=<value>, such as
To add your desired parameter, find the last added additional parameter, which will have the highest number. Then, add your parameter with the consecutive number that equals the highest number + 1.
For example, if the number of the last additional parameter is 3, add:
If you wish to include a port range, letting Mule bind to the first available port, use
If you wish to disable the agent on the Mule instance, use the
For more information about the
Like all Web apps, the Mule Management Console listens for incoming HTTP connections. If you deployed the MMC in a Web application server, you will access MMC via the Web app server’s listening port, for example 8080 by default in Tomcat. In that case, the only way to change MMC’s listening port is to change your Web app server’s listening port.
If MMC is running as an app deployed by the Mule server it is bundled with. By default it listens on port 8585. To modify MMC’s listening port, follow the steps below.
Ensure that the Mule server is not running.
Open the file
Find the line that reads:
Change the default port of 8585 to your desired value, then save the file.