Elasticsearch索引迁移,Kibana数据索引迁移

简介

  • 基于某种原因我已经重度依赖Kibana,但是某一次的升级操作,让我丢失了Kibana的数据库,所以我要从一个相对较老的备份中恢复它。
  • 参考文档:https://github.com/elasticsearch-dump/elasticsearch-dump

安装elasticdump工具

  • 现在是一个混合技术的时代,这里面需要安装一个nodejs程序,elasticdump,npm 相关内容不多介绍,照做即可。
# 安装nodejs ,主要是之后需要使用npm 命令
yum install nodejs
# 这步骤不是必须但是推荐升级npm版本,以免造成不必要的麻烦
npm install -g n
n latest
# 安装cnpm 因为npm 对我来说太慢了
npm config set registry https://registry.npm.taobao.org
npm install -g cnpm --registry=https://registry.npm.taobao.org
# 安装主角 elasticdump(实际上如果你网速可以的化可以不安装cnpm)
# 这里使用 -g 参数进行全局安装。
cnpm install elasticdump -g
  • 安装成功了,显然这个并没有帮助文档(年轻人不讲武德)


    image.png
  • 但是仍然可以在github 上找到相关的帮助信息 https://github.com/elasticsearch-dump/elasticsearch-dump

迁移过程

导出Kibana 索引文件

  • 先找出要迁移的索引,通过 elasticsearch-head 插件完成查询:


    image.png
  • 进入服务器对应目录中:
# 迁移 .kibana_1
# 导出数据信息
elasticdump --ignore-errors=true  --scrollTime=120m  --bulk=true --input=http://name:[email protected]:2900/.kibana_1   --output=kibana_1.data.json  --type=data

# 导出mapping信息
elasticdump --ignore-errors=true  --scrollTime=120m  --bulk=true --input=http://name:[email protected]:2900/.kibana_1   --output=kibana_1.mapping.json  --type=mapping

  • 这个工具非常好用。


    image.png

导入Kibana索引文件

  • 我这里由于是恢复受损的Kibana索引文件,所以第一步通过elasticsearch-head 工具删除Kibana索引,如果你不需要这个步骤可以不做。
  • 导入恢复的索引文件,注意导入的时候要先导入mapping,否则可能造成无法预料的问题。
  • 另外需要提示你,最后在写入之前给你的数据硬盘做个备份,或者快照!!!
# kibana_1 的恢复
# 导入mapping
elasticdump --input=kibana_1.mapping.json  --output=http://name:[email protected]:2900/.kibana_1 --type=mapping

# 导入具体的kibana配置数据
elasticdump --input=kibana_1.data.json  --output=http://name:[email protected]:2900/.kibana_1 --type=data

  • 上面一通偷梁换柱后结果如何呢,我默默地启动了kibana。

你可能感兴趣的:(Elasticsearch索引迁移,Kibana数据索引迁移)