Sun Cluster Data Service for WebSphere MQ Guide for Solaris OS

Installing and Configuring WebSphere MQ

This section contains the procedures you need to install and configure WebSphere MQ.

ProcedureHow to Install and Configure WebSphere MQ

This section contains the procedures you need to install and configure WebSphere MQ.

  1. Determine how many WebSphere MQ instances will be used.

    Refer to Restriction for multiple WebSphere MQ instances for more information.

  2. Determine which Solaris zone to use.

    Refer to Determine which Solaris zone WebSphere MQ will use for more information.

  3. If a zone will be used, create the whole root non-global zone or failover zone.

    Refer to System Administration Guide: Solaris Containers-Resource Management and Solaris Zones for complete information about installing and configuring a zone.

    Refer to Sun Cluster Data Service for Solaris Containers Guide for complete information about creating a failover zone.

  4. If a non-global zone or failover zone is being used, ensure the zone is booted.

    Repeat this step on all nodes of the cluster for a non-global zone and on one node of the cluster if a failover zone is being used.

    Boot the zone if it is not running.


    # zoneadm list -v
    # zoneadm -z zonename boot
    
  5. Determine how WebSphere MQ should be deployed in the cluster.

    WebSphere MQ can be deployed onto a cluster file system or highly available file system on the cluster. The following discussion will help you determine the correct approach to take.

    Within this section, a single instance or multiple instances of WebSphere MQ will be considered within a global zone, non-global zone, or failover zone.

    In each scenario, file system options for /var/mqm and the WebSphere MQ files will be listed together with a recommendation.

    1. Single Instance of WebSphere MQ

      1. Global zone deployment

        /var/mqm

        Can be deployed on a cluster file system, highly available local file system or on local storage on each cluster node.

        It is recommended to deploy /var/mqm on local storage on each cluster node.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Can be deployed on a cluster file system or highly available local file system.

        It is recommended to deploy /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager on highly available local file system.

      2. Non-global zone deployment

        /var/mqm

        Can be deployed on a highly available local file system or on non-global zone local storage on each cluster node.

        It is recommended to deploy /var/mqm on non-global local storage on each cluster node.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Must be deployed on a highly available local file system.

      3. Failover zone deployment

        If considering a failover zone, you must be aware that a failover zone will incur additional failover time to boot/halt the failover zone.

        /var/mqm

        Can be deployed on a highly available local file system or in failover zone's zonepath.

        It is recommended to deploy /var/mqm on the failover zone's zonepath.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Must be deployed on a highly available local file system.

    2. Multiple Instances of WebSphere MQ

      1. Global zone deployment

        /var/mqm

        Can be deployed on a cluster file system or on local storage on each cluster node.

        It is recommended to deploy /var/mqm on local storage on each cluster node.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Can be deployed on a cluster file system or highly available local file system.

        It is recommended to deploy /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager on highly available local file system.

      2. Non-global zone deployment

        /var/mqm

        Must be deployed on non-global zone local storage on each cluster node.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Must be deployed on a highly available local file system.

      3. Failover zone deployment

        If considering a failover zone, you must be aware that a failover zone will incur additional failover time to boot/halt the failover zone.

        /var/mqm

        Can be deployed on a highly available local file system or on failover zone's zonepath.

        It is recommended to deploy /var/mqm on the failover zone's zonepath.

        /var/mqm/qmgrs/queue-manager and /var/mqm/log/queue-manager

        Must be deployed on a highly available local file system.


    Note –

    Refer to Appendix A, Deployment Example: Installing a WebSphere MQ Queue Manager in Non-Global Zones for Deployment Example: Installing a WebSphere MQ Queue Manager in Non-Global Zones and Appendix B, Deployment Example: Installing aWebSphere MQ Queue Manager in a Failover Zone for Deployment Example: Installing a WebSphere MQ Queue Manager in a Failover Zone for examples on how to set up the WebSphere MQ files.


  6. Create a cluster file system or highly available local file system for the WebSphere MQ files.

    Within this step you will create file systems for the WebSphere MQ files and /var/mqm. Once you have determined how WebSphere MQ should be deployed in the cluster, you can choose one of the sub steps below.

    • Create the WebSphere MQ files and /var/mqm on cluster file systems by using Step a.

    • Create the WebSphere MQ files on SVM highly available local file systems and /var/mqm on cluster file system by using Step b.

    • Create the WebSphere MQ files on ZFS highly available local file systems and /var/mqm on local storage or within a failover zone's zonepath by using Step c.

    1. WebSphere MQ files and /var/mqm on cluster file systems.

      Within this deployment:

      • The WebSphere MQ files are deployed on cluster file systems.

      • The WebSphere MQ instances are qmgr1 and qmgr2.

      • /var/mqm uses a cluster file system with a symbolic link for /var/mqm/qmgrs/@SYSTEM to a local file (/var/mqm_local/qmgrs/@SYSTEM) on each node in the cluster.


        Note –

        Refer to Step d for more information about setting up this symbolic link.



      # ls -l /var/mqm
      lrwxrwxrwx   1 root     other         11 Jan  8 14:17 /var/mqm ->
       /global/mqm
      #  
      # ls -l /global/mqm/qmgrs
      total 6
      lrwxrwxrwx   1 root      other          512 Dec 16 09:57 @SYSTEM -> 
       /var/mqm_local/qmgrs/@SYSTEM
      drwxr-xr-x   4 root     root         512 Dec 18 14:20 qmgr1
      drwxr-xr-x   4 root     root         512 Dec 18 14:20 qmgr2
      # 
      # ls -l /global/mqm/log
      total 4
      drwxr-xr-x   4 root     root         512 Dec 18 14:20 qmgr1
      drwxr-xr-x   4 root     root         512 Dec 18 14:20 qmgr2
      #
      # more /etc/vfstab (Subset of the output)
      /dev/md/dg_d4/dsk/d40   /dev/md/dg_d4/rdsk/d40  /global/mqm
           ufs     3       yes     logging,global
      /dev/md/dg_d4/dsk/d43   /dev/md/dg_d4/rdsk/d43  /global/mqm/qmgrs/qmgr1
       ufs     4       yes     logging,global
      /dev/md/dg_d4/dsk/d46   /dev/md/dg_d4/rdsk/d46  /global/mqm/log/qmgr1
         ufs     4       yes     logging,global
      /dev/md/dg_d5/dsk/d53   /dev/md/dg_d5/rdsk/d53  /global/mqm/qmgrs/qmgr2
       ufs     4       yes     logging,global
      /dev/md/dg_d5/dsk/d56   /dev/md/dg_d5/rdsk/d56  /global/mqm/log/qmgr2
         ufs     4       yes     logging,global
    2. WebSphere MQ files on SVM highly available local file systems and /var/mqm on cluster file system.

      Within this deployment:

      • The WebSphere MQ files are deployed on SVM highly available local file systems.

      • The WebSphere MQ instances are qmgr1 and qmgr2.

      • /var/mqm uses a cluster file system with a symbolic link for /var/mqm/qmgrs/@SYSTEM to a local file (/var/mqm_local/qmgrs/@SYSTEM) on each node in the cluster.


        Note –

        Refer to Step d for more information about setting up this symbolic link.



      # ls -l /var/mqm
      lrwxrwxrwx   1 root     other         11 Sep 17 16:53 /var/mqm ->
       /global/mqm
      #
      # ls -l /global/mqm/qmgrs
      total 6
      lrwxrwxrwx   1 root      other          512 Sep 17 09:57 @SYSTEM -> 
       /var/mqm_local/qmgrs/@SYSTEM
      lrwxrwxrwx   1 root     other         22 Sep 17 17:19 qmgr1 ->
       /local/mqm/qmgrs/qmgr1
      lrwxrwxrwx   1 root     other         22 Sep 17 17:19 qmgr2 ->
       /local/mqm/qmgrs/qmgr2
      #
      # ls -l /global/mqm/log
      total 4
      lrwxrwxrwx   1 root     other         20 Sep 17 17:18 qmgr1 ->
       /local/mqm/log/qmgr1
      lrwxrwxrwx   1 root     other         20 Sep 17 17:19 qmgr2 ->
       /local/mqm/log/qmgr2
      #
      # more /etc/vfstab (Subset of the output)
      /dev/md/dg_d4/dsk/d40   /dev/md/dg_d4/rdsk/d40  /global/mqm
           ufs     3       yes     logging,global
      /dev/md/dg_d4/dsk/d43   /dev/md/dg_d4/rdsk/d43  /local/mqm/qmgrs/qmgr1
       ufs     4       no     logging
      /dev/md/dg_d4/dsk/d46   /dev/md/dg_d4/rdsk/d46  /local/mqm/log/qmgr1
         ufs     4       no     logging
      /dev/md/dg_d5/dsk/d53   /dev/md/dg_d5/rdsk/d53  /local/mqm/qmgrs/qmgr2
       ufs     4       no     logging
      /dev/md/dg_d5/dsk/d56   /dev/md/dg_d5/rdsk/d56  /local/mqm/log/qmgr2
         ufs     4       no     logging
    3. WebSphere MQ files on ZFS highly available local file systems and /var/mqm on local storage or within a failover zone's zonepath.

      Within this deployment:

      • The WebSphere MQ files are deployed on ZFS highly available local file systems.

      • The WebSphere MQ instances are qmgr1 and qmgr2.

      • /var/mqm uses local storage on each cluster node or the zonepath of a failover zone.

        As /var/mqm is on a local file system you must copy /var/mqm/mqs.ini from the node where the queue managers was created to all other nodes or zones in the cluster where the queue manager will run.


        Note –

        Refer to Step 10 for more information about copying /var/mqm/mqs.ini.



      # df -k /var/mqm
      Filesystem            kbytes    used   avail capacity  Mounted on
      /                    59299764 25657791 33048976    44%    /
      #
      # ls -l /var/mqm/qmgrs
      total 6
      drwxrwsr-x   2 mqm      mqm          512 Sep 11 11:42 @SYSTEM
      lrwxrwxrwx   1 mqm      mqm           14 Sep 11 11:45 qmgr1 -> /ZFSwmq1/qmgrs
      lrwxrwxrwx   1 mqm      mqm           14 Sep 11 11:50 qmgr2 -> /ZFSwmq2/qmgrs
      #
      # ls -l /var/mqm/log
      total 4
      lrwxrwxrwx   1 mqm      mqm           12 Sep 11 11:44 qmgr1 -> /ZFSwmq1/log
      lrwxrwxrwx   1 mqm      mqm           12 Sep 11 11:54 qmgr2 -> /ZFSwmq2/log
      #
      # df -k /ZFSwmq1
      Filesystem            kbytes    used   avail capacity  Mounted on
      HAZpool1             4096453   13180 4083273     1%    /ZFSwmq1
      #
      # df -k /ZFSwmq2
      Filesystem            kbytes    used   avail capacity  Mounted on
      HAZpool2             4096453   13133 4083320     1%    /ZFSwmq2
    4. Cluster file system is used for /var/mqm.

      Within this deployment:

      • If /var/mqm is placed on shared storage as a cluster file system, a symbolic link is made from /var/mqm/qmgrs/@SYSTEM to local file /var/mqm_local/qmgrs/@SYSTEM.

      • You must perform this step on all nodes in the cluster only if /var/mqm is a cluster file system.


      # mkdir -p /var/mqm_local/qmgrs/@SYSTEM
      # mkdir -p /var/mqm/qmgrs
      # ln -s /var/mqm_local/qmgrs/@SYSTEM /var/mqm/qmgrs/@SYSTEM
      

      This restriction is required because WebSphere MQ uses keys to build internal control structures. Mounting /var/mqm as a cluster file system with a symbolic link for /var/mqm/qmgrs/@SYSTEM to a local file ensures that any derived shared memory keys are unique on each node.

      If multiple queue managers are required and your queue manager was created before you setup a symbolic link for /var/mqm/qmgrs/@SYSTEM, you must copy the contents, with permissions, of /var/mqm/qmgrs/@SYSTEM to /var/mqm_local/qmgrs/@SYSTEM before creating the symbolic link.

      You must stop all queue managers before doing this and perform this on each node of the cluster.


      # mkdir -p /var/mqm_local/qmgrs/@SYSTEM
      # cd /var/mqm/qmgrs
      # cp -rp @SYSTEM/* /var/mqm_local/qmgrs/@SYSTEM
      # rm -r @SYSTEM
      # ln -s /var/mqm_local/qmgrs/@SYSTEM @SYSTEM
      
  7. Mount the highly available local file system

    Perform this step on one node of the cluster.

    1. If a non ZFS highly available file system is being used for the WebSphere MQ files.

      Ensure the node has ownership of the disk set or disk group.

      For Solaris Volume Manager.


      # metaset -s disk-set -t
      

      For Veritas Volume Manager.


      # vxdg -C import disk-group
      # vxdg -g disk-group startall
      
      1. If the global zone is being used for WebSphere MQ.


        # mount websphere-mq-highly-available-local-file-system
        
      2. If a non-global zone or failover zone is being used for WebSphere MQ.

        Create the mount point on all zones of the cluster that are being used for WebSphere MQ.

        Mount the highly available local file system on one of the zones being used .


        # zlogin zonename mkdir websphere-mq-highly-available-local-file-system
        #
        # mount -F lofs websphere-mq-highly-available-local-file-system \
        > /zonepath/root/websphere-mq-highly-available-local-file-system
        
    2. If a ZFS highly available file system is being used for WebSphere MQ.


      # zpool export -f HAZpool
      # zpool import -R /zonepath/root HAZpool
      
  8. Install WebSphere MQ on all nodes or zones of the cluster.

    After you have created and mounted the appropriate file systems for the WebSphere MQ files and /var/mqm, you must install WebSphere MQ on each node of the cluster, either in the global zone and/or the non-global zone or failover zone as required.

    Follow the IBM WebSphere MQ for Sun Solaris Quick Beginnings manual to install WebSphere MQ.

  9. Create the WebSphere MQ queue manager.

    Follow the IBM WebSphere MQ for Sun Solaris Quick Beginnings manual to create a WebSphere MQ queue manager.

  10. If a local file system is used for /var/mqm copy /var/mqm/mqs.ini to all nodes or zones of the cluster.

    Within this deployment:

    • If /var/mqm/mqs.ini is placed on local storage as a local file system, you must copy /var/mqm/mqs.ini from the node or zone where the queue manager was created to all other nodes or zones in the cluster where the queue manager will run.

    • You must perform this step on all nodes or zones in the cluster only if /var/mqm is a local file system.

    1. If the global zone is being used for WebSphere MQ.


      # rcp /var/mqm/mqs.ini remote-node:/var/mqm/mqs.ini
      
    2. If a non-global zone or failover zone is being used for WebSphere MQ.


      # rcp /zonepath/root/var/mqm/mqs.ini \
      > remote-node:/zonepath/root/var/mqm/mqs.ini