Link Search Menu Expand Document Documentation Menu

You're viewing version 1.2 of the OpenSearch documentation. This version is no longer maintained. For the latest version, see the current documentation. For information about OpenSearch version maintenance, see Release Schedule and Maintenance Policy.

OpenSearch documentation

This site contains the technical documentation for OpenSearch, the Apache 2.0-licensed search, analytics, and visualization suite with advanced security, alerting, SQL support, automated index management, deep performance analysis, and more.

Get started


Why use OpenSearch?

OpenSearch is well-suited to the following use cases:

  • Log analytics
  • Real-time application monitoring
  • Clickstream analytics
  • Search backend
Component Purpose
OpenSearch Data store and search engine
OpenSearch Dashboards Search frontend and visualizations
Security Authentication and access control for your cluster
Alerting Receive notifications when your data meets certain conditions
SQL Use SQL or a piped processing language to query your data
Index State Management Automate index operations
KNN Find “nearest neighbors” in your vector data
Performance Analyzer Monitor and optimize your cluster
Anomaly detection Identify atypical data and receive automatic notifications
Asynchronous search Run search requests in the background
Cross-cluster replication Replicate your data across multiple OpenSearch clusters

Most OpenSearch plugins have corresponding OpenSearch Dashboards plugins that provide a convenient, unified user interface.

For specifics around the project, see the FAQ.


Docker quickstart

Docker

  1. Install and start Docker Desktop.
  2. Run the following commands:

    docker pull opensearchproject/opensearch:1.2.4
    docker run -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" opensearchproject/opensearch:1.2.4
    
  3. In a new terminal session, run:

    curl -XGET --insecure -u 'admin:admin' 'https://localhost:9200'
    
  4. Create your first index.

    curl -XPUT --insecure -u 'admin:admin' 'https://localhost:9200/my-first-index'
    
  5. Add some data to your newly created index.

    curl -XPUT --insecure -u 'admin:admin' 'https://localhost:9200/my-first-index/_doc/1' -H 'Content-Type: application/json' -d '{"Description": "To be or not to be, that is the question."}'
    
  6. Retrieve the data to see that it was added properly.

    curl -XGET --insecure -u 'admin:admin' 'https://localhost:9200/my-first-index/_doc/1'
    
  7. After verifying that the data is correct, delete the document.

    curl -XDELETE --insecure -u 'admin:admin' 'https://localhost:9200/my-first-index/_doc/1'
    
  8. Finally, delete the index.

    curl -XDELETE --insecure -u 'admin:admin' 'https://localhost:9200/my-first-index/'
    

To learn more, see Docker image and Docker security configuration.


Installation

For more comprehensive installation instructions for other download types, such as tarballs, see these pages:

The secure path forward

OpenSearch includes a demo configuration so that you can get up and running quickly, but before using OpenSearch in a production environment, you must configure the security plugin manually: your own certificates, your own authentication method, your own users, and your own passwords.

Looking for the Javadoc?

See opensearch.org/javadocs/.

Get involved

OpenSearch is supported by Amazon Web Services. All components are available under the Apache License, Version 2.0 on GitHub.

The project welcomes GitHub issues, bug fixes, features, plugins, documentation—anything at all. To get involved, see Contributing on the OpenSearch website.


OpenSearch includes certain Apache-licensed Elasticsearch code from Elasticsearch B.V. and other source code. Elasticsearch B.V. is not the source of that other source code. ELASTICSEARCH is a registered trademark of Elasticsearch B.V.