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進行恢復使用的.