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.
Redis Compute Resource Autoscaling
This guide will give an overview on how KubeDB Autoscaler operator autoscales the database compute resources i.e. cpu and memory using redisautoscaler crd.
Before You Begin
- You should be familiar with the following
KubeDBconcepts:
How Compute Autoscaling Works
The following diagram shows how KubeDB Autoscaler operator autoscales the resources of Redis database components. Open the image in a new tab to see the enlarged version.
The Auto Scaling process consists of the following steps:
At first, a user creates a
Redis/RedisSentinelCustom Resource Object (CRO).KubeDBProvisioner operator watches theRedis/RedisSentinelCRO.When the operator finds a
Redis/RedisSentinelCRO, it creates required number ofStatefulSetsand related necessary stuff like secrets, services, etc.Then, in order to set up autoscaling of the
Redisdatabase the user creates aRedisAutoscalerCRO with desired configuration.Then, in order to set up autoscaling of the
RedisSentineldatabase the user creates aRedisSentinelAutoscalerCRO with desired configuration.KubeDBAutoscaler operator watches theRedisAutoscaler&&RedisSentinelAutoscalerCRO.KubeDBAutoscaler operator generates recommendation using the modified version of kubernetes official recommender for the database, as specified in theRedisAutoscaler/RedisSentinelAutoscalerCRO.If the generated recommendation doesn’t match the current resources of the database, then
KubeDBAutoscaler operator creates aRedisOpsRequest/RedisSentinelOpsRequestCRO to scale the database to match the recommendation generated.KubeDBOps-manager operator watches theRedisOpsRequest/RedisSentinelOpsRequestCRO.Then the
KubeDBops-manager operator will scale the database component vertically as specified on theRedisOpsRequest/RedisSentinelOpsRequestCRO.
In the next docs, we are going to show a step-by-step guide on Autoscaling of various Redis database components using RedisAutoscaler/RedisSentinelAutoscaler CRD.






























