New to KubeDB? Please start here.
RabbitMQ Horizontal Scaling
This guide will give an overview on how KubeDB Ops-manager operator scales up or down RabbitMQ cluster.
Before You Begin
- You should be familiar with the following
KubeDBconcepts:
How Horizontal Scaling Process Works
The following diagram shows how KubeDB Ops-manager operator scales up or down RabbitMQ database components. Open the image in a new tab to see the enlarged version.
The Horizontal scaling process consists of the following steps:
At first, a user creates a
RabbitMQCustom Resource (CR).KubeDBProvisioner operator watches theRabbitMQCR.When the operator finds a
RabbitMQCR, it creates required number ofPetSetsand related necessary stuff like secrets, services, etc.Then, in order to scale the
RabbitMQcluster, the user creates aRabbitMQOpsRequestCR with desired information.KubeDBOps-manager operator watches theRabbitMQOpsRequestCR.When it finds a
RabbitMQOpsRequestCR, it halts theRabbitMQobject which is referred from theRabbitMQOpsRequest. So, theKubeDBProvisioner operator doesn’t perform any operations on theRabbitMQobject during the horizontal scaling process.Then the
KubeDBOps-manager operator will scale the related PetSet Pods to reach the expected number of replicas defined in theRabbitMQOpsRequestCR.After the successfully scaling the replicas of the related PetSet Pods, the
KubeDBOps-manager operator updates the number of replicas in theRabbitMQobject to reflect the updated state.After the successful scaling of the
RabbitMQreplicas, theKubeDBOps-manager operator resumes theRabbitMQobject so that theKubeDBProvisioner operator resumes its usual operations.
In the next docs, we are going to show a step by step guide on horizontal scaling of RabbitMQ database using RabbitMQOpsRequest CRD.































