Hi,
In general safest option is to set up new environment and redirect all traffic to new cluster, so old one will be used only to retrieve data and later to be deleted.
There are 3 main options how we can proceed:
(note the word main, as in general there are dozens of options how to transfer data from cluster A to cluster B, but I'm mentioning most popular)
- Reindex API from Remote cluster, but this might be problematic if you want to keep old indices separated and you have hundreds of them. This can simply be boring, but if you know your way around scripting, you could automate it.
- Elasticdump. https://github.com/elasticsearch-dump/elasticsearch-dump
I think it's even installed together with ELS in /usr/share/kibana
. Basically you point input as old cluster and output as new.
- Logstash. Using input plugin
elasticsearch
and output plugin elasticsearch
or preferably logserver
you can manage data transfer.
Let me know if you'll have further questions. 🙂