Deploying a publish/subscribe topology

Before you start:

Make sure that you have configured your broker domain.

The publish/subscribe topology deployment overview explains when you might want to deploy a topology and the difference between a complete and delta deployment.

You can configure the workbench preferences so that topology information is automatically deployed after a change.

After you have deployed a publish/subscribe topology, you might see an extra execution group process called $SYS_mqsi in a process listing, or in the output from the mqsilist command. When you deploy a publish/subscribe topology for the first time, a new execution group process is started on your broker to handle the publish/subscribe messages. This execution group is only used internally: it does not appear in the workbench and you cannot deploy message flows to it. After you have deployed one or more of your own flows to another execution group, $SYS_mqsi is removed when the broker is subsequently restarted.

Using the Message Brokers Toolkit

Follow these steps to deploy a topology configuration using the workbench:

  1. Switch to the Broker Administration perspective.
  2. In the Domains view, expand the Domains from where you want to perform the deploy.
  3. Right-click Broker Topology hierarchy.
  4. Click Deploy Topology Configuration.
  5. Click Delta to deploy only the changed items, or click Complete to deploy the entire configuration.

    Alternatively, you can make a change to the Topology document in the Broker Administration perspective, save the changes and then select Delta. This behavior can be modified in the workbench preferences dialog.

The topology is deployed, and the Configuration Manager distributes it to the brokers in the domain.

Next:

Continue by checking the results of the deployment.

Using the mqsideploy command

Follow these steps to deploy a topology configuration using the mqsideploy command:

  1. Open a command window that is configured for your environment.
  2. Using these as examples, enter the appropriate command, typed on a single line:
    On z/OS:
    /f MQ01CMGR,dp l=yes

    This performs a delta deployment. Add the m=yes parameter to deploy the entire configuration.

    On other platforms:
    mqsideploy –i ipAddress –p port –q qmgr –l

    This performs a delta deployment. Add the –m parameter to deploy the entire configuration.

    The -i (IP address), -p (port), and -q (queue manager) parameters represent the connection details of the queue manager workstation, and on the z/OS console, MQ01CMGR is the name of the Configuration Manager component.

Next:

Continue by checking the results of the deployment.

Using the Configuration Manager Proxy API

Use the deploy method of the TopologyProxy class. By default, the deploy method performs a delta deployment. To deploy the complete hierarchy, use a variant of the method that includes the boolean isDelta parameter; setting this to false indicates a complete deployment. (Setting it to true indicates a delta deployment.)

For example:
import com.ibm.broker.config.proxy.*;

public class DeployTopology {
  public static void main(String[] args) {
    ConfigManagerConnectionParameters cmcp =
            new MQConfigManagerConnectionParameters
                ("localhost", 1414, "QM1");
    try {
      ConfigManagerProxy cmp =
            ConfigManagerProxy.getInstance(cmcp);
      TopologyProxy t = cmp.getTopology();
      t.deploy(false);
    }
    catch (ConfigManagerProxyException e) {
      e.printStackTrace();
    }
  }
} 

Next:

Continue by checking the results of the deployment.