由于业务量下降,一个4台节点的elasticsearch集群需要下线一台机器,下线前对集群下线进行规划如下:
1、请求elasticsearch的web机器配置里先剔除需要下线的节点配置,重新上线。
2、检查其他节点的如下参数:
1)discovery.zen.minimum_master_nodes: 3 #这个参数特别注意下,正常是 master的node数量/2+1,用于防止脑裂发生。
2)node.master: true #这个参数用于指定是否为master节点。
3、直接kill掉需要下线的节点的elasticsearch服务,等待其他节点重新选举master、分片数据恢复。
4、找到当前的没有被选举为master的节点,由于只有三个节点了,对非master节点先逐个修改配置如下 discovery.zen.minimum_master_nodes: 2 ,并修改discovery.zen.ping.unicast.hosts:参数为最新节点列表。重启节点等待分片恢复,操作下一台。(这里注意,一定不要先下当前在任的master节点,因为其他节点的配置信息都还没修改,有可能导致无法启动或者脑裂。)
5、按照步骤4的方法,把当前master节点配置修改并重启待数据恢复即可。
6、需要注意,node.master: 都要为true,不然选举数量会不够。