Upgrading RabbitMQ for PCF
This product enables automated upgrades between versions of the product and is deployed through Ops Manager. In some cases, you might be required to take the cluster offline. When this is necessary, it is clearly noted in the release notes for that version.
The upgrade paths for each version are detailed at Pivotal Network - RabbitMQ for PCF page.
A guide for downtime during upgrade deployments is shown in the table below. In some cases, the cluster remains available during a tile upgrade, but individual queues on cluster nodes may be taken offline.
This is only a guide, so before upgrading, check the release notes for the version you are upgrading to.
|Upgrade Type||Will Downtime Be Required For This Upgrade / Update|
|Major Tile Version||The RabbitMQ cluster is taken offline for the duration of the upgrade.|
|Minor Tile Version||The RabbitMQ cluster is taken offline for the duration of the upgrade.|
|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 may be taken offline as each node is restarted. There are specific migration paths that require downtime, which 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 may be taken offline as each node is restarted.|
Review the following before starting an upgrade of RabbitMQ for PCF:
Upgrading to a newer version of the product does not cause any loss of data or configuration.
It may take busy RabbitMQ nodes a long time to shut down during the upgrade and you must not interrupt this process.
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. As of v1.7.7, these counts are the default. For more information, see Clustering and Network Partitions.
The length of the downtime depends on whether there is a stemcell update to replace the operating system image or if the existing VM can just have the RabbitMQ software updated. Stemcell updates incur additional downtime while the IaaS creates the new VM.
The cluster becomes unavailable only when upgrading between specific versions of Erlang or RabbitMQ. This is clearly stated in the release notes for those versions.
Ops Manager ensures the instances are updated with the new packages and any configuration changes are applied automatically.
For issues with upgrading RabbitMQ for PCF, see Troubleshooting On-Demand RabbitMQ for PCF.
Review the following before starting an upgrade that includes a new version of RabbitMQ or Erlang:
Ensure the cluster is healthy via the RabbitMQ Management UI. You cannot rely on the BOSH
instancesoutput, that reflects the state of Erlang VM, not RabbitMQ.
Stop RabbitMQ when upgrading the RabbitMQ or Erlang VM version.
To upgrade the product, follow these steps:
- Download the latest version of the product from Pivotal Network.
- Upload the new .pivotal file to Ops Manager.
- Upload the stemcell associated with the update (if required).
- Update any new mandatory configuration parameters (if required).
- Click Apply changes in the Ops Manager Installation Dashboard. The rest of the process is automated.
When a new version of RabbitMQ is released, a new version of RabbitMQ for PCF is released soon after.
Where there is a new version of RabbitMQ or another dependent software component, such as the stemcell released due to a critical CVE, Pivotal’s goal is to release a new version of the product within 48 hours.