The meshIQ Platform versions 11 is distributed with ActiveMQ version 5.18.3. XRay versions 1.5 and 1.6 are distributed with ActiveMQ versions 5.14.5 and 5.17.6, respectively.
Customers who would like to manually update the Apache ActiveMQ component may follow the instructions below. These instructions apply to XRay versions 1.5 and 1.6 and to the meshIQ Platform versions 11 and later.
- Stop the ActiveMQ service by using the command
./stop.sh mq
in$APIN_HOME/sbin
. - To update the ActiveMQ component, download the latest ActiveMQ 5.xx version from https://activemq.apache.org/download.
- Unlink the current version of ActiveMQ by using the command
unlink current
. - Link the current version in
$APIN_HOME/actmq
using the commandln -s apache-activemq-5.xx.x current
. - If not done as part of a previous update, please follow the instructions below for Configuration changes for ActiveMQ upgrades to v5.17.x or 5.18.3.
- After all steps have been completed, restart the ActiveMQ service by using the command
./start.sh mq
to apply the changes.
Configuration changes for ActiveMQ upgrades to v5.17.x or 5.18.3
The following procedure assumes that the ActiveMQ distribution is installed in
$APIN_HOME/actmq
. - Make the following changes to
$APIN_HOME/actmq/current/conf/activemq.xml
.- Update the <broker> element by adding schedulePeriodForDestinationPurge="300000"
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="JKMessageBus" dataDirectory="${activemq.data}" schedulePeriodForDestinationPurge="300000">
- (Optional.) Change brokerName in the line from step a.
- Within the policyEntries element found here:
<destinationPolicy>
<policyMap>
<policyEntries>
Add the following:<policyEntry queue="jkool.client.>" gcInactiveDestinations="true" inactiveTimoutBeforeGC="120000" sendAdvisoryIfNoConsumers="true"/>
- To be able to connect to the web console remotely, it must be run on a local machine. Restore the "host" value for bean "jettyPort" from "127.0.0.1" back to "0.0.0.0" by updating line 123 of
$APIN_HOME/actmq/current/conf/jetty.xml
:<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="0.0.0.0"/>
<property name="port" value="8161"/>
</bean> - Change the ActiveMQ path in
$APIN_HOME/sbin/apin_env.sh
as follows:export ACTIVEMQ_HOME=`realpath $APIN_HOME/actmq/current`