You are looking at the documentation of a prior release. To read the documentation of the latest release, please
visit here.
New to KubeDB? Please start here.
updating RabbitMQ version Overview
This guide will give you an overview on how KubeDB Ops-manager operator update the version of RabbitMQ database.
Before You Begin
- You should be familiar with the following KubeDBconcepts:
How update version Process Works
The following diagram shows how KubeDB Ops-manager operator used to update the version of RabbitMQ. Open the image in a new tab to see the enlarged version.
The updating process consists of the following steps:
- At first, a user creates a - RabbitMQCustom Resource (CR).
- KubeDBProvisioner operator watches the- RabbitMQCR.
- When the operator finds a - RabbitMQCR, it creates required number of- PetSetsand other kubernetes native resources like secrets, services, etc.
- Then, in order to update the version of the - RabbitMQdatabase the user creates a- RabbitMQOpsRequestCR with the desired version.
- KubeDBOps-manager operator watches the- RabbitMQOpsRequestCR.
- When it finds a - RabbitMQOpsRequestCR, it halts the- RabbitMQobject which is referred from the- RabbitMQOpsRequest. So, the- KubeDBProvisioner operator doesn’t perform any operations on the- RabbitMQobject during the updating process.
- By looking at the target version from - RabbitMQOpsRequestCR,- KubeDBOps-manager operator updates the images of all the- PetSets. After each image update, the operator performs some checks such as if the oplog is synced and database size is almost same or not.
- After successfully updating the - PetSetsand their- Podsimages, the- KubeDBOps-manager operator updates the image of the- RabbitMQobject to reflect the updated state of the database.
- After successfully updating of - RabbitMQobject, the- KubeDBOps-manager operator resumes the- RabbitMQobject so that the- KubeDBProvisioner operator can resume its usual operations.
In the next doc, we are going to show a step-by-step guide on updating of a RabbitMQ database using updateVersion operation.































