Upgrade from Elasticsearch to Opensearch using Snapshots in S3-Repository

Good morning,

I have a three-node Elasticsearch 7.16 cluster and a three-node Opensearch 2.0.0 cluster running on the same three VMs as Elasticsearch. Furthermore I have a separate VM with Kibana and OpensearchDashboards. My goal is to take a snapshot of the Elasticsearch cluster and migrate it into the Opensearch cluster. For this I use an S3-repository. I already have an S3-account and one bucket. I also already installed the S3-plugins on each node of Elasticsearch and Opensearch.
What I did so far:
Basically I followed this instructions

Both Elasticsearch and Opensearch refer to the same bucket.
I created a repository with Kibana and stored an Elasticsearch snapshot there. Also I created a repository with Opensearch dashboards with readonly mode. In this case there is no base_path used. Here are the problems:
As I understand I would like Opensearch to see the stored Elasticsearch snapshot. Then I can just restore it with the restore API. Here is the error I get when I try to read the snapshot in the Opensearch repository:

Does someone know where this error comes from? Does this has something to do with incompatible versions? Or did I miss some step in the migration plan?

I would be very thankful for a respond!

Hey, so there are a few things to mention here. At some point after Elastic changed their license from Apache 2.0 to their new one they added a new field called UUID that doesn’t exist in OpenSearch. The last version that this migration method would work with is 7.10. Additionally, for those migrating from 7.10 you would need to start by migrating to the 1.3.x version, then you could upgrade to 2.0.

Hopefully someone else has some experience migrating and might be able to help with a straightforward migration path.

Actually, after digging around a little bit I found some useful techniques from Opster that may help. Check out sections 3 and 4 to see the methods they use

1 Like

@dtaivpp Thank you very much, I will try the other approaches then!


Please let us know if one of them works for you. We’d love to hear a success story!

I am sorry to say that the both approaches mentioned on the website are too costly and it is not worth the effort. I would have to change every single index manually.
I think I will instead start at zero and just direct the new coming data to the Opensearch cluster.
Have a nice weekend!