Upgrading RabbitMQ for PCF

Warning: RabbitMQ for Pivotal Cloud Foundry v1.17 is no longer supported because it has reached the End of General Support (EOGS) phase as defined by the Support Lifecycle Policy. To stay up to date with the latest software and security updates, upgrade to a supported version.

RabbitMQ for PCF enables automated upgrades between versions of the product. In some versions, you might be required to take the RabbitMQ cluster offline. Whenever this is necessary, it is noted in the release notes for those versions.

For product versions and upgrade paths, see Upgrade Planner.

This topic applies to both the on-demand and pre-provisioned services.

About the Upgrade

This section provides information about the upgrade process, release cycle, and downtime during upgrades.

Downtime When Upgrading to v1.17

Upgrading to v1.17.3 and later does not cause a cluster shutdown. You will experience little to no downtime.

Upgrading to v1.17.2 and earlier causes app downtime. This is because the RabbitMQ cluster goes offline while each node upgrades to Erlang v21. After the final node upgrades, the cluster starts and the service is available again.

Pivotal recommends that you notify app owners of this expected downtime before you upgrade.

General Notes About Downtime

Resilient apps are less likely to crash during downtime. For how developers can create resilient apps, see the workloads repository in GitHub.

A guide for downtime during upgrade deployments is shown in the table below. In some cases, the RabbitMQ cluster remains available during a tile upgrade, but individual queues on cluster nodes might be taken offline.

The length of the downtime depends on whether there is a stemcell update to replace the operating system image or whether the existing VM can just have the RabbitMQ software updated. Stemcell updates incur additional downtime while the IaaS creates the new VM.

The RabbitMQ cluster becomes unavailable only when upgrading between specific versions of Erlang or RabbitMQ. This is stated in the release notes for those versions.

Important: The following table is only a guide. Always check the release notes for the version you are upgrading to.

Upgrade Type Will Downtime Be Required For This Upgrade or Update?
Major Tile Version Refer to the release notes for that version.
Minor Tile Version For 1.17.2 and earlier: The RabbitMQ cluster is taken offline for the duration of the upgrade.
For 1.17.3 and later: Normally these are rolling deployments with each node being updated in turn. In these cases, the cluster remains available, but individual queues might be taken offline as each node is restarted. There might be specific migration paths that require downtime. These are identified in the release notes for that version.
Patch Tile Version Normally these are rolling deployments with each node being updated in turn. In these cases the cluster remains available, but individual queues might be taken offline as each node is restarted. There might be specific migration paths that require downtime. These are identified in the release notes for that version.
Stemcell-Only Patch Tile Version Where the patch update is only a new stemcell version, these are rolling deployments with each node being updated in turn. In these cases the cluster remains available, but individual queues might be taken offline as each node is restarted.

General Notes about the Upgrade Process

The following notes about the upgrade process apply to upgrading to any version of RabbitMQ for PCF.

  • Upgrading to a newer version of the product does not cause any loss of data or configuration.

  • It might take busy RabbitMQ nodes a long time to shut down during the upgrade and you must not interrupt this process.

  • To benefit from rolling upgrades, configure your apps to reconnect after a node restarts. For more information, see Handling Node Restarts in Applications in the RabbitMQ documentation.

  • The benefit you get from stemcell rolling upgrades depends on how you have configured network partition handling and the Resource Config tab. An HAProxy instance count of 2 and a RabbitMQ node count of 3 are required for rolling stemcell upgrades. These counts are the default. For more information, see Clustering and Network Partitions.

  • Ops Manager ensures the instances are updated with the new packages and any configuration changes are applied automatically.

Release Policy

When a new version of RabbitMQ is released, a new version of RabbitMQ for PCF is released soon after. For more information, see the Release Policy.

Starting with RabbitMQ for PCF v1.14.0, the RabbitMQ tile uses floating stemcells. This means that the tile can be updated to use the latest minor version of a stemcell, without the need to download a new RabbitMQ for PCF patch release from Pivotal Network.

Upgrade RabbitMQ for PCF

To upgrade the product, follow these steps:

  1. Download the latest version of the product from Pivotal Network.
  2. Upload the new .pivotal file to Ops Manager.
  3. Upload the stemcell associated with the update (if required).
  4. Update any new mandatory configuration parameters (if required).
  5. Click Review Pending Changes. For more information about this Ops Manager page, see Reviewing Pending Product Changes.
  6. Click Apply Changes. The rest of the process is automated.
Was this helpful?
What can we do to improve?