NFS+SnapShot快照式备份迁移ES索引过程

环境搭建

1 2 3
ES主 NFS服务端 192.168.72.145
ES从 NFS客户端 192.168.72.162
ES从 NFS客户端 192.168.72.163
[root@localhost ~ ] cat /etc/redhat-release
Centos Linux release 7.6.1810 (core)

关闭防火墙:

systemctl stop firewalld

永久关闭防火墙:

systemctl disable firewalld

关闭selinux:

sentenforce 0

永久关闭selinux:

vim /etc/sysconfig/selinux

搭建、启动es集群

nfs服务端操作

以下命令在192.168.72.145操作

安装nfs

cd /nfs
rpm -ivh --nodeps --force *.rpm

启动nfs

  • CentOS 6 执行下面命令
service rpcbind start
service nfs start
  • CentOS 7 执行下面命令
systemctl start rpcbind.service
systemctl start nfs-server.service

开机自启nfs

systemctl enable rpcbind.service
systemctl enable nfs-server.service

创建共享目录

mkdir -p /data/es/backup
chown -R elasticsearch.elasticsearch /data/es/backup
chmod 777 /data/es/backup

修改配置文件

vim /etc/exports
追加以下内容
/data/es/backup *(rw,sync,no_root_squash,no_subtree_check)

刷新配置立即生效

exportfs -a

查看可挂载目录

showmount -e 192.168.72.145

nfs客户端操作

以下命令在192.168.72.162、192.168.72.163操作。与服务端一样,安装启动NFS。

创建共享目录、授权共享目录(不用修改配置文件/etc/exports)

mkdir -p /data/es/backup
chown -R elasticsearch.elasticsearch /data/es/backup
chmod 777 /data/es/backup

挂载目录

查看可挂载目录
showmount -e 192.168.72.145
mount -t nfs 192.168.72.145:/data/es/backup/ /data/es/backup

设置开机自动挂载

vi /etc/fstab
192.168.72.145:/data/es/backup/ /data/es/backup nfs defaults 0 0

修改 ES 配置,重启es集群(三台es都操作)

在 elasticsearch.yml 中添加下面配置来设置备份仓库路径
path.repo: ["/data/es/backup"] (此处是客户端创建的共享目录路径)

创建备份仓库

以下命令进入es用户执行

curl -H "Content-Type: application/json" -XPUT 'http://192.168.72.145:9200/_snapshot/EsBackup_zip' -d '{
> "type": "fs",
> "settings": {
> "location": "/data/es/backup/compress_snapshot",
> "compress": true
> }
> }'

查看刚创建的仓库

curl -XGET 'http://192.168.72.152:9200/_snapshot?pretty'
>{
  > "EsBackup_zip" : {
    > "type" : "fs",
    > "settings" : {
      > "compress" : "true",
      > "location" : "/home/tgram/compress_snapshot"
    > }
  > }
> }

更多备份指令移步
https://www.cnblogs.com/homjun/p/14262875.html

参考:https://blog.csdn.net/lingzhao8988/article/details/85424671
https://cloud.tencent.com/developer/article/1683936

原文地址:https://www.cnblogs.com/homjun/p/14542298.html