LoginSignup
5
6

More than 3 years have passed since last update.

ElasticSearchのindexデータを移行する

Last updated at Posted at 2020-05-07

はじめに

今回、AWS ElasticSearchからローカルのElasticSearchにデータを移行したかったのでElasticDumpを使って、試しにやってみました。

ElasticSearchはVPCからしかアクセスできなかったので、踏み台のEC2から接続しています。

注意点

※他にいい方法はたくさんありますのであくまでも一つの方法です。

  • index単位なので、indexが多いと面倒です。などで一括でindexをdumpするなんてこともできません。

EC2にNodeをインストール

AWS公式のNodejsインストール手順を元にnvmでインストールします。

# EC2の中

# nvmインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

# nvmを有効化
. ~/.nvm/nvm.sh

# nodeのインストール
nvm install node

# Node.js が正しくインストールされ、実行されていることをテストします。
node -e "console.log('Running Node.js ' + process.version)"

ElasticDumpのインストール

# EC2の中
npm install elasticdump -g

dumpする

# EC2の中

# index一覧を確認
curl -XGET {VPCエンドポイント}/_cat/indices?v

# dumpする
elasticdump --input=http://localhost:9200/{index名} --output={ファイル名}.json

EC2からファイルをローカルにダウンロード

# ローカル

scp {ssh接続先}:{path}/{ファイル名} {ローカルのパス}

dumpファイルをインポート

# ローカル
elasticdump --input={ファイル名}.json --output=http://localhost:9200/{index名} 

移行完了!

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6