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.2.3. Update a Profile
Atomic container upgrades Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
Normally, when you edit a profile that is already deployed in a container, the modification takes effect immediately. This is because the Fabric Agent in the affected container (or containers) actively monitors the fabric registry in real time.
In practice, however, immediate propagation of profile modifications is often undesirable. In a production system, you typically want to roll out changes incrementally: for example, initially trying out the change on just one container to check for problems, before you make changes globally to all containers. Moreover, sometimes several edits must be made together to reconfigure an application in a consistent way.
Profile versioning Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
For quality assurance and consistency, it is typically best to modify profiles atomically, where several modifications are applied simultaneously. To support atomic updates, fabric implements profile versioning. Initially, the container points at version 1.0 of a profile. When you create a new profile version (for example, version 1.1), the changes are invisible to the container until you upgrade it. After you are finished editing the new profile, you can apply all of the modifications simultaneously by upgrading the container to use the new version 1.1 of the profile.
Upgrade to a new profile Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
For example, to modify the
example-camel-hello
profile, when it is deployed and running in a container, follow the recommended procedure:
- Create a new version, 1.1, to hold the pending changes by entering this console command:
JBossFuse:karaf@root> fabric:version-create Created version: 1.1 as copy of: 1.0
JBossFuse:karaf@root> fabric:version-create Created version: 1.1 as copy of: 1.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The new version is initialised with a copy of all of the profiles from version 1.0. - Use the
fabric:profile-edit
command to change the message that is written to the container log by the Camel route. Enter the followingprofile-edit
command to edit thecamel.xml
resource:JBossFuse:karaf@root> fabric:profile-edit --resource camel.xml example-camel-hello 1.1
JBossFuse:karaf@root> fabric:profile-edit --resource camel.xml example-camel-hello 1.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow This opens the built-in text editor for editing profile resources (see Appendix A, Editing Profiles with the Built-In Text Editor).Remember to specify version1.1
to thefabric:profile-edit
command, so that the modifications are applied to version 1.1 of theexample-camel-hello
profile. - Upgrade the
child
container to version1.1
by entering this console command:JBossFuse:karaf@root> fabric:container-upgrade 1.1 child
JBossFuse:karaf@root> fabric:container-upgrade 1.1 child
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Roll back to an old profile Copy linkLink copied to clipboard!
Copy linkLink copied to clipboard!
You can easily roll back to the old version of the
example-camel-hello
profile, using the fabric:container-rollback
command like this:
JBossFuse:karaf@root> fabric:container-rollback 1.0 child
JBossFuse:karaf@root> fabric:container-rollback 1.0 child