Describe the issue:
The opensearch cluster has been set up using the opensearch operator mainly to handle capabilities like efficient scaling, especially draining, relocation and graceful deletion of nodes during scale down.
Further, The smartscaler is also enabled in opensearch-cluster.yaml.
When testing the scale down operation, below issues were found
intermittently the cluster goes to red state because when scaling down the data nodes, few indices shards isnt drained or re-allocated properly.
This could be found often with system indices, ml-plugin indices and any other if it has only 1 primary and 1 replica
Is there anyway to fix this issue so that operator handles the scaling flawlessly? or is this something being triaged currently.
Please help.
Configuration:
The cluster using operator is installed on GKE.
the data nodes are scaled often based on TPS.
Hi @Nagpraveen ,
according to the given manifest, the number of replicas for each cluster_manager, data, and ML roles starts with one. If TPS increases then do you only scale-up/down data nodes not along with cluster_managers?
I believe if the shard replica is above 1, it seems natural that the data node becomes red when scaled down.
If you see the manifest, the number of master nodes is 3 not 1 as we understand operator requires minimum 3 nodes to perform manger role efficiently. the role is provided as master.
Regarding data nodes, in the manifest we have provided as 1 initially, but we are extensively performing the scaling tests (scale up and scale downs) to test the stability of the cluster before even releasing any TPS.
So we ran few experiments scaling only data nodes as all the data.indices is mainly persisted on data nodes.
First we scaled the data nodes from,
1 → 3 = and cluster was green
then, 3 → 10 = still cluster was green, scale up successful
then, 10 → 3 = scaling down back to 3 made cluster status become red
then, 3 → 25 = scaling up to 25 , cluster became green,
then, 25 → 3 = scaling back from 25 to 3, cluster went to red status
Like this we ran this experiment multiple times with different combinations. But, every time we were scaling down to 3 and not less than 3 for HA purposes and also to give enough room for relocation.
Note, in each of the above cases, we always have minimum 3 data nodes, which should be good enough to drain and reallocate properly.
9 out of 10 times, cluster is going to red state meaning the draining functionality is very inconsistent.