Move shards from one node to anothercurl -XPOST 'http://localhost:9200/_cluster/reroute' -d '{"commands" : [{"move" :{"index" : "indexname", "shard" : 1,"from_node" : "nodename", "to_node" : "nodename"}}]}'
Force the allocation of an unassigned shard with a reasoncurl -XPOST 'http://localhost:9200/_cluster/reroute?explain' -d '{"commands" : [ {"allocate" : {"index" : "indexname", "shard" : 0, "node" : "nodename"}} ]}'
Remove nodes from clusters gracefullycurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"cluster.routing.allocation.exclude._ip" : "1.2.3.4"}}'
Force a synced flushcurl -XPOST 'localhost:9200/_flush/synced'
Change the number of moving shards to balance the clustercurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"cluster.routing.allocation.cluster_concurrent_rebalance" : 2}}'
Change the number of shards being recovered simultaneously per nodecurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"cluster.routing.allocation.node_concurrent_recoveries" : 6}}'
Change the recovery speedcurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"indices.recovery.max_bytes_per_sec" : "80mb"}}'
Change the number of concurrent streams for a recovery on a single nodecurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"indices.recovery.concurrent_streams" : 6}}'
Change the size of the search queuecurl -XPUT localhost:9200/_cluster/settings -d '{"transient" :{"threadpool.search.queue_size" : 2000}}'
Clear the cache on a nodecurl -XPOST 'http://localhost:9200/_cache/clear'
Adjust the circuit breakerscurl -XPUT localhost:9200/_cluster/settings -d '{"persistent" : {"indices.breaker.total.limit" : "40%"}}'