New to KubeDB? Please start here.
FerretDB Horizontal Scaling
This guide will give an overview on how KubeDB Ops-manager operator scales up or down FerretDB replicas of PetSet.
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 FerretDB 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
FerretDBCustom Resource (CR).KubeDBProvisioner operator watches theFerretDBCR.When the operator finds a
FerretDBCR, it createsPetSetand related necessary stuff like secrets, services, etc.Then, in order to scale the
PetSetof theFerretDBdatabase the user creates aFerretDBOpsRequestCR with desired information.KubeDBOps-manager operator watches theFerretDBOpsRequestCR.When it finds a
FerretDBOpsRequestCR, it pauses theFerretDBobject which is referred from theFerretDBOpsRequest. So, theKubeDBProvisioner operator doesn’t perform any operations on theFerretDBobject 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 theFerretDBOpsRequestCR.After the successfully scaling the replicas of the related PetSet Pods, the
KubeDBOps-manager operator updates the number of replicas in theFerretDBobject to reflect the updated state.After the successful scaling of the
FerretDBreplicas, theKubeDBOps-manager operator resumes theFerretDBobject 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 FerretDB using FerretDBOpsRequest CRD.































