elasticsearch如何安全重启节点

elasticsearch集群,有时候可能需要修改配置,增加硬盘,扩展内存等操作,需要对节点进行维护升级。但是业务不能停,如果直接kill掉节点,可能导致数据丢失。而且集群会认为该节点挂掉了,就开始转移数据,当重启之后,它又会恢复数据,如果你当前的数据量已经很大了,这是很耗费机器和网络资源的。
本文转载官方提供的安全重启集群节点的方法:

第一步:先暂停集群的shard自动均衡。

1
2
3
4
5
6
curl -XPUT http://192.168.1.2:9200/_cluster/settings -d'
{
    "transient" : {
        "cluster.routing.allocation.enable" : "none"
    }
}'

第二步:shutdown你要升级的节点

1
curl -XPOST http://192.168.1.3:9200/_cluster/nodes/_local/_shutdown

第三步:升级重启该节点,并确认该节点重新加入到了集群中

第四步:重复2-3步,升级重启其它要升级的节点。

第五步:重启启动集群的shard均衡

1
2
3
4
5
6
curl -XPUT http://192.168.1.2/_cluster/settings -d'
{
    "transient" : {
        "cluster.routing.allocation.enable" : "all"
    }
}'

到此整个集群安全升级并且重启结束。

  1. 大岩不灿说道:

    这个过程在新版本有更新
    新版本步骤调整为1、2、3、5 、重复上述步骤。

留言

提示:你的email不会被公布,欢迎留言^_^

*

验证码 *