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 you 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.

Notes:
  1. On Linux and Solaris only, you must ensure that each package installed has a unique name. You 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 your choice. You then install as usual.
  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.


Working with multiple installations

To work with a queue manager, you 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, we have to use the control commands from its associated installation. You 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
    
You 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, you 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, you 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®. We use STEPLIBs to control which level of IBM MQ is used. For more information, see Coexistence.