+

Search Tips | Advanced Search

Multiple IBM MQ installations

From IBM WebSphere MQ Version 7.1, multiple IBM MQ installations are supported on UNIX, Linux, and Windows. This gives you the option to install and select between one or more IBM MQ installations.


Overview

We can select between:

  • Simplicity of maintaining a single IBM MQ installation.
  • Flexibility, by allowing up to a maximum of 128 IBM MQ installations on a system. The first of these 128 installs is reserved for an (optional) IBM WebSphere MQ Version 7.0.1 installation of level Version 7.0.1, Fix Pack 6 or above. The other installations must be IBM WebSphere MQ Version 7.1 or later.

We can install multiple copies of the same code level; this is especially convenient for maintenance purposes.

For example, if we want to upgrade IBM MQ Version 9.0.0.0 to IBM MQ Version 9.0.0, Fix Pack 1, we can install a second copy of IBM MQ Version 9.0.0.0, apply the maintenance to bring it to IBM MQ Version 9.0.0, Fix Pack 1, and then move the queue managers across to the new installation. You still have the original installation, so it is a simple matter to move the queue managers back if you encounter any problems.

Note that we can only move the queue manager to an installation at the same or a higher version. That is, we can move a queue manager in the following ways:

  • From an earlier version to a later version, but not back. For example, from IBM MQ Version 9.0.0 to IBM MQ Version 9.1.0, but not from IBM MQ Version 9.1.0 to IBM MQ Version 9.0.0.
  • From one fix pack level to another fix pack level at the same version, and back. For example, from IBM MQ Version 9.0.0.0 to IBM MQ Version 9.0.0, Fix Pack 1, and back to IBM MQ Version 9.0.0.0.

Notes:

  1. On Linux, we must ensure that each package installed has a unique name. We need to use a tool to create a unique set of packages:

    • $ crtmqpkg PACKAGE_SUFFIX
    • This takes the IBM MQ installation packages, and repackages them with a new name of our choice. You then install as usual.
    • IBM MQ Version 9.2 introduces the additional option InstallPATH.

      If we issue the command $ crtmqpkg PACKAGE_SUFFIX InstallPATH, we can install the repackaged drivers using the command rpm -ivh MQ* and IBM MQ is installed directly into the directory specified by InstallPATH.

  2. All installations share a data directory; this is where mqs.ini is located for example.
  3. All installations share the same namespace for queue managers. This means that we cannot create several queue managers of the same name in different installations.
  4. IBM MQ installations are fully relocatable; each installation has a separate installation path. We can choose where you would like to install IBM MQ.
  5. IBM MQ resources have installation-scope resource isolation, so operations on one installation do not affect the others.

    This means that the resources created by one installation are isolated from those created by other installations. It enables actions, such as removing an installation of IBM MQ, while queue managers are running under another installation.

  6. Queue managers are "associated" with an installation We can move them, but we cannot migrate data back to earlier releases.


Work with multiple installations

To work with a queue manager, we need to use the commands from its installation. If you select the wrong installation, you see:
AMQ5691: Queue manager 'MYQM' is associated with a different installation (Inst1)
To work with a queue manager, you have to use the control commands from its associated installation. We have a choice of:

  • Use the full path to the control commands, for example:
    $ MQ_INSTALLATION_PATH\bin\strmqm MYQM
    
    or
  • Set the environment variables for an installation with one of:
    $ MQ_INSTALLATION_PATH/bin/setmqenv 's
    $ setmqenv -m MYQM
    $ setmqenv -n InstallationName
    $ setmqenv -p MQ_INSTALLATION_PATH
    

We might consider using a shell script or batch file to set up the environment for each IBM MQ installation. We can use the setmqenv or crtmqenv commands to help with this.

  • setmqenv sets the values of the environment variables, such as PATH, CLASSPATH and LD_LIBRARY_PATH, for use with an IBM MQ installation.
  • crtmqenv creates a list of the environment variables and their values for use with a particular IBM MQ installation. We can then use this list to incorporate into a shell script or batch file.


Commands

To run a command, the operating system must find the command in an IBM MQ installation. In general, we must run a command from the installation that is associated with the correct queue manager. IBM MQ does not switch commands to the correct installation. However, there are some exceptions, such as the setmqinst command, where we can run the command from any installation that has the latest version of the product installed.

If an earlier version of the product is installed, the command that is run is the command for that version, unless the search path is overridden by a local setting. We can override the search path by running setmqenv. If Version 7.0.1 is not installed, we must set the correct path to run a command. If we have set a primary installation, the command that is run is the copy in the primary installation, unless you override the selection with a local search path.


Multiple releases on z/OS

Multiple releases can exist on z/OS . You use STEPLIBs to control which level of IBM MQ is used. For more information, see Coexistence.

  • Multiple installations and application programs
    When a local application connects to a queue manager, the application needs to load the libraries from the installation associated with the queue manager. Multiple installations introduce some complexity.

Parent topic: Migration concepts and methods


Related information

Last updated: 2020-10-04