elasticsearch备份与迁移

集群节点均需以下操作

挂载ceph

mount -t ceph 10.255.228.232:6789:/ /mnt/cephfs -o name=admin,secretfile=/etc/ceph/admin.secret

创建备份目录(集群需要一个共享目录,采用ceph)

[root@test ~]# mkdir  /mnt/cephfs/esbak

在master节点调整/mnt/cephfs/esbak权限

[root@test ~]# chown es:es /mnt/cephfs/esbak

统一各节点es用户的UID/GID,以master节点es为标准(不同意会导致创建仓库时报错,这是由于采用了ceph)

[root@ceph122 esbak]# usermod  -u 2003 es && groupmod  -g  2003 es 

(2003为master上es的uid、gid)

重新赋予data节点ES安装目录,数据目录的ES用户权限

[root@ceph122 esbak]# chown -R es:es xxxx

修改elasticsearch.yml文件,添加path.repo配置

path.repo: /mnt/cephfs/esbak

重启节点

实施过程

src实施

创建仓库,仓库名为es_backup

curl -XPUT "http://192.168.75.13:9200/_snapshot/es_backup" -d '
{
"type": "fs", 
"settings": {
"location": "/mnt/esbak",
"compress": true
}
}'

查看仓库状态

curl -XGET '192.168.75.13:9200/_snapshot/es_backup?pretty'

删除仓库(删除仓库并不会删除快照文件)

curl -XDELETE "192.168.75.13:9200/_snapshot/es_backup

备份索引数据,快照名最好跟索引名保持一定关系

curl -XPUT "http://192.168.75.13:9200/_snapshot/es_backup/video" -d '
{
"indices": "video_resource_201805,video_police_case_201805,video_treat_case_201805"
}'

删除备份快照

curl -XDELETE "http://192.168.75.13:9200/_snapshot/es_backup/video"

dest实施

迁移备份数据,在其它集群恢复

curl POST "http://192.168.75.14:9200/_snapshot/es_backup/video/_restore"

你可能感兴趣的:(中间件系列,数据库系列)