If your service traffic fluctuates, such as between peak and off-peak hours, your cluster may have low resource utilization. You can downgrade the cluster to align resources with your business requirements and optimize costs. This can be done by reducing node specifications, decreasing the number of nodes, or adjusting storage types.
Notes on downgrading
Downgrading a cluster can cause service delays, configuration conflicts, and billing changes. Read the following prerequisites carefully before you proceed.
Service stability
The following rules apply to service stability during a cluster configuration change:
Cluster
Service status
Countermeasures
High payload + No replicas
High payload: High concurrency for write or query operations during a downgrade, with CPU usage > 60% and heap memory usage > 50%.
Occasional access timeouts
Enable a retry mechanism on the client.
Before downgrading, increase the number of index replicas to at least 1.
Number of data nodes ≤ 2 after the downgrade.
May cause data loss.
Perform this operation during off-peak hours.
Configuration constraints
Downgrading the storage space of data nodes is supported only for clusters that use the v3 deployment architecture.
You cannot upgrade the cluster version during a downgrade.
You can change only one type of node in a single downgrade operation.
You cannot downgrade elastic data nodes.
The interval between two consecutive downgrade operations on the same cluster must be 30 minutes or longer.
CPU specification constraints after a downgrade
Basic rule: The CPU and memory of the target specifications must be at least half of the current specifications.
You cannot downgrade to the following specifications:
1-core 2 GiB,2-core 2 GiB,2-core 4 GiB, or4-core 4 GiB. Kibana nodes can be downgraded to2-core 2 GiB.Special case: To downgrade to a disallowed specification, you must create a new cluster and then perform data migration.
Cost impact
After you submit the downgrade order, the system bills you based on the new configuration. For more information, see Pay-as-you-go and Subscription.
Pre-downgrade checks
If you downgrade the cluster without performing the following checks, the cluster may crash, data may be lost, or the service may become unavailable. You must check and verify each item.
Cluster health
Run
GET _cluster/healthto make sure the cluster status is GREEN.Payload security
The cluster can be downgraded only if it meets the following conditions:
Node type
CPU usage
JVM heap memory usage
Dedicated master node
Peak usage of a single node in the last 24 hours < 30%
Peak usage of a single node in the last 24 hours < 25%
Nodes of other roles
Both conditions must be met:
• Peak usage of a single node in the last 24 hours < 50%
• Average usage of all nodes in the last 24 hours < 30%
Both conditions must be met:
• Peak usage of a single node in the last 24 hours < 50%
• Average usage of all nodes in the last 24 hours < 30%
Index readiness
Run
GET /_cat/indices?vto check for indexes in the CLOSE state. If you find any, runPOST /<index_name>/_opento temporarily open them. If you do not open these indexes, the configuration change may fail for the following reasons:If an index is in the CLOSE state, the cluster status cannot change to GREEN. Elasticsearch requires the cluster status to be GREEN before it performs certain sensitive configuration changes, such as adjusting shard allocation rules.
During the configuration change, the cluster reallocates shards:
Shards of a closed index cannot be reallocated.
This causes operations that depend on the GREEN status to fail.
This prevents the cluster status from changing to GREEN. The highest status it can reach is YELLOW.
Run
GET _cat/indices?vto check that the number of replicas for each index is at least 1.For a multi-zone instance, ensure that the number of replicas for each index is less than the number of zones available for the instance. We recommend that you set the number of replicas to 1. After the downgrade is complete, you can manually increase the number of replicas.
Method 1: Downgrade a cluster in the console
Downgrade specifications, disk type, and disk space
On the Instances page, click .

Alternative entry point: On the Basic Information page, click .
On the Downgrade Configuration page, adjust the configuration parameters as needed.
ImportantThe available configuration parameters vary based on the cluster type and version. The parameters on the Downgrade Configuration page take precedence.
You can downgrade node specifications (node storage type). The performance levels are sorted from high to low:
Local disk: Local SSD (NVMe SSD local disk) -> Local SATA disk (SATA HDD local disk).
NoteA local disk is a hard disk device on the physical server where an ECS instance is located. It provides local storage access for the ECS instance and is suitable for business scenarios that require high storage I/O performance and are cost-effective for mass storage.
ESSD: An enterprise SSD (ESSD) combines 25 GE networking and Remote Direct Memory Access (RDMA) technology to provide up to 1 million random read/write IOPS for a single disk and low single-link latency.
NoteESSD-PL0 cannot be downgraded to a standard SSD.
Previous-generation disks: Standard SSD -> Ultra disk -> Basic disk.
NoteThese disks are being phased out in some regions and zones. We recommend that you select ESSDs.
Downgrade the storage space of data nodes (supported only for clusters that use the v3 deployment mode): To ensure cluster stability, the disk space usage after the downgrade must be less than 60%. Before you start the downgrade, make sure that the following condition is met: Current disk usage < (Post-downgrade disk space × 0.6).

