es集群备份

es单机备份我们在配置文件中指定path.repo参数,然后执行如下命令就可以备份了,但是备份集群的方式需要采用nfs将备份发起节点的备份目录(如我这里是:/home/es/esbak)
共享到其他的节点,其他节点挂载该目录后确保有读写权限,同时配置文件也要将参数path.repo都设置成一致

path.repo: /home/es/esbak
##创建备份仓库目录
curl -H "Content-Type: application/json" -XPUT http://172.17.10.100:19200/_snapshot/esbackup -d'{
    "type": "fs",
    "settings": {
        "location": "/home/es/esbak"
    }
}'

##备份
curl -H "Content-Type: application/json" -XPUT http://172.17.10.100:19200/_snapshot/esbackup/snapshot_$now_date

nfs配置的例子(有另外2个节点)
主节点(发起备份命令的节点)
$ more /etc/exports
/home/es/esbak 172.17.10.101(rw,all_squash,anonuid=0,anongid=0)
/home/es/esbak 172.17.10.102(rw,all_squash,anonuid=0,anongid=0)


另外的2个节点执行如下命令:
mount -t nfs -o nolock 172.17.10.100:/home/es/esbak /home/es/esbak

集群备份出来的快照是可以拷贝到其他的单节点的es进行恢复使用的.

原文地址:https://www.cnblogs.com/hxlasky/p/11693503.html