LibraryToggle FramesPrintFeedback

Sending Commands to the Broker

Fuse MQ Enterprise provides a number of commands that can be used to manage a broker, deploy new brokers, and report administrative details. You can send these commands to a broker using either the broker command console or the administration client.

Overview

The default mode for running a Fuse MQ Enterprise broker is to run in daemon mode. In this mode, the broker runs as a background process and you have no direct means for managing it or requesting status information. You can access a broker in daemon mode in the following ways:

  • the Fuse MQ Enterprise administration client that can be used to send any of the console commands to a broker running in daemon mode

  • a broker running in console mode can connect to a remote broker and be used to manage the remote broker

  • Fuse MQ Enterprise includes a vanilla Apache Karaf shell that can connect to a remote broker and be used to manage the remote broker

If a broker is started in console mode, you can simply enter commands directly in the command console.

Running the administration client

The Fuse MQ Enterprise administration client is run using the client in InstallDir/bin. Example 34 shows the syntax for the command.

Example 34. Client Command

client [--help] [-a port] [-h host] [-u user] [-p password] [-v] [-r attempts] [-d delay] [commands]


Table 6 describes the command's arguments.

Table 6. Administration Client Arguments

ArgumentDescription
--helpDisplays the help message.
-aSpecifies the remote host's port.
-hSpecify the remote host's name.
-uSpecifies user name used to log into the broker.
-pSpecifies the password used to log into the broker.
-vUse verbose output.
-rSpecifies the maximum number of attempts to establish a connection.
-dSpecifies, in seconds, the delay between retries. The default is 2 seconds.
commandsSpecifies one or more commands to run. If no commands are specified, the client enters an interactive mode.

Using the broker console

The console provides commands that you can use to perform basic management of your Fuse MQ Enterprise environment, including managing destinations, connections and other administrative objects in the broker.

The console uses prefixes to group commands relating to the same functionality. For example commands related to configuration are prefixed config:, and logging-related commands are prefixed log:.

The console provides two levels of help:

  • console help—list all of the commands along with a brief summary of the commands function

  • command help—a detailed description of a command and its arguments

To access the console help you use the help command from the console prompt. It will display a grouped list of all the commands available in the console. Each command in the list will be followed by a description of the command as shown in Example 35.

Example 35. Console Help

FuseMQ:karaf@root> help
COMMANDS
        activemq:browse
        activemq:bstat
        activemq:list
        activemq:purge
        activemq:query
        admin:change-opts
                Changes the Java options of an existing container instance.
        admin:change-rmi-registry-port
                Changes the RMI registry port (used by management layer) of an 
                existing container instance.
    ...
FuseMQ:karaf@root>

The help for each command includes the definition, the syntax, and the arguments and any options. To display the help for a command, type the command with the --help option. As shown in Example 36, entering admin:start --help displays the help for that command.

Example 36. Help for a Command

FuseMQ:karaf@root> admin:start --help
DESCRIPTION
        admin:start

        Starts an existing container instance.

SYNTAX
        admin:start [options] name

ARGUMENTS
        name           The name of the container instance

OPTIONS
        --help
                       Display this help message
        -o, --java-opts
                       Java options when launching the instance

FuseMQ:karaf@root>

Connecting a console to a remote broker

How you connect a command console to a broker on a remote machine depends on if the brokers are part of the same fabric. If the remote broker you want to command is a part of the same fabric as the broker whose command console you are using, then you can use the fabric:container-connect command to establish a connection to the remote broker.

The fabric:container-connect command has one required argument that specifies the name of the container to which a connection will be opened. You can also specify a command to be executed by the remote console connection. If you do not specify a command, you are presented with a prompt that will pass commands to the remote broker's console. For more details about fabric:container-connect, see fabric:container-connect, in Console Reference.

If you are not using fabric, or the remote broker is not part of the same fabric as the broker whose command console you are using, you create a remote connection using the ssh:ssh command. The ssh:ssh command also only requires a single argument to establish the remote connection. In this case, it is the hostname, or IP address, of the machine on which the broker is running. If the remote broker is not using the default SSH port (8101), you will also need to specify the remote broker's SSH port using the -p flag. You can also specify a command to be executed by the remote console connection. If you do not specify a command, you are presented with a prompt that will pass commands to the remote broker's console. For more details about ssh:ssh, see ssh:ssh, in Console Reference.

To disconnect from the remote console, you use the logout command or press Control+D.

Starting a basic console

Fuse MQ Enterprise includes a shell command that will open a vanilla command console without starting a broker instance. You can use this command console to connect to remote brokers in the same way as you would a broker's command console.

Available commands

The remote client can execute any of the broker's console commands. For a complete list of commands see the Console Reference .

Comments powered by Disqus