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.
Elasticsearch Compute Resource Autoscaling
This guide will give an overview on how the KubeDB Autoscaler operator autoscales the database compute resources i.e. cpu and memory using elasticsearchautoscaler crd.
Before You Begin
- You should be familiar with the following KubeDBconcepts:
How Compute Autoscaling Works
The Auto Scaling process consists of the following steps:
- At first, a user creates an - ElasticsearchCustom Resource Object (CRO).
- KubeDBCommunity operator watches the- ElasticsearchCRO.
- When the operator finds an - ElasticsearchCRO, it creates required number of- StatefulSetsand related necessary stuff like secrets, services, etc.
- Then, in order to set up autoscaling of the various nodes (ie. master, data, ingest, etc.) of the - Elasticsearchdatabase the user creates an- ElasticsearchAutoscalerCRO with desired configuration.
- KubeDBAutoscaler operator watches the- ElasticsearchAutoscalerCRO.
- KubeDBAutoscaler operator creates required number of Vertical Pod Autoscaler VPA for different components of the database, as specified in the- elasticsearchautoscalerCRO.
- Then - KubeDBAutoscaler operator continuously watches the VPA objects for the recommendation.
- If the VPA generated recommendation doesn’t match the current resources of the database, then the - KubeDBAutoscaler operator creates an- ElasticsearchOpsRequestCRO to scale the database to match the recommendation provided by the VPA object.
- KubeDBEnterprise operator watches the- ElasticsearchOpsRequestCRO.
- Then the - KubeDBEnterprise operator will scale the database component vertically as specified on the- ElasticsearchOpsRequestCRO.
In the next docs, we are going to show a detailed-guide on Autoscaling of various Elasticsearch database components using ElasticsearchAutoscaler CRD.































