RabbitMQ Cluster Kubernetes Operator
Kubernetes operator to deploy and manage RabbitMQ clusters. This repository contains a custom controller and custom resource definition (CRD) designed for the lifecycle (creation, upgrade, graceful shutdown) of a RabbitMQ cluster.
Quickstart
If you have a running Kubernetes cluster and kubectl
configured to access it, run the following command to install the operator:
kubectl apply -f https://github.com/rabbitmq/cluster-operator/releases/latest/download/cluster-operator.yml
Then you can deploy a RabbitMQ cluster:
kubectl apply -f https://raw.githubusercontent.com/rabbitmq/cluster-operator/main/docs/examples/hello-world/rabbitmq.yaml
Documentation
RabbitMQ Cluster Kubernetes Operator is covered by several guides:
- Operator overview
- Deploying an operator
- Deploying a RabbitMQ cluster
- Monitoring the cluster
- Troubleshooting operator deployments
In addition, a number of examples can be found in this repository.
The doc guides are open source. The source can be found in the RabbitMQ website repository
under site/kubernetes
.
Supported Versions
The operator deploys RabbitMQ 3.8.21
by default, and supports versions from 3.8.8
upwards. The operator requires Kubernetes 1.18
or newer.
Versioning
RabbitMQ Cluster Kubernetes Operator follows non-strict semver.
The versioning guidelines document contains guidelines on how we implement non-strict semver. The version number MAY or MAY NOT follow the semver rules. Hence, we highly recommend to read the release notes to understand the changes and their potential impact for any release.
Contributing
This project follows the typical GitHub pull request model. Before starting any work, please either comment on an existing issue, or file a new one.
Please read contribution guidelines if you are interested in contributing to this project.
License
Licensed under the MPL, same as RabbitMQ server.
Copyright
Copyright 2020-2021 VMware, Inc. All Rights Reserved.