禁止shard allocation,滚动重启ES节点后,原来的分片都变成了Unassigned状态
Elasticsearch | 作者 verra1448 | 发布于2016年07月13日 | 阅读数:8333
集群节点重启时,按照官方文档操作:
https://www.elastic.co/guide/e ... .html
ES版本:2.1.1
curl -XPUT 192.168.0.54:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "none"
}
}'
执行后这个操作后,重启节点,但重启后节点上原有的分片都变成了Unassigned状态。
是我遗漏了什么操作吗?还是要手动执行什么命令?
如果本来就是如此的话,那整个集群都重启后再开启shard allocation,岂不是会有一段时间集群不可用?
https://www.elastic.co/guide/e ... .html
ES版本:2.1.1
curl -XPUT 192.168.0.54:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "none"
}
}'
执行后这个操作后,重启节点,但重启后节点上原有的分片都变成了Unassigned状态。
是我遗漏了什么操作吗?还是要手动执行什么命令?
如果本来就是如此的话,那整个集群都重启后再开启shard allocation,岂不是会有一段时间集群不可用?
1 个回复
nihao
赞同来自: verra1448
1. 可以先把rebalance关闭。
2. 然后再关闭allocation。
3. 然后重启一台节点。打开allocation,等这个节点上的shard恢复了,再重复2,3