// OSSeva Blog
MigrationElasticsearch vs OpenSearch: Licensing History, Version Support, AWS and Vector Search
The short answer
Choose Elasticsearch if you want Elastic's latest features, its commercial support and Elastic Cloud. Choose OpenSearch if you want an Apache 2.0 project governed by a foundation, or you run on Amazon OpenSearch Service. The licence gap has narrowed: since 2024 Elastic has offered AGPLv3, an OSI-approved licence, for the free portions of Elasticsearch, alongside SSPL and the Elastic License 2.0. OpenSearch stays under Apache 2.0, which has no copyleft conditions at all. The two share a 7.10 ancestry and much of the REST API, but five years of separate development mean a move between them is a migration with testing, not a binary swap.
Elasticsearch vs OpenSearch at a glance
| Elasticsearch | OpenSearch | |
|---|---|---|
| Steward | Elastic | OpenSearch Software Foundation, a Linux Foundation project |
| Licence | Elastic License 2.0 (default distribution), SSPL, or AGPLv3 for the free portions | Apache License 2.0 |
| Origin | Original project | Derived from Elasticsearch 7.10.2 and Kibana 7.10.2 in 2021 |
| Current line | 9.x, maintained to at least 15 October 2027 | 3.x (3.9.0 on 29 September 2026); 2.x in maintenance until 4.0 |
| Dashboards | Kibana | OpenSearch Dashboards |
| Managed on AWS | Elastic Cloud, through AWS Marketplace | Amazon OpenSearch Service |
| Vector search | dense_vector with HNSW and built-in quantization | k-NN plugin with Faiss and Lucene engines, HNSW and IVF |
The licensing history
- Up to 7.10: Elasticsearch and Kibana source code was Apache 2.0, with X-Pack features under the Elastic License.
- 2021, with 7.11: Elastic moved the Apache 2.0 code to a dual licence, SSPL or the Elastic License, and stopped producing an Apache 2.0 distribution. Elastic's founder later said the change came from "issues with AWS" and market confusion.
- 2021: OpenSearch was established from Elasticsearch 7.10.2 and Kibana 7.10.2 under Apache 2.0, hosted by AWS.
- 29 August 2024: Elastic announced AGPLv3 as a third option for the free portions of the source code, in place before 8.16 became generally available. The default distribution remains under the Elastic License 2.0.
- 16 September 2024: the Linux Foundation launched the OpenSearch Software Foundation and AWS transferred OpenSearch to it. Premier members now include AWS, IBM, SAP and Uber.
What this means in practice: if your organisation accepts AGPLv3, current Elasticsearch has an open source option again, but paid features remain under Elastic's own licence. If your policy rules out copyleft, or you embed the engine in a product you ship, OpenSearch's Apache 2.0 is the simpler fit. Elasticsearch 7.10.2 is still the last Apache 2.0 Elasticsearch, which is why so many clusters stay on it.
Version support
Elastic maintains each major release for the longer of 30 months from GA or 18 months after the next major's GA, and supports it for six months more. Within that window it maintains the two most recent minors of the current major and the final minor of the previous one. The dates that matter now:
| Line | End of maintenance | End of support |
|---|---|---|
| Elasticsearch 9.x | 15 October 2027, or 18 months after 10.0 if later | Six months after maintenance |
| Elasticsearch 8.x | 15 January 2027 | 15 July 2027 |
| Elasticsearch 7.17 | 15 April 2025 | 15 January 2026 |
OpenSearch keeps a version under maintenance until the next major version enters maintenance, or for one year, whichever is longer. 3.x is the current line, with 3.9.0 released on 29 September 2026. 2.x is in maintenance until 4.0 is released, and 2.19.6 arrived on 2 July 2026. Support for OpenSearch comes from AWS for its managed service, or from third-party vendors for self-managed clusters. See Elasticsearch 7.17 upgrade options and upgrading from 8 to 9 for the Elastic side.
Elasticsearch vs OpenSearch on AWS
Amazon OpenSearch Service runs OpenSearch and legacy Elasticsearch OSS up to 7.10, which AWS calls "the final open source version of the software". It does not run Elasticsearch 7.11 or later. AWS lists OpenSearch versions up to 3.5 and moves older engine versions to paid Extended Support when standard support ends; Elasticsearch 7.10 on the service has standard support until 7 November 2027. If you need current Elasticsearch on AWS, Elastic Cloud runs there and is sold through AWS Marketplace, billed on your AWS account. Self-managed clusters on EC2 or EKS can run either.
Elasticsearch vs OpenSearch for vector search
Both build approximate nearest-neighbour search on HNSW, and both support exact search for small sets.
- Elasticsearch stores vectors in
dense_vectorfields with up to 4,096 dimensions. It offers quantized HNSW variants (int8, int4 and BBQ binary quantization) and flat indexes. From 9.1, new float vector fields with 384 or more dimensions default tobbq_hnsw, and from 9.4 the disk-basedbbq_disktype becomes the default where an Enterprise licence makes it available. - OpenSearch provides the k-NN plugin with HNSW and IVF methods. Faiss is the default engine, Lucene adds efficient filtering, and NMSLIB is deprecated. Compression options reduce memory for large vector sets.
Feature for feature, the two are close, and the right choice usually follows the rest of your search stack. If vectors are the main workload, also compare a database you already run: our posts on pgvector in production and Valkey vector search cover two such options.
Elasticsearch vs OpenSearch performance
Vendor benchmarks are not a neutral source, whichever vendor runs them, because each chooses the workload. Both projects maintain benchmarking tools under Apache 2.0, Rally for Elasticsearch and OpenSearch Benchmark for OpenSearch, so you can run your own indexing and query mix against each. Results depend heavily on version, mappings, shard layout, hardware and the vector settings above, so compare like for like on your data.
Compatibility and migration
OpenSearch kept the REST APIs for ingest, search and management from 7.10, and its FAQ says query syntax and responses are the same. It can use indices created by Elasticsearch 6.0 up to 7.10. The FAQ warns that some clients and tools check the version number and refuse to work with OpenSearch, so test every client library and agent. Moving from Elasticsearch 7.11 or later, or from 8.x and 9.x, is outside that compatibility statement; plan on reindexing from source data and retesting queries. Going the other way, from OpenSearch to Elasticsearch, is also a reindex.
Elasticsearch vs OpenSearch vs Solr
Apache Solr is the third Lucene-based option, an Apache Software Foundation project under Apache 2.0. Solr 10.0.0 was released on 3 March 2026. Its SolrCloud mode uses Apache ZooKeeper for cluster coordination and stores configuration there, and dense vector search with HNSW has been available since Solr 9.0. Solr suits teams that want ASF governance, already run ZooKeeper, or have long-standing Solr applications. Elasticsearch and OpenSearch each pair the engine with a dashboards application, Kibana or OpenSearch Dashboards, which makes them the more natural fit for log analytics. Our Solr 8 to 9 upgrade guide and Solr support providers cover Solr estates.
Which should you choose?
- Choose Elasticsearch if you want Elastic's newest search, vector and observability features, Elastic support, or Elastic Cloud, and the licence terms suit you.
- Choose OpenSearch if you need Apache 2.0, foundation governance, or Amazon OpenSearch Service, or if you are leaving Elasticsearch 7.10.2 for licence reasons.
- Stay put for now if a cluster is stable and the move would mean reindexing large data sets with no business reason beyond the licence, and secure the version you run instead.
Where OSSeva fits
OSSeva for Elasticsearch ships backported security fixes for self-managed Elasticsearch 7.10.2, the last Apache 2.0 release, and 7.17, and for 8.19 once Elastic ends 8.x maintenance on 15 January 2027. OSSeva Assure adds a reindex and client plan for 8.x, 9.x or OpenSearch, and OSSeva Operate runs the migration and monitors the cluster 24/7, with OpenSearch as the supported migration target. Support starts on the build you run, so the decision between Elasticsearch and OpenSearch can wait until your indices and clients are ready. See Elasticsearch 7 extended support and our Elasticsearch support providers comparison. Search clusters sit under one contract with PostgreSQL, MongoDB, Redis and Kafka, priced per cluster. Book a discovery call for a quote.
Frequently asked questions
Elasticsearch vs OpenSearch performance: which is faster?
Neither consistently, and vendor benchmarks are not neutral. Run Rally or OpenSearch Benchmark with your own data, mappings and queries on matching hardware.
Elasticsearch vs OpenSearch on AWS: which should I use?
Amazon OpenSearch Service runs OpenSearch and Elasticsearch only up to 7.10. For current Elasticsearch on AWS, use Elastic Cloud through AWS Marketplace or run it yourself on EC2 or EKS.
Elasticsearch vs OpenSearch for vector search?
Both use HNSW. Elasticsearch has dense_vector fields with built-in int8, int4 and BBQ quantization; OpenSearch has the k-NN plugin with Faiss and Lucene engines. The difference is smaller than the difference your data and settings make.
Elasticsearch vs OpenSearch vs Solr: which is best?
Elasticsearch for Elastic's features and support, OpenSearch for Apache 2.0 and AWS, Solr for ASF governance and existing Solr applications. All three build on Apache Lucene.
Is Elasticsearch open source again?
Partly. Since 2024 the free portions of Elasticsearch and Kibana are available under AGPLv3, an OSI-approved licence, as well as SSPL and the Elastic License 2.0. The default distribution is under the Elastic License 2.0.
Can I migrate from Elasticsearch to OpenSearch?
Yes. OpenSearch can use indices from Elasticsearch 6.0 up to 7.10. From later Elasticsearch versions, reindex into OpenSearch and test every client, because some check the version number.
Tags
Related articles
Ready to get your open source under control?
Talk to an OSSeva engineer about CVE coverage, compliance, and migration support for your stack.