New to KubeDB? Please start here.
FerretDB Vertical Scaling
This guide will give an overview on how KubeDB Ops-manager operator updates the resources(for example CPU and Memory etc.) of the FerretDB
.
Before You Begin
- You should be familiar with the following
KubeDB
concepts:
How Vertical Scaling Process Works
The following diagram shows how KubeDB Ops-manager operator updates the resources of the FerretDB
. Open the image in a new tab to see the enlarged version.
The vertical scaling process consists of the following steps:
At first, a user creates a
FerretDB
Custom Resource (CR).KubeDB
Provisioner operator watches theFerretDB
CR.When the operator finds a
FerretDB
CR, it createsPetSet
and related necessary stuff like secrets, services, etc.Then, in order to update the resources(for example
CPU
,Memory
etc.) of theFerretDB
, the user creates aFerretDBOpsRequest
CR with desired information.KubeDB
Ops-manager operator watches theFerretDBOpsRequest
CR.When it finds a
FerretDBOpsRequest
CR, it pauses theFerretDB
object which is referred from theFerretDBOpsRequest
. So, theKubeDB
Provisioner operator doesn’t perform any operations on theFerretDB
object during the vertical scaling process.Then the
KubeDB
Ops-manager operator will update resources of the PetSet to reach desired state.After the successful update of the resources of the PetSet’s replica, the
KubeDB
Ops-manager operator updates theFerretDB
object to reflect the updated state.After the successful update of the
FerretDB
resources, theKubeDB
Ops-manager operator resumes theFerretDB
object so that theKubeDB
Provisioner operator resumes its usual operations.
In the next docs, we are going to show a step-by-step guide on updating resources of FerretDB FerretDBOpsRequest
CRD.