Chapter 8 Message Queue
This chapter describes how to upgrade Message Queue software from Java ES 5
(Release 5) to Java ES 5 Update 1 (Release 5U1): Sun Java System Message Queue 3.7
UR 2.
The chapter provides a general overview of Message Queue upgrade
issues and procedures for the different upgrade paths supported by Java ES 5 Update 1.
This chapter covers the following topics:
Note –
File locations in this chapter are specified with respect to a
fixed directory path referred to as MessageQueue-base.
The default value of MessageQueue-base is C:\Program
Files\Sun\JavaES5\mq.
Overview of Message Queue Upgrades
This section describes the following general aspects of Message Queue
that impact upgrading to Java ES 5 Update 1 :
About Java ES 5 Update 1 Message Queue
Release 5U1 Message Queue is a maintenance release that fixes bugs
in Release 5 Message Queue. Release 5 Message Queue was a feature release
that represented a minor upgrade with respect to Release 4.
Message Queue software has historically included two editions, a Platform
Edition and an Enterprise Edition, each corresponding to a different feature
set and licensed capacity. Enterprise Edition was for deploying and running
messaging applications in an enterprise production environment. Platform Edition
was mainly for developing, and debugging messaging applications and components.
With Release 5 Message Queue, the Platform Edition was deprecated and Message Queue includes
all Enterprise Edition features. An upgrade from an earlier Java ES version
to Java ES 5 converts any installed Platform Edition to full Message Queue enterprise-level
features.
Message Queue Upgrade Roadmap
The following table shows the supported Message Queue upgrade paths
to Release 5U1.
Table 8–1 Upgrade Paths to Java ES Update 1Message Queue 3.7
UR2
|
Java ES Release
|
Message Queue Release
|
General Approach
|
Reconfiguration Required
|
|
Release 5
|
Sun Java System Message Queue 3.7 UR1
|
Maintenance Upgrade. Apply patches.
|
None
|
Message Queue Data
Message Queue, like other Java ES components, makes use of various kinds
of data that for any specific upgrade might need to be migrated to an upgraded
version. Table 8–2 shows the type of
data that could be impacted by an upgrade of Message Queue software.
In the table, Instance-Name identifies the
name of the Message Queue broker instance with which the data is associated
and MessageQueue-base is the installation directory
for Message Queue.
For Java ES 5 Update 1, C:\Program Files\Sun\JavaES5\mq is the default installation location for Message Queue . For Java ES 4, C:\Sun\MessageQueue is the default installation location.
Table 8–2 Message Queue Data Usage
|
Data Category
|
Location
|
Usage
|
|
Broker instance configuration properties
|
MessageQueue-base\var\instances\Instance-Name\config.properties
|
Broker and related services configurations
|
|
Persistent store for dynamic application data
|
Release 4:
MessageQueue-base\var\instances\Instance-Name\fs350
Release 5:
MessageQueue-base\var\instances\Instance-Name\fs370
or accessible through the Java Database Connectivity (JDBCTM)
API
|
Stores messages, destinations, durable subscriptions, transactions,
and other dynamic data
|
|
Administered objects (object store)
|
Local directory of your choice or an LDAP Directory Server
|
Objects used to configure client/broker connections
|
|
Security: user repository
|
MessageQueue-base\var\instances\Instance-Name\etc\passwd
|
Stores user data used for authentication and authorization
|
|
Security: access control file (default location)
|
MessageQueue-base\var\instances\Instance-Name\etc\accesscontrol.properties
|
Sets the rules that authorize user access to destinations and related
capabilities
|
|
Security: passfile directory (default location)
|
MessageQueue-base\var\instances\Instance-Name\etc\
|
Stores encrypted password information.
|
|
Security: broker’s keystore file location
|
MessageQueue-base\etc
|
Stores encrypted certificate information for secure messaging.
|
Message Queue Dependencies
Message Queue dependencies on other Java ES components
can impact the procedure for upgrading and reconfiguring Message Queue software.
Changes in Message Queue interfaces or functions, for example, could require
upgraded version of components upon which Message Queue depends. The need
to upgrade such components depends upon the specific upgrade path.
Message Queue has dependencies on the following Java ES components:
-
Shared components. Message
Queue has dependencies on specific Java ES shared components, as listed in Table 1–8.
-
Directory Server (optional).
If you want to configure Message Queue to store administered objects and/or
user data in an LDAP directory rather than locally, you can use Directory
Server for that purpose.
-
Web Container (optional).
If you need HTTP messaging between client and broker, then Message Queue requires
web container support from Java ES Web Server or from Java ES Application
Server.
-
Databases (optional). You
can configure Java DB or a third-party database as a data store for the Message Queue persistence
layer.
Upgrading Message Queue from Java ES 5
This section includes information about upgrading Message Queue from
Java ES 5 to Java ES 5 Update 1 . The section covers the following topics:
Introduction
When upgrading Release 5 Message Queue to Release 5U1, consider the
following aspects of the upgrade process:
-
General Upgrade Approach. The
upgrade is achieved by patching Release 5 Message Queue.
-
Upgrade Dependencies. Message
Queue has dependencies on a number of Java ES shared components, (see Table 1–8), none of which need to be upgraded
when you perform a maintenance upgrade of Message Queue. However, Message
Queue requires that Windows Installer patch (126910–02) is already
applied.
-
Backward Compatibility.
Release 5U1 Message Queue is backwardly compatible with the Release 5 version.
-
Upgrade Rollback. You
can do a rollback of the Release 5 upgrade by reverting to the previous version,
which is left intact by the upgrade.
Release 5 Message Queue Upgrade
This section describes how to perform an upgrade of Message Queue from
Java ES 5 to Java ES 5 Update 1. The section covers the following topics:
Pre-Upgrade Tasks
Before you upgrade Message Queue, perform the tasks described below.
Verify Current Version Information
Verify the current version of Message Queue before you upgrade.
To Verify Current Version Information
-
Start the Message Queue broker with -version option.
imqbrokerd -version
The outputs that
indicate the Message Queue version are:
-
The outputs that indicate the Message Queue version are:
- Release 5U1
-
Sun Java System Message Queue 3.7 UR2
- Release 5
-
Sun Java System Message Queue 3.7 UR1
Upgrade Message Queue Dependencies
It is generally recommended that all Java ES components on a computer
system (and in a computing environment) be upgraded to Release 5U1. Release
5U1 Message Queue has no hard upgrade dependencies, so upgrade of shared components
is optional.
Back Up Message Queue Data
It is always a good practice to back up application data in a production
environment before performing an upgrade. Note the location of the persistent
store for the dynamic application data indicated in Table 8–2.
Upgrading Release 5 Message Queue
This section discusses considerations that impact the upgrade procedure
for Message Queue, followed by a description of the procedure itself.
Upgrade Considerations
The upgrade of Message Queue software to Java ES 5 Update 1 takes into
account the following considerations:
-
In a deployment architecture in which there are multiple instances
of Message Queue running on a single computer (all corresponding to the same
installed Message Queue image), you only have to upgrade the Message Queue
image once.
-
In a maintenance upgrade, you do not have to migrate configuration,
security and user data.
-
The Release 5U1 Message Queue upgrade patches for Windows
OS are shown in the following table:
Table 8–3 Patches to Upgrade Message Queue on
Windows
|
Description
|
Patch ID [Patch revision numbers are the minimum required for upgrade to Release
5U1. If newer revisions become available, use the newer ones instead of those
shown in the table.]
|
|
Message Queue core and C-API
|
125066–03
|
Upgrade Procedure
The procedure documented below applies to Message Queue instances residing
locally on the computer where the upgrade is taking place. Back up application
data in a production environment before performing an upgrade. For Message Queue data
locations, refer Table 8–2.
To Upgrade Message Queue to Java ES 5 Update 1
-
Stop any Message Queue client applications that are running.
In default Java ES 5 installation these are the Application Server instances.
-
Stop any Message Queue brokers that are running.
-
Choose Start > Settings > Control Panel.
-
Select Administrative Tools.
-
Select Services.
-
Select Message Queue Broker from the Services list.
You
can use one of the following methods to stop the service:
-
Right-click and select Stop.
-
Click the Stop Service icon.
-
Select Stop from the Action Menu.
-
Enter the following command.
imqcmd shutdown
bkr [ -b hostName:port ]
The system prompts you to provide
the user name and the password. The default user name is set to admin and
the default password is also set to admin.
-
Make sure you have upgraded any Java ES components upon which
Message Queue has hard upgrade dependencies (see Upgrade Message Queue Dependencies.
-
Obtain the required Message Queue Release 5U1 upgrade patches,
based on Table 8–3.
To obtain the patch, see Accessing Java ES Patches. Patches can be downloaded to \workingDirectory.
-
Install the patch.
Installation is generally performed
by running patch-id.exe, however,
be sure to consult the README.patch-id file
in the patch directory for installation instructions and for limitations when
updating the Windows 2000 service registry.
Note –
If you are prompted to restart the system, select No. Wait till
the patch installation process is completed and then restart and re-login
as the same user to complete the patch installation.
-
Verify the patch log file.
The log file is found
at: %TEMP%\SUNJAVAES_<patch-id>.log
-
Verify the patch installation with the utility ListJavaESPatches.exe.
Run ListJavaESPatches.exe and check
that the output includes the patch id of the patch that you have installed
in Step 5. For more information, see Identifying Installed Java ES Patches.
-
Start the Message Broker or Service from Service Control Panel.
Alternatively, you can start the Message Broker from the command line:
net start MQ3.7UR1_Broker
Note –
Due to a limitation of the Windows Patching System, the service
name MQ3.7UR1_Broker does not get updated during the application of the patch.
Verifying the Upgrade
You can verify successful upgrade of Message Queue as follows:
-
Start the Message Queue broker with -version option.
MessageQueue-base\bin\imqbrokerd.exe
-version
The messages that indicate the Java ES release version are:
- Release 5U1
-
Sun Java System Message Queue 3.7 UR2
- Release 5
-
Sun Java System Message Queue 3.7 UR1
Post-Upgrade Tasks
If you have upgraded the web container and are using the Message Queue
HTTP tunneling servlet, you may need to redeploy the servlet in the new web
container. Otherwise, you do not need to redeploy the servlet after upgrading Message Queue.
For more information about HTTP support, see the Sun Java System
Message Queue 3.7 UR1 Administration Guide.
Rolling Back the Upgrade
-
Stop any running Release 5U1 Message Queue brokers and Message
Queue service from Service Control Panel.
-
Execute Uninstall_patch-id.bat
-
Start the Message Queue broker or service from Service Control
Panel.
-
Start the Release 5 Message Queue.
-
Verify the Message Queue version with the following command.imqbrokerd -version