Clusters that use the v2 deployment mode do not support downgrading storage space from the console or by calling an API. To perform a downgrade, you must contact technical support.
Intelligent Update (enabled by default): The system automatically selects the optimal method based on the configuration changes you specify.
Forced Update (disabled by default, not recommended): This option skips the health check and forces a cluster restart. This may cause a prolonged service interruption. The recovery time depends on the data volume.
Click to view the Terms of Service and Service Level Agreement. If you agree, click Buy Now. The system automatically selects the optimal change policy for the configuration items and charges you according to the billing method.
During the change, the cluster status becomes Initializing. The cluster performance may fluctuate, and transient disconnections may occur. After the change is complete, the cluster status is updated to Normal, and the IP addresses of the nodes in the cluster change.
Scale in data nodes
On the Basic Information page of the instance, click .

Select the node type and the number of nodes to remove as needed.
ImportantAlibaba Cloud ES automatically performs a node security check before a scale-in. If the check fails, troubleshoot the issue based on the error message and then retry the scale-in operation.
The available configuration parameters vary based on the cluster type and version. The parameters on the Console page take precedence. This example uses a vector search edition cluster of version 8.17.0.

Click OK. The system performs the scale-in operation and charges you based on the cluster configuration and billing method.
During the change, the cluster status becomes Initializing. The cluster performance may fluctuate, and transient disconnections may occur. After the change is complete, the cluster status is updated to Normal, and the IP addresses of the nodes in the cluster change.
Method 2: Downgrade a cluster by calling an API
For more information about the API for downgrading a cluster, see UpdateInstance.
Data migration and rollback
To ensure data security, the data nodes that you want to scale in must be empty. If the selected data nodes contain data, the system prompts you to migrate it. After the migration, the selected nodes no longer contain any index data, and no new index data is written to them.
Data migration
In the Remove Data Nodes section, click Data Migration Tool in the prompt.

The Data Migration Tool uses the Elasticsearch shard allocation filtering feature to perform a smooth data migration. The data migration process is transparent to your services.
In the Migrate Data dialog box, select a node migration method.

Parameter
Description
Smart Migration
The system automatically selects the data nodes to be migrated.
Custom
Manually select the data nodes to be migrated.
Accept the data migration agreement and click OK.
Data rollback
Data migration can be a long process. During this time, changes in the cluster status or data may cause the migration to fail. You can view the task details in the Task List. If the data migration fails, or after it is complete, you can roll back the migrated nodes by performing the following steps:
Log on to the Kibana console of your Elasticsearch cluster and go to the homepage of the Kibana console as prompted.
For more information about how to log on to the Kibana console, see Log on to the Kibana console.
NoteIn this example, an Elasticsearch V6.7.0 cluster is used. Operations on clusters of other versions may differ. The actual operations in the console prevail.
In the left-side navigation pane of the page that appears, click Dev Tools.
In the Console, run the following command to obtain the IP addresses of the migrated nodes.
GET _cluster/settingsIf the command is run successfully, the following result is returned.
{ "transient": { "cluster": { "routing": { "allocation": { "exclude": { "_ip": "192.168.xx.xx,192.168.xx.xx,192.168.xx.xx" } } } } } }Run the following command to roll back the data on the migrated nodes.
Roll back the data on specific nodes. In the configuration, remove the IP addresses of the nodes that you want to roll back, but keep the IP addresses of the nodes that you do not want to roll back.
PUT _cluster/settings { "transient": { "cluster": { "routing": { "allocation": { "exclude": { "_ip": "192.168.xx.xx,192.168.xx.xx" } } } } } }Roll back the data on all migrated nodes.
PUT _cluster/settings { "transient": { "cluster": { "routing": { "allocation": { "exclude": { "_ip": null } } } } } }
Run the following command to verify that the data rollback is complete.
GET _cluster/settingsIf the command runs successfully and the result does not contain the IP addresses of the migrated nodes, the rollback is complete. You can also check whether shards are reallocated to the nodes.
NoteDuring data migration or rollback, you can run the
GET _cat/shards?vcommand to view the task status.
FAQ
The cluster configuration cannot be changed. What should I do?
Does changing the cluster configuration affect the ES service?
After changing the number of nodes, does the cluster automatically rebalance the shards?
What do I do if I select an incorrect configuration when purchasing an ES instance?
After upgrading the instance specifications, can I downgrade the configuration, and how?