[Windows]

Staging maintenance level updates on Windows

On Windows systems, you can use multiple installations of IBM® MQ on the same server to control the release of maintenance level updates.

Before you begin

The steps in this task are based on an example scenario in which it is assumed that you have a number of applications and two queue managers, QM1 and QM2, running on a server. IBM WebSphere® MQ 7.0.1 is not installed on the server.

To set up your configuration for this scenario, complete the following steps:
  1. Install two copies of IBM MQ. In the example, they are named Inst_1 and Inst_2.
  2. Make Inst_1 primary by running setmqinst.
  3. Associate all the queue managers on the server with Inst_1 by running setmqm.
  4. Start all the queue managers on the server.
  5. Show and connect all direct connections with the queue managers associated with Inst_1 in IBM MQ Explorer.
  6. Set up remote connections to all the queue managers in each instance of IBM MQ Explorer.

About this task

Note: From 1Q 2023, for Multiplatforms, there are two types of maintenance:
  • Fix packs, which contain roll-ups of all defects fixed since the previous fix pack delivery (or GA). Fix packs are produced exclusively for Long Term Support (LTS) releases during their normal support lifecycle.
  • Cumulative security updates (CSUs), which are smaller updates and contain security patches released since the previous maintenance (GA). CSUs are produced for LTS releases (including releases in extended support), and also for the latest IBM MQ Continuous Delivery (IBM MQ) release, as required to deliver relevant security patches.

For maintenance releases in or after 1Q 2023, the fourth digit in the VRMF represents either a fix pack number or a CSU number. Both types of maintenance are mutually cumulative (that is, they contain everything included in older CSUs and fix packs), and both are installed using the same mechanisms for applying maintenance. Both types of maintenance update the F-digit of the VRMF to a higher number than any previous maintenance: fix packs use "F" values divisible by 5, CSUs use "F" values not divisible by 5.

For maintenance releases before 1Q 2023, the fourth digit in the VRMF always represents the fix pack level. For example, the first fix pack of the IBM MQ 9.0.0 LTS release is numbered 9.0.0.1.

For more information, see Changes to IBM MQ's maintenance delivery model.

You can install multiple copies of IBM MQ on a server to stage the release of IBM MQ maintenance level updates. For example, as in the scenario that is described in the task steps, by using two installations to roll out maintenance level updates, you maintain two maintenance levels on a server, with the aim of getting all queue managers and applications to the production maintenance level before replacing the previous level of maintenance with the next level.

Which installation an application uses is driven by the queue manager an application connects to. The setmqm command associates a queue manager with an installation. You can associate a queue manager with a different installation as long as the installation is at the same or higher command level. In this example, all the installations are at the same command level. You can associate or reassociate a queue manager with either of the installations running any of the fix packs or cumulative security updates (CSUs).

In the example, an application links to the primary installation. When it connects to a queue manager, IBM MQ switches the linkage to the installation associated with the queue manager; see Multi-installation queue manager coexistence on UNIX, Linux, and Windows.

For applications built with the link options described in the product documentation, the simplest way to configure the link library search path for IBM MQ applications is to make an installation primary. Only if it is important to pick up a fix in the IBM MQ link library itself, must you review the search path. Either you must make the installation with the IBM MQ link library fix primary, or make a local adjustment for the application, perhaps by running the setmqenv command.

Running commands is a different matter. Commands are always run from the primary installation, or the installation you have selected by running the setmqenv command. If you run a command from the wrong installation, the command fails. For example, if QM1 is associated with Inst_1, running the Windows command, Inst_2_Installation_path/bin/strmqm QM1 fails.

If you are using IBM MQ Explorer and you have two installations, you also have two IBM MQ Explorer instances. One linked to one installation, and one to the other. Each IBM MQ Explorer shows locally connected queue managers that are associated with the same installation as the instance of IBM MQ Explorer. To monitor all the queue managers on a server, set up remote connections to the queue managers associated with the other installations.

Procedure

Apply the first maintenance level update to Inst_2.

  1. Download the first fix pack or cumulative security update (CSU) when it is released.
  2. Apply the fix pack or cumulative security update (CSU) you downloaded to Inst_2.
  3. Verify Inst_2.
  4. Transfer the queue managers to Inst_2 one at a time.
    1. Stop QM1 and the applications connected to it.

      The endmqm command informs an application that the queue manager it is connected to is stopping; see Stopping a queue manager.

      Note: The topic, Applying maintenance level updates to multi-instance queue managers on Windows, describes how to apply maintenance to a multi-instance queue manager. A multi-instance queue manager can continue to run on one server, while maintenance is applied to another server.
    2. Set up the local environment to the installation Inst_2.
      
      "Inst_2_INSTALLATION_PATH\bin\setmqenv" -s
      

      The -s option sets up the environment for the installation that runs the setmqenv command.

    3. Associate the queue manager with Inst_2.
      
      setmqm -m QM1 -n Inst_2
      
    4. Start QM1
      
      strmqm QM1
      
    5. Repeat substeps c and d for QM2.
    6. Set up IBM MQ Explorer for Inst_2.
      1. Start the Inst_2 instance of IBM MQ Explorer
        Tip: On Windows, hover over the IBM MQ icon in the system tray. The hover help shows the installation name associated with the IBM MQ Explorer instance.
      2. Click IBM MQ > Queue Managers > Show/Hide Queue Managers... >
      3. Click each directly connected queue manager listed in the Hidden Queue Managers list > Show.
      4. Click Close.
  5. Set Inst_2 primary.
    
    "Inst_2_INSTALLATION_PATH\bin\setmqinst" -i -n Inst_2
    

Apply the second maintenance level update to Inst_1.

  1. Download the next fix pack or cumulative security update (CSU), for the version of your product when it is released.
  2. Apply the fix pack or cumulative security update (CSU), that you have just downloaded to Inst_1.
  3. Verify Inst_1.
  4. Transfer queue managers to Inst_1 one at a time.
    1. Follow the procedure in step 4

      Replacing Inst_2 by Inst_1 in the instructions.

  5. Set Inst_1 primary.
    
    "Inst_1_INSTALLATION_PATH\bin\setmqinst" -i -n Inst_1
    

For subsequent maintenance fixes, alternate between Inst_2 and Inst_1.

  1. Alternate between repeating steps 1 to 5 for Inst_2 and steps 6 to 10 for Inst_1.