New to KubeDB? Please start here.
Horizontal Scaling Overview
This guide will give you an overview of how KubeDB
Ops Manager scales up/down the number of members of a MSSQLServer
.
Before You Begin
- You should be familiar with the following
KubeDB
concepts:
How Horizontal Scaling Process Works
The following diagram shows how KubeDB
Ops Manager used to scale up the number of members of a MSSQLServer
cluster. 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
MSSQLServer
CR.KubeDB
provisioner operator watches for theMSSQLServer
CR.When it finds one, it creates a
PetSet
and related necessary stuff like secret, service, etc.Then, in order to scale the cluster up or down, the user creates a
MSSQLServerOpsRequest
CR with the desired number of replicas after scaling.KubeDB
Ops Manager watches forMSSQLServerOpsRequest
.When it finds one, it halts the
MSSQLServer
object so that theKubeDB
provisioner operator doesn’t perform any operation on theMSSQLServer
during the scaling process.Then
KubeDB
Ops Manager will add nodes in case of scale up or remove nodes in case of scale down.Then the
KubeDB
Ops Manager will scale the PetSet replicas to reach the expected number of replicas for the cluster.After successful scaling of the PetSet’s replica, the
KubeDB
Ops Manager updates thespec.replicas
field ofMSSQLServer
object to reflect the updated cluster state.After successful scaling of the
MSSQLServer
replicas, theKubeDB
Ops Manager resumes theMSSQLServer
object so that theKubeDB
provisioner operator can resume its usual operations.
In the next doc, we are going to show a step-by-step guide on scaling of a MSSQLServer cluster using Horizontal Scaling.