Elasticsearch data replication from one server to another server


I have installed Elasticsearch on two different DC servers. I have load balance for for failure situation. Consider I am doing transactions and storing logs on my x instance and my x instance is goes down then load balancer redirect my logs to y instance. But now the data is different in both instance. How can I make data persistent on both instance or how I can send data from y instance to x instance.
Anyone has idea about it?


Are you looking for this? https://www.elastic.co/guide/en/elasticsearch/reference/current/xpack-ccr.html

Note that it requires a trial or a platinum license.

No I am not looking for CCR. CCR is available in X-Pack. I have basic version.
Can I simply copy and paste data from y instance to x instance ?

What you are describing is exactly what CCR was created for. If that is not an option you can potentially transfer data via snapshot restore, write to both clusters in parallel or set up a message queue and feed both clusters based on this in parallel.

Thanks @Christian_Dahlqvist and @dadoonet for reply.

I have demo index on both instance. Consider I am pushing 5 transaction to Elasticsearch, 3 transactions are pushed into x instance after that my x instance goes down for some reason then remaining 2 transactions are pushed to y instance.
After that I can transfer 2 transactions from y instance to x instance using snapshot restore functionality right?

No. Snapshot and restore copies full indices. If you write different data to different clusters it does not support merging indices. If the index in cluster A get 3 transactions and the index with the same name in cluster B gets another 2 transactions you are going to lose one of the sets if you restore the index from one cluster to the other.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.