Planning for incompatible features in the queue manager

It is possible that not all features in your source queue manager are supported by the target IBM® MQ Appliance. You should take time to plan how you intend to handle any incompatible features.

For help with planning how to handle incompatible features, consult the following topics:

user IDs and groups

As part of moving the queue manager, you must identify any user IDs and groups that the queue manager configuration includes and re-create them on the IBM MQ Appliance. If different user IDs and groups are created on the appliance, then you must make the appropriate changes to the dmpmqcfg output.

Special considerations for moving a queue manager from z/OS

In most cases it is not appropriate to move a queue manager from z/OS® to an appliance, because the connecting applications (for example in batch, CICS®, IMS and Db2® environments) must be locally bound to a z/OS queue manager running on the same LPAR as the application.

Queue managers on z/OS are likely to have several z/OS-specific attributes that are not supported on IBM MQ Appliance. You must remove or comment out such attributes.

These changes do not ensure that the migrated queue manager is functionally equivalent to the original queue manager on z/OS. You must consider each of the attributes that are not supported by the new queue manager to decide whether its value is significant for your applications, and if the behavior of the object in the new queue manager, without this attribute, is acceptable. In some cases, it might be necessary to define different objects or to set other values to achieve the same effect. This consideration also applies to differences in the default value of some attributes. For example, queues on z/OS default to non-shared so there might be several statements that replace queues, including default system queues, with non-shared versions. This action might be the right thing to do if your applications rely on this characteristic, or it might be the wrong thing to do because you want to preserve the default behavior of the appliance queue manager.

Inspecting qm.ini file for the source queue manager

Examine the qm.ini file and make a note of any settings that cannot be made by running the commands in the dmpmqcfg output. These settings might include, for example, log file settings. Particularly note any exit information in the configuration. IBM MQ Appliance does not support exits, so this functionality must be substituted. For example, channel exits can be replaced by channel auth records, and API exits might be replaced by activity trace. For more information about qm.ini, see Queue manager configuration files, qm.ini in the IBM MQ documentation.

Applications

Applications cannot be run on the IBM MQ Appliance. You must plan to migrate any applications that are local to the queue manager to a client system. Such applications need to be rebuilt so that they can connect to the queue manager from another machine by using client connections. If any applications are run as triggered processes, they must also be converted to run on a client machine. In that case, it is necessary to run the trigger monitor in client mode and to alter the queue manager's process definitions accordingly. For help, see runmqtmc and Managing objects for triggering in the IBM MQ documentation.

Exits and services

The IBM MQ Appliance does not support exits or services that are defined in the queue manager configuration. You must plan to migrate exits and services to equivalent functionality on a client system. For guidance, see Moving a queue manager and Using an IBM MQ client.

Channels that use SSL 3.0 or TLS 1.0 CipherSpecs

By default, IBM MQ 10.0 does not support SSL 3.0 or TLS 1.0 and related CipherSpecs. If you move a queue manager to the IBM MQ Appliance that has one or more channels that use SSL 3.0 or TLS 1.0, you can take action to enable support for these CipherSpecs. You can take one of the following actions:
  • Set the environment variable AMQ_SSL_WEAK_CIPHER_ENABLE=ALL. See Configuring environment variables for details of how to set environment variables on the appliance.
  • Change the SSL stanza in the qm.ini file to re-enable all SSL 3.0 and TLS 1.0 CipherSpecs, for example:
    mqa# mqcli
    mqa(mqcli)# setmqini -m QMGR -s SSL -k AllowWeakCipherSpec -v ALL
    
    See Adding a value to the configuration file for details of using the setmqini command to edit the qm.ini file on the appliance.

XA transactions

Queue managers on an IBM MQ Appliance cannot act as XA transaction managers.

Queue managers on the appliance can participate in global transactions as resource managers, but they cannot act as transaction managers and coordinate external services.

An IBM MQ client that connects to a queue manager on an appliance is not able to issue an MQBEGIN API call. The means that the client cannot start a transaction with the queue manager acting as transaction manager.