上文《Elasticsearch数据迁移系列(一)使用Elasticsearch-dump工具迁移数据》我们介绍了使用Elasticsearch-dump工具把一个集群的数据迁移到另外一个集群去。在日常中,其实我们还有一些其他场景的需求,例如:数据备份。
在常用环境中,我们一般都会使用大于等于3个节点编制的elasticsearch集群,并且每个分片至少有1个副本,这样子可以避免如果节点挂了之后,es能自动恢复数据。但是在部分小公司的应用场景里面,由于企业的投入不大,所以很多团队都是一个es单机在线上跑着的,那么此时我们对es里面的数据做备份就是一个非常关键的操作。本文我们介绍下使用Elasticsearch-dump工具对es里面的数据进行备份。
其实这里备份比较简单,一般我们主要涉及到的需要备份的信息有:
settings mapping data
所以我们按照这个顺序对es的数据进行备份即可,下面直接开始演示:
1)备份settings
elasticdump --input=http://192.168.31.218:9200/test --output=/mnt/es/test_settings.json --type=settings
这里我们在output的值里面设置的是本地服务器的路径,当备份完毕之后,就可以在对应的目录下看到备份下来的settings.json文件。然后我们看看这个settings.json文件长什么样子:
可以看到这就是一个标准的settings文件,我们使用这个json就可以直接创建对应的文件。
2)备份mapping
elasticdump --input=http://192.168.31.218:9200/test --output=/mnt/es/test_mapping.json --type=mapping
这里我们在output的值里面设置的是本地服务器的路径,当备份完毕之后,就可以在对应的目录下看到备份下来的mapping.json文件。然后我们看看mapping.json的文件:
这就是整个索引的完整json信息。
3)备份数据
elasticdump --input=http://192.168.31.218:9200/test --output=/mnt/es/test_index.json --type=data --limit=10000
这里我们备份完毕之后就可以看到备份下来的数据了,我们查看下前面几行的数据:
这就是index里面完整的一条条的数据。
以上就是我们使用elasticsearch-dump工具备份数据的教程。
还没有评论,来说两句吧...