This version of the OpenSearch documentation 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 CLI

The OpenSearch CLI command line interface (opensearch-cli) lets you manage your OpenSearch cluster from the command line and automate tasks.

Currently, opensearch-cli supports the Anomaly Detection and k-NN plugins, along with arbitrary REST API paths. Among other things, you can use opensearch-cli to create and delete detectors, start and stop them, and check k-NN statistics.

Profiles let you easily access different clusters or sign requests with different credentials. opensearch-cli supports unauthenticated requests, HTTP basic signing, and IAM signing for Amazon Web Services.

This example moves a detector (ecommerce-count-quantity) from a staging cluster to a production cluster:

  1. opensearch-cli ad get ecommerce-count-quantity --profile staging > ecommerce-count-quantity.json
  2. opensearch-cli ad create ecommerce-count-quantity.json --profile production
  3. opensearch-cli ad start ecommerce-count-quantity.json --profile production
  4. opensearch-cli ad stop ecommerce-count-quantity --profile staging
  5. opensearch-cli ad delete ecommerce-count-quantity --profile staging

Install

  1. Download and extract the appropriate installation package for your computer.

  2. Make the opensearch-cli file executable:

    1. chmod +x ./opensearch-cli
  3. Add the command to your path:

    1. export PATH=$PATH:$(pwd)
  4. Confirm the CLI is working properly:

    1. opensearch-cli --version

Profiles

Profiles let you easily switch between different clusters and user credentials. To get started, run opensearch-cli profile create with the --auth-type, --endpoint, and --name options:

  1. opensearch-cli profile create --auth-type basic --endpoint https://localhost:9200 --name docker-local

Alternatively, save a configuration file to ~/.opensearch-cli/config.yaml:

  1. profiles:
  2. - name: docker-local
  3. endpoint: https://localhost:9200
  4. user: admin
  5. password: foobar
  6. - name: aws
  7. endpoint: https://some-cluster.us-east-1.es.amazonaws.com
  8. aws_iam:
  9. profile: ""
  10. service: es

Usage

opensearch-cli commands use the following syntax:

  1. opensearch-cli <command> <subcommand> <flags>

For example, the following command retrieves information about a detector:

  1. opensearch-cli ad get my-detector --profile docker-local

For a request to the OpenSearch CAT API, try the following command:

  1. opensearch-cli curl get --path _cat/plugins --profile aws

Use the -h or --help flag to see all supported commands, subcommands, or usage for a specific command:

  1. opensearch-cli -h
  2. opensearch-cli ad -h
  3. opensearch-cli ad get -h