Menu

Archive for April, 2019

Simplifying rolling upgrades between minor versions with feature flags

Tuesday, April 23rd, 2019

In this post we will cover feature flags, a new subsystem in RabbitMQ 3.8. Feature flags will allow a rolling cluster upgrade to the next minor version, without requiring all nodes to be stopped before upgrading.

Minor Version Upgrades Today: RabbitMQ 3.6.x to 3.7.x

It you had to upgrade a cluster from RabbitMQ 3.6.x to 3.7.x, you probably had to use one of the following solutions:

  • Deploy a new cluster alongside the existing one (this strategy is known as the blue-green deployment), then migrate data & clients to the new cluster
  • Stop all nodes in the existing cluster, upgrade the last node that was stopped first, then continue upgrading all other nodes, one-by-one

Blue-green deployment strategy is low risk but also fairly complex to automate. On the other hand, a cluster-wide shutdown affects availability. Feature flags are meant to provide a 3rd option by making rolling cluster upgrades possible and reasonably easy to automate.

(more…)

This Month in RabbitMQ — April 3, 2019

Wednesday, April 3rd, 2019

RabbitMQ 3.8 is coming! If you haven’t already played with the beta (version 3 is now available), it’s time to start familiarizing yourself with what’s coming. Karl Nilsson and I will present on a webinar in May to walk through what’s new, so please register and attend.

We are also starting to look forward to the next RabbitMQ Summit, once again in London this coming November. The call for talks is open until May 10, so please consider sharing how you are using RabbitMQ or something you have tried and learned and want to share with the community.

(more…)