3.3.x to 3.4.x Migration Guide

This is a minor HiveMQ upgrade. HiveMQ 3.4 is a drop in replacement for HiveMQ 3.3.x

No manual steps are required for upgrading from HiveMQ 3.3 to HiveMQ 3.4.

HiveMQ Upgrade

  • Create a backup of the entire HiveMQ installation folder

  • Install HiveMQ 3.4 as described in the HiveMQ Installation Guide

  • Migrate the configuration file contents of your old HiveMQ installation

  • To migrate the persistent data, copy all contents in the data folder from your backup to the new HiveMQ 3.4 data folder. On first start HiveMQ 3.4 will migrate the persistent data from your previous installation into its new persistent storage.

Configuration File Upgrade

HiveMQ 3.4 introduces some changes to the configuration file for:

Persistent Data Migration

HiveMQ 3.4 automatically migrates all data in your data folder from previous versions to updated file storage formats.

To allow HiveMQ to migrate the persistent data from previous versions you have to copy the contents of your data folder from the previous installation to the data folder of the new installation.

Linux example
cp -r /opt/hivemq-3.3.4/data/* /opt/hivemq-3.4.0/data/

On the first start up HiveMQ 3.4 will automatically migrate the persistent data from your previous installation into its new persistent storage.

Cluster Upgrade

Rolling upgrades are supported and it’s possible to run HiveMQ version 3.3 and version 3.4 simultaneously in the same cluster. When all nodes are upgraded to the new version, all new cluster features are enabled by default by the HiveMQ cluster. No manual intervention is needed.

Please follow the instructions in our user guide to ensure a seamless and successful rolling upgrade.

Please see the HiveMQ Clustering Documentation for more information.

JMX Monitoring

HiveMQ 3.4 has JMX enabled by default at port 9010.

To run more than one HiveMQ on a single server, change the port in your startup script.

run.sh Example
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 ..."
run.bat Example
rem set "JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 ..."

Cluster Overload Protection

HiveMQ 3.4 comes with a cluster overload protection mechanism.

For more information see Cluster Overload Protection.

Upgrading your plugins

In order to upgrade your plugin, execute the following steps:

  • update your pom.xml

Adapt your pom.xml file

Change your HiveMQ SPI version to 3.4.2 in your pom.xml file

<dependency>
    <groupId>com.hivemq</groupId>
    <artifactId>hivemq-spi</artifactId>
    <version>3.4.2</version>
</dependency>