本节我们讲下elasticsearch备份数据
我们采用linux 的NFS(网络文件系统)方式做快照备份。
假设我们现在有三台机器 A B C
A 和 B 分别是我们集群的两个节点,C 是我们要备份数据的磁盘。
先查看我们的机器是否安装了NFS
rpm -qa | grep nfs
如果出现类似下面:
nfs-utils-1.2.3-36.el6.x86_64
nfs-utils-lib-1.1.5-6.el6.x86_64
nfs4-acl-tools-0.3.3-6.el6.x86_64
则说明安装有nfs
rpm -qa | grep rpcbind
如果出现类似下面信息:
rpcbind-0.2.0-11.el6.x86_64
则说明安装有rpcbind
没有安装的可以度娘下安装!!
修改A 和 B 机器的 /etc/exports
添加如下信息:
/home/backup 192.168.54.*(rw,insecure)
让目录/home/backup 可以被192.168.54.* 的机器有读写权限.(这个配置很重要。不要忘记啊!!!!)
下面我们来启动服务:
service rpcbind start
service nfs start
note : 注意顺序!!要先启动rpcbind 后启动nfs
然后我们就要将远程共享文件挂载到集群相同的目录下.具体操作如下:
我们在C 机器上创建 /home/data/backup 目录。这个就是我们的共享目录
我们在机器A 和B 上分别创建/home/backup目录 这个是我们要挂载的目录
接下来我们在A 和B 机器上分别执行如下命令
mount -t nfs ip:/home/data/backup /home/backup
这个里的IP 就是我们C机器的IP
然后df -h 查看我们的机器时候挂载成功.
文件系统 |
挂载点 |
192.168.54.171:/home/data/backup |
/home/backup |
挂载成功就算成功了一大半了。接下来我们
PUT /_snapshot/my_backup
{
"type": "fs",
"settings": {
... repository specific settings ...
}
}
创建my_backup库
PUT /_snapshot/my_backup/snapshot_1?wait_for_completion=true
创建snapshot_1 快照.
详细请参考;
https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html