存储在群集中的数据不平衡。我怎样才能重新平衡它?
答案 0 :(得分:4)
分片本身是不成比例的问题,还是节点没有以最佳方式平衡所有分片?您可以手动将分片重新路由到不同的节点,但我不确定是否有办法让分片重新平衡自己以使其大小相等。如果您发现elasticsearch的默认分片行为仍然过于偏重(基于您的文档集),您可以实现自己的路由以更均匀地分配有效负载。
如果您想尝试将分片重新路由到不同的节点,下面是一个示例命令:
curl -XPOST 'localhost:9200/_cluster/reroute' -d '{
"commands" : [ {
"move" :
{
"index" : "test", "shard" : 0,
"from_node" : "node1", "to_node" : "node2"
}
},
{
"allocate" : {
"index" : "test", "shard" : 1, "node" : "node3"
}
}
]
}'