005_elasticsearch的数据导入导出

一、全部备份和导入

sudo yum install npm

(1)创建备份路径
mkdir /data/es_data_backup
(2)迁移原机器上的所有索引到目标机器
#把原始索引的mapping结构和数据导出
elasticdump --input=http://10.200.57.118:9200/ --output=/data/es_data_backup/cmdb_dump-mapping.json --all=true --type=mapping
elasticdump --input=http://10.200.57.118:9200/ --output=/data/es_data_backup/cmdb_dump.json --all=true --type=data

#mapping结构和数据导入新的cluster节点
elasticdump --input=/data/es_data_backup/cmdb_dump-mapping.json --output=http://10.200.57.118:9200/ --bulk=true
elasticdump --input=/data/es_data_backup/cmdb_dump.json --output=http://10.200.57.118:9200/ --bulk=true

二、指定库备份和导入

# Backup index data to a file:
elasticdump --input=http://10.200.57.118:9200/ele_nginx_clusters --output=/data/es_data_backup/ele_nginx_clusters_mapping.json --type=mapping

elasticdump --input=http://10.200.57.118:9200/ele_nginx_clusters --output=/data/es_data_backup/ele_nginx_clusters.json --type=data
#或者采用gzip的方式,这种方式亲测节省10多倍的空间,导入时gunzip ele_nginx_clusters.json.gz后再进行导入
#Backup and index to a gzip using stdout:
elasticdump --input=http://10.200.57.118:9200/ele_nginx_clusters --output=$ | gzip > /data/es_data_backup/ele_nginx_clusters.json.gz


导入:
elasticdump --input=/data/es_data_backup/ele_nginx_clusters_mapping.json --output=http://10.200.57.118:9200/ --bulk=true
elasticdump --input=/data/es_data_backup/ele_nginx_clusters.json --output=http://10.200.57.118:9200/ --bulk=true

Reference:

https://www.zhangluya.com/?p=543

https://github.com/taskrabbit/elasticsearch-dump

猜你喜欢

转载自www.cnblogs.com/itcomputer/p/8945322.html