Red Hat AMQ 6
As of February 2025, Red Hat is no longer supporting Red Hat AMQ 6. If you are using AMQ 6, please upgrade: Migrating to AMQ 7.Migration Guide
Red Hat AMQ
Migrating to Red Hat AMQ 6.3
Version 6.3
Copyright © 2011-2017 Red Hat, Inc. and/or its affiliates.
31 Jul 2020
Abstract
This guide lays out the issues a user will encounter when upgrading to the latest version of Red Hat AMQ.
Chapter 1. Migration Overview
Abstract
This chapter highlights some of the key points that might affect your applications, when migrating to AMQ 6.3.
1.1. Upgraded Components
Version upgrades
Some of the major components in JBoss Fuse and AMQ 6.3 have been upgraded. The following versions are used in AMQ:
Component | Version for 6.3 | |
---|---|---|
Apache ActiveMQ | 5.11.0 | |
Apache Karaf | 2.4.0 | |
Fabric8 (was Fuse Fabric) | 1.2.0 |
Chapter 2. Deprecated and Removed Features
OpenWire JMS is the only OpenWire client that will continue to be supported in the next major release of AMQ
In the next major release of AMQ (AMQ 7.0), support for most of the OpenWire clients will be dropped. The only OpenWire client that will continue to be supported is OpenWire JMS.
Support for KahaDB and LevelDB will be dropped in the next major release of AMQ
In the next major release of AMQ (AMQ 7.0), both the KahaDB message store and the LevelDB message store will be dropped. JBoss AMQ 7 has its own message store implementation and data model.
The implementation of the JDBC persistence adapter will change in the next major release of AMQ
While JBoss AMQ 7 will support a JDBC adapter, the AMQ 6.x JBDC adapter will not be supported on JBoss AMQ 7. A new JDBC store will need to be created.
Support for Apache Karaf (OSGi) container will be dropped in the next major release of AMQ
In the next major release of AMQ (AMQ 7.0), the Apache Karaf (OSGi) container will be dropped. AMQ 7.0 will be packaged as a standalone application, without any container technology.
Support for Fabric8 1.x will be dropped in the next major release of AMQ
In the next major release of AMQ (planned as AMQ 7.0), Fabric8 version 1 will be dropped, to be replaced by Fabric8 version 2. The Fabric8 version 2 upgrade is a new generation of distributed container technology that is entirely cloud-based and leverages the OpenShift technology stack to provide the foundation for containerized AMQ applications.
bin/deletefabric8 script has been removed
The
bin/deletefabric8
script has been removed in this release.
Tanuki based wrapper for installing AMQ as a service is deprecated
The Tanuki based wrapper scripts—generated using the
wrapper:install
Karaf console command—for installing AMQ as a service are deprecated since AMQ 6.3 and will be removed in a future release of AMQ. To install the Apache Karaf container as a service, it is recommended that you use the new karaf-service-*.sh
scripts from the bin/contrib
directory instead.
bin/patch script is deprecated
The
bin/patch
script (bin\patch.bat
on Windows O/S) is deprecated and will be removed in a future release.
Spring Dynamic Modules (Spring-DM) is deprecated
Spring-DM (which integrates Spring XML with the OSGi service layer) is deprecated since 6.2.1 and you should use the Blueprint framework instead. Using Blueprint does not prevent you from using the Java libraries from the Spring framework: the latest version of Spring is compatible with Blueprint.
REST API is not supported
REST API is not supported in AMQ 6.x and never has been. The REST API described in the Apache ActiveMQ community documentation, http://activemq.apache.org/rest.html, is only a demonstration, not a fully-developed feature. It cannot be used with AMQ 6.x and has multiple gaps in its functionality that make it unsuitable for production use.
Chapter 3. Apache ActiveMQ Issues
Abstract
AMQ 6.3 still uses Apache ActiveMQ 5.11.0.
3.1. Migrating Clients
Migrating Apache ActiveMQ clients
In general, it is recommended that you update your Apache ActiveMQ clients at the same time that you update the brokers, in order to guarantee compatibility between clients and brokers.
It is possible, in some cases, that older client versions might be interoperable with later broker versions. The Openwire protocol supports version negotiation, such that an old client can negotiate the lowest common version with its peer and use that version. But AMQ does not have a comprehensive test suite for testing compatibility between all of the different versions of Apache ActiveMQ. Hence, to be sure of compatibility, it is recommended that you upgrade your clients along with your brokers to use the same version.
3.2. Dependency Upgrades
Apache Karaf
AMQ and JBoss Fuse use Apache Karaf version 2.4.0.
Chapter 4. Migrate Data Store
Overview
AMQ on Apache Karaf uses a KahaDB data store. There is an automatic migration facility that enables the KahaDB data store to be migrated to the new AMQ version.
The Aries transaction module must be installed and enabled before it can be used. See Fuse Transaction Guide for more details. Ignore the Aries transaction files instructions below if you do not have Aries installed.
Migrate the KahaDB Data Store
Note
When migrating or patching AMQ, always back up the KahaDB files and Aries transaction files.
- Backup the KhahaDB files and Aries transaction files from the old container. The files can be found at:
- KahaDB files -
InstallDir/data/amq/kahadb/*.*
- Aries transaction files -
InstallDir/data/txlog/*.*
- Manually copy all of the KahaDB files from the old container to the same location in the new container.
- Manually copy all Aries transaction log files from the same location in the sold container to the new container.
Auto-migration will take place when the new container is started.
Legal Notice
Trademark Disclaimer
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Apache, ServiceMix, Camel, CXF, and ActiveMQ are trademarks of Apache Software Foundation. Any other names contained herein may be trademarks of their respective owners.