RabbitMQ Cluster Kubernetes Operator is a Kubernetes operator that automates provisioning, management, and operations of RabbitMQ clusters running on Kubernetes.
Kubernetes Operators are software extensions to Kubernetes that provide custom resources for management of applications, services and their components.
In this and other Operator related guides, we use "Operator" (with a capital O) to refer to a Kubernetes Operator pattern implementation and "operator" (with a lowercase o) to refer to a technical operations engineer (administrator).
The Operator provides a consistent and easy way to deploy RabbitMQ clusters to Kubernetes and run them, including "day two" (continuous) operations. RabbitMQ clusters deployed using the operator can be used by applications running on Kubernetes or outside of Kubernetes.
Documentation of the Operator spans several guides:
The Operator is open source. You can contribute to its development on GitHub.
The Operator is released under the Mozilla Public License 2.0.
The operator provides the following key features:
Automated rolling upgrades of RabbitMQ clusters is a feature that will be provided in later versions.
The Operator requires
Deleted Secret objects will be recreated by the Kubernetes Operator but the newly generated secret value will not be deployed to the RabbitMQ cluster. For example, if the Secret with administrator credentials is deleted, a new Secret will be created with new username and password, but those will not be reflected in the RabbitMQ cluster. It works the same way for any Secret value, e.g. the value of the shared inter-node authentication secret known as the Erlang cookie.
If you have questions about the contents of this guide or any other topic related to RabbitMQ, don't hesitate to ask them on the RabbitMQ mailing list.
If you'd like to contribute an improvement to the site, its source is available on GitHub. Simply fork the repository and submit a pull request. Thank you!