Skip to content

Instantly share code, notes, and snippets.

@cosimo
Created April 26, 2022 16:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cosimo/524dca7ff626790a16ac02a2f87f227e to your computer and use it in GitHub Desktop.
Save cosimo/524dca7ff626790a16ac02a2f87f227e to your computer and use it in GitHub Desktop.
Basic usage of elasticsearch-dump
#!/bin/bash
ES_HOST=localhost
ES_PORT=9200
ES_USERNAME=elasticsearch
ES_PASSWORD=oohlala
ES_URL="https://$ES_USERNAME:$ES_PASSWORD@$ES_HOST:$ES_PORT"
dump_mapping() {
local index_name="$1"
docker run --rm --name "elasticdump-mapping-${index_name}" \
-e NODE_TLS_REJECT_UNAUTHORIZED=0 \
-v /home/cosimo/tmp/elasticsearch-dump/data:/tmp \
-ti elasticdump/elasticsearch-dump \
--input="$ES_URL/$index_name" \
--output="/tmp/mapping-${index_name}.json" \
--type=mapping
}
dump_data() {
local index_name="$1"
docker run --rm --name "elasticdump-data-${index_name}" \
-e NODE_TLS_REJECT_UNAUTHORIZED=0 \
-v /home/cosimo/tmp/elasticsearch-dump/data:/tmp \
-ti elasticdump/elasticsearch-dump \
--input="$ES_URL/$index_name" \
--output="/tmp/data-${index_name}.json" \
--limit=1000 \
--concurrency=10 \
--concurrencyInterval=5000 \
--intervalCap=10 \
--type=data
}
dump_mapping some_index_name
dump_data some_index_name
# ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment