Moving a queue manager

Follow these instructions to move a queue manager from an IBM® MQ10.0 system to an IBM MQ Appliance.

About this task

You move a queue manager by re-creating it on the target system. The procedure re-creates the configuration of the queue manager, it does not attempt to re-create the current state of the queue manager by, for example, unloading and reloading queues.

In these instructions, the source system is the system that you are moving the queue manager from. The target system is the IBM MQ Appliance.

block diagram of moving process

Procedure

  1. Log in to the source system as a user in the IBM MQ administrators (mqm) group.
  2. Save the configuration information of the queue manager that you want to move by typing the following command:
    dmpmqcfg -a -m QM_name > QM_file
    
    Where:
    • QM_name is the name of the queue manager that you want to move.
    • QM_file is the name and path of a local file on the source system that the configuration information is written to.
    Examine the dmpmqcfg file and mask out incompatible features as described in Planning for incompatible features in the queue manager and Handling incompatible features in the queue manager.
  3. If the queue manager is part of a distributed configuration, quiesce the queue manager. Ensure that there are no messages in flight then stop the queue manager.
  4. Create and start a new target queue manager on the IBM MQ Appliance. You can use the IBM MQ Console to do this action, see Using the IBM MQ Console, or you can use MQ commands, with the required name and attribute values. If you want to use MQ commands, you must complete the following steps:
    1. Connect to the IBM MQ Appliance as described in Command line access.
    2. Log in as a user in the administrators group.
    3. Type the following command to open the IBM MQ command line interface:
      mqcli
      
  5. Set up any user IDs that are required by the queue manager that you are moving. For details about creating messaging users on the appliance, see Administering messaging users.
  6. Enable a client connection to the target queue manager. You must define and start a TCP listener, define an SVRCONN channel, and allow administrator access to the queue manager by using this channel. You can use the IBM MQ Console to do this action, see Using the IBM MQ Console, or you can use MQSC commands.
    If the source IBM MQ system has IBM MQ Explorer, try using it to add a remote queue manager definition for the target queue to check that the client connection is working.
  7. Ensure that your exported queue manager configuration is compatible with the target IBM MQ Appliance. Follow the process in Handling incompatible features in the queue manager. Edit the file that contains the queue manager configuration information if necessary.
  8. Import the source queue manager configuration into the target queue manager. You run these steps on the source system:
    1. Define an environment variable that is named MQSERVER to identify the channel that connects to the target queue manager. For example, the value of MQSERVER could be set to:
      SYSTEM.ADMIN.SVRCONN/TCP/9.20.233.217(1414)
      
    2. Run the following command on the source system to connect to the target system over the channel and replay on the target queue manager the commands that were exported from the source queue manager:
      runmqsc -c target_QM_name  < QM_file
      
  9. Restore the attributes that were masked in the dmpmqcfg output and that you identified when you checked the output (as described in Handling incompatible features in the queue manager). You restore attributes by using the client connection from the source system. You can either use IBM MQ Explorer, or start runmqsc interactively in client mode, and then input MQSC commands:
    runmqsc -c QM_name 
    
    For example, if your dmpmqcfg output for your source queue manager contained the following entry:
    DEFINE AUTHINFO('arthurauth') +
       AUTHTYPE(CRLLDAP) +
       CONNAME('william.paddock.com') +
       LDAPUSER('joey') +
    *  LDAPPWD('********************************') +
    *  ALTDATE(2019-11-13) +
    *  ALTTIME(06.41.13) +
       REPLACE
    You would need to specify the LDAP password that had been masked:
    ALTER AUTHINFO('arthurauth') 
    LDAPPWD('ldap_serv_passw0rd') 
  10. Stop and restart the queue manager on the target IBM MQ Appliance and ensure that it starts cleanly.