1. 程式人生 > >elasticsearch(ES)日誌遷移

elasticsearch(ES)日誌遷移

pan 環境 install get src 試驗 class map data

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

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

技術分享圖片


三、遷移

# 將舊的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

elasticsearch(ES)日誌遷移