How can I migrate data from one Amazon Elasticsearch Service domain to another?

Last updated: 2021-02-22

I want to move data from one Amazon Elasticsearch Service (Amazon ES) domain to another. How can I do that?

Short description

You can use manual snapshots to migrate individual indices or entire Amazon ES domains. You can migrate data to a domain in the same account or to a domain in a different account.


Before you begin, confirm the following:

Then, do the following:

1.    Register the same manual snapshot repository on both the source and destination domains. Your destination is usually an Amazon Simple Storage Service (Amazon S3) bucket.

Note: You can use server-side encryption with Amazon S3-managed keys to encrypt the S3 bucket that you use as the snapshot repository.

2.    (Optional) If you're migrating to another AWS account, attach a policy to the source S3 bucket that grants cross-account permissions to the destination.

3.    Take a manual snapshot of the source Elasticsearch domain.

4.    Use the Elasticsearch _restore API to restore the snapshot to the destination domain.