elasticsearch(ES)日志迁移

时间:2023-11-23 16:52:02

===============================================

2018/7/29_第1次修改                       ccb_warlock

===============================================

elasticsearch(ES)作为ELK的一部分,经常用于日志记录与统计。最近遇到需要迁移日志从旧环境到新环境,试验后发现elasticdump可以实现这个数据同步的部分(可以实现不同版本的ES数据同步)。

elasticdump虽然迁移数据的速度不算快,但是可以根据索引和数据单独进行同步。


 一、前提条件

  • 旧ES的IP:192.168.12.1,新ES的IP:192.168.12.2

 二、安装elasticdump

# 获取epel包

yum install -y wget
cd
wget http://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm

# 安装epel

rpm -ivh epel-release-7-11.noarch.rpm

# 安装nodejs

yum install -y nodejs

# 安装elasticdump(当前最新3.3.18)

npm install elasticdump

# 创建elasticdump的软连接

ln -s /root/node_modules/elasticdump/bin/elasticdump  /usr/bin/elasticdump

# 检查安装的版本

elasticdump --help

elasticsearch(ES)日志迁移


 三、迁移

# 将旧的ES的匹配nginxlog的索引信息导入到本地/root/nginx-map.json文件内

elasticdump --input http://192.168.12.1:9200/nginxlog* --output /root/nginx-map.json --type=mapping

# 将旧的ES的匹配nginxlog的数据信息导入到本地/root/nginx-data.json文件内

elasticdump --input http://192.168.12.1:9200/nginxlog* --output /root/nginx-data.json --type=data

# 将旧的ES的所有日志(索引、数据)导入到新的ES內

elasticdump --input http://192.168.12.1:9200/ --output http://192.168.12.2:9200/ --all=true

 参考资料:

1. https://www.npmjs.com/package/elasticdump

2. https://blog.csdn.net/u014017121/article/details/52160394

3. https://www.cnblogs.com/SapphireCastle/p/6395141.html