### Start a deployment resource Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start.md Use this command to start a specific deployment resource. You must provide the deployment ID and the resource kind. Options are available to start all instances or specific instances. ```bash ecctl deployment resource start --kind [--all|--i ,] [flags] ``` -------------------------------- ### List Deployment Extensions Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_extension_list.md Use this command to list all deployment extensions. No additional setup is required beyond having `ecctl` installed and configured. ```bash ecctl deployment extension list [flags] ``` -------------------------------- ### Start all instances of a resource kind Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start.md To start all instances of a defined resource kind, use the `--all` flag along with the deployment ID and resource kind. ```bash ecctl deployment resource start --kind --all ``` -------------------------------- ### List Instance Configurations Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_list.md Use this command to list all available instance configurations for your Elastic Cloud deployment. No specific setup is required beyond having ecctl installed and configured. ```bash ecctl platform instance-configuration list [flags] ``` -------------------------------- ### List Serverless Projects Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_list.md Use this command to list all serverless projects. No additional setup is required beyond having ecctl installed and configured. ```bash ecctl project list [flags] ``` -------------------------------- ### Start specific instances of a resource kind Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start.md To start specific instances of a deployment resource, provide their IDs using the `-i` or `--instance-id` flag. Multiple instance IDs can be comma-separated. ```bash ecctl deployment resource start --kind -i , ``` -------------------------------- ### Create a deployment with default values Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md This example shows how to create a deployment using a specified deployment template and region, leveraging default configurations. ```APIDOC ## Create a deployment with the default values $ ecctl deployment create --name my-deployment --deployment-template=aws-io-optimized-v2 --region=us-east-1 ``` -------------------------------- ### Create deployment from file definition Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md This example shows how to create a deployment using a previously generated JSON definition file, optionally tracking its creation progress. ```APIDOC ## Create a deployment through the file definition. $ ecctl deployment create --file create_example.json --track ``` -------------------------------- ### List Allocators with Query Examples Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_allocator_list.md Use the --query flag to search allocators based on specific criteria. The query syntax is similar to Elasticsearch's query string syntax. Examples show how to find allocators in maintenance mode or with a certain memory capacity. ```bash ecctl platform allocator list --query status.maintenance_mode:true ``` ```bash ecctl platform allocator list --query capacity.memory.total:>10240 ``` -------------------------------- ### Start a stopped deployment resource Source: https://github.com/elastic/ecctl/blob/master/notes/v1.0.0-beta1.md Use the `deployment resource start` command to initiate a deployment resource that is currently in a stopped state. ```command ecctl deployment resource start ``` -------------------------------- ### Show Proxy Settings Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_proxy_settings_show.md Use this command to display the current proxy settings. No additional setup is required beyond having `ecctl` installed and configured. ```bash ecctl platform proxy settings show [flags] ``` -------------------------------- ### List Snapshot Repositories Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_repository_list.md Use this command to view all snapshot repositories configured for your Elastic Cloud deployment. No additional setup is required beyond having `ecctl` installed and configured. ```bash ecctl platform repository list [flags] ``` -------------------------------- ### Track deployment creation progress Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md This example demonstrates how to use the `--track` flag to monitor the creation process of a deployment, providing real-time updates on its stages. ```APIDOC ## To make the command wait until the resources have been created use the "--track" flag, which will output the current stage on which the deployment resources are in. $ ecctl deployment create --name my-deployment --deployment-template=aws-io-optimized-v2 --region=us-east-1 --track [...] Deployment [b6ecbea3d5c84124b7dca457f2892086] - [Elasticsearch][b6ecbea3d5c84124b7dca457f2892086]: finished running all the plan steps (Total plan duration: 5m11.s) Deployment [91c4d60acb804ba0a27651fac02780ec] - [Kibana][8a9d9916cd6e46a7bb0912211d76e2af]: finished running all the plan steps (Total plan duration: 4m29.58s) ``` -------------------------------- ### ecctl deployment resource start Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start.md Starts a previously stopped deployment resource. Requires deployment ID and resource kind. Can start all instances or specific instances using instance IDs. ```APIDOC ## ecctl deployment resource start ### Description Starts a previously stopped deployment resource. ### Method CLI Command ### Endpoint N/A (CLI Command) ### Parameters #### Path Parameters - **deployment id** (string) - Required - The ID of the deployment to start. - **--kind** (string) - Required - The deployment resource kind (apm, appsearch, kibana, elasticsearch). #### Query Parameters None explicitly documented for this command. #### Flags - **--all** (boolean) - Optional - Starts all instances of a defined resource kind. - **-h, --help** (boolean) - Optional - Help for start command. - **--ignore-missing** (boolean) - Optional - If set and the specified instance does not exist, then quietly proceed to the next instance. - **-i, --instance-id strings** (array of strings) - Optional - Deployment instance IDs to start (e.g. instance-0000000001). - **--ref-id string** (string) - Optional - Optional deployment RefId, if not set, the RefId will be auto-discovered. ### Request Example ```bash ecctl deployment resource start --kind [--all|--i ,] ``` ### Response Success response indicates the deployment resource has been started. Error responses will detail the failure. #### Success Response (200) Indicates successful initiation of the start command. #### Response Example (CLI output will vary based on success or failure) ``` -------------------------------- ### List Platform Constructors Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_constructor_list.md Use this command to retrieve a list of all available constructors in the Elastic Cloud platform. No specific setup is required beyond having `ecctl` installed and configured. ```bash ecctl platform constructor list [flags] ``` -------------------------------- ### Initialize ecctl configuration interactively Source: https://context7.com/elastic/ecctl/llms.txt Guides the user through setting up the ecctl configuration file by prompting for API endpoint, region, authentication, and output format. ```sh ecctl init # Welcome to Elastic Cloud Control (ecctl)! # Missing configuration file, would you like to initialise it? [y/n]: y # Select offering: [1] Elastic Cloud [2] ECE [3] ESSP # Please enter your choice: 1 # Using "https://api.elastic-cloud.com" as the API endpoint. # Paste your API Key and press enter: # Config written to /home/myuser/.ecctl/config.json ``` -------------------------------- ### Get Help for Listing StackPacks Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_stack_list.md If you need assistance or want to see all available options for the `ecctl stack list` command, use the `--help` flag. ```bash ecctl stack list --help ``` -------------------------------- ### List Platform Runners Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_runner_list.md Use this command to view all configured platform runners. No additional setup is required beyond having ecctl installed and configured. ```bash ecctl platform runner list [flags] ``` -------------------------------- ### Install ecctl on Linux Source: https://context7.com/elastic/ecctl/llms.txt Downloads and installs the ecctl binary for Linux systems. ```sh # Linux — download a release binary curl -L https://github.com/elastic/ecctl/releases/latest/download/ecctl_linux_amd64.tar.gz | tar xz sudo mv ecctl /usr/local/bin/ ``` -------------------------------- ### ecctl init Source: https://context7.com/elastic/ecctl/llms.txt Guides the user through setting up the ecctl configuration interactively, including API endpoint, region, authentication, and output format, saving the configuration to `~/.ecctl/config.json`. ```APIDOC ## ecctl init — Interactive configuration wizard Guides the user through setting the API endpoint, region, authentication method, and output format, then writes the result to `~/.ecctl/config.json`. ```sh ecctl init # Welcome to Elastic Cloud Control (ecctl)! # Missing configuration file, would you like to initialise it? [y/n]: y # Select offering: [1] Elastic Cloud [2] ECE [3] ESSP # Please enter your choice: 1 # Using "https://api.elastic-cloud.com" as the API endpoint. # Paste your API Key and press enter: # Config written to /home/myuser/.ecctl/config.json ``` ``` -------------------------------- ### Install ecctl on macOS and enable shell completions Source: https://context7.com/elastic/ecctl/llms.txt Installs the ecctl CLI using Homebrew on macOS and configures shell completions for bash or zsh. ```sh # macOS brew tap elastic/tap brew install elastic/tap/ecctl # Enable shell completions (bash or zsh) source <(ecctl generate completions) echo "source <(ecctl generate completions)" >> ~/.zshrc ``` -------------------------------- ### List API Keys Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_auth_key_list.md Use this command to view all API keys for the authenticated user. No additional setup is required beyond authentication. ```bash ecctl auth key list [flags] ``` -------------------------------- ### Install ecctl on macOS with Homebrew Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-installing.md Use these commands to tap the Elastic Homebrew repository and install ecctl. Follow the Homebrew output for setting up shell autocompletions. ```bash $ brew tap elastic/tap $ brew install elastic/tap/ecctl ``` ```bash Updating Homebrew... ==> Installing ecctl from elastic/tap ... ==> Caveats To get autocompletions working make sure to run "source <(ecctl generate completions)". If you prefer to add to your shell interpreter configuration file run, for bash or zsh respectively: * `echo "source <(ecctl generate completions)" >> ~/.bash_profile` * `echo "source <(ecctl generate completions)" >> ~/.zshrc`. ==> Summary 🍺 /usr/local/Cellar/ecctl/1.5.0: 5 files, 22.6MB, built in 4 seconds ``` -------------------------------- ### List Allocators with Filter Examples Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_allocator_list.md Use the --filter flag for post-query filtering of allocators based on metadata. Multiple --filter flags can be combined with AND logic. Examples demonstrate filtering by instance type and a combination of instance type and instance family. ```bash ecctl platform allocator list --filter instanceType:i3.large ``` ```bash ecctl platform allocator list --filter instanceType:i3.large --filter instanceFamily:gcp.highcpu.1 ``` -------------------------------- ### Initialize ecctl Configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-configuring.md Use the `init` command to generate a configuration file for ecctl. This interactive process guides you through setting up authentication and default values for your Elastic Cloud environment. ```bash $ ecctl init Welcome to Elastic Cloud Control (ecctl)! This command will guide you through authenticating and setting some default values. Missing configuration file, would you like to initialise it? [y/n]: y Select which type of Elastic Cloud offering you will be working with: [1] Elastic Cloud (default). [2] Elastic Cloud Enterprise (ECE). [3] Elasticsearch Service Private (ESSP). Please enter your choice: 1 Using "https://api.elastic-cloud.com" as the API endpoint. Select a region you would like to have as default: GCP [1] us-central1 (Iowa) [2] us-east1 (S. Carolina) [3] us-east4 (N. Virginia) [4] us-west1 (Oregon) [5] northamerica-northeast1 (Montreal) [6] southamerica-east1 (São Paulo) [7] australia-southeast1 (Sydney) [8] europe-west1 (Belgium) [9] europe-west2 (London) [10] europe-west3 (Frankfurt) [11] asia-northeast1 (Tokyo) [12] asia-south1 (Mumbai) [13] asia-southeast1 (Singapore) AWS [14] us-east-1 (N. Virginia) [15] us-west-1 (N. California) [16] us-west-2 (Oregon) [17] eu-central-1 (Frankfurt) [18] eu-west-2 (London) [19] eu-west-1 (Ireland) [20] ap-northeast-1 (Tokyo) [21] ap-southeast-1 (Singapore) [22] ap-southeast-2 (Sydney) [23] sa-east-1 (São Paulo) Azure [24] eastus2 (Virginia) [25] westus2 (Washington) [26] westeurope (Netherlands) [27] uksouth (London) [28] japaneast (Tokyo) [29] southeastasia (Singapore) Please enter your choice: 1 Create a new Elastic Cloud API key (https://cloud.elastic.co/account/keys) and/or Paste your API Key and press enter: xxxxx What default output format would you like? [1] text - Human-readable output format, commands with no output templates defined will fall back to JSON. [2] json - JSON formatted output API responses. Please enter a choice: 1 Your credentials seem to be valid. You're all set! Here are some commands to try: $ ecctl deployment list Config written to /home/myuser/.ecctl/config.json ``` -------------------------------- ### Help Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration.md Displays help information for the instance-configuration command. ```bash -h, --help help for instance-configuration ``` -------------------------------- ### ecctl init Help Option Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_init.md Displays help information for the ecctl init command. Use this to see all available options and their descriptions. ```bash ecctl init -h ``` -------------------------------- ### Generate deployment payload Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md This example illustrates how to use the `--generate-payload` flag to output the JSON payload that would be sent for deployment creation. This payload can be saved to a file, modified, and then used to create the deployment. ```APIDOC ## Use the "--generate-payload" flag to save the definition to a file for later use. $ ecctl deployment create --name my-deployment --version=7.11.2 --generate-payload > create_example.json ``` -------------------------------- ### List Enrollment Tokens Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_enrollment-token_list.md Use this command to retrieve a list of persistent enrollment tokens. No additional setup is required beyond having ecctl installed and configured. ```bash ecctl platform enrollment-token list [flags] ``` -------------------------------- ### Instance Configuration Create Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_create.md These are the specific options available for the `create` command. The `-f` flag is required to specify the configuration file, and `--id` allows for an optional override of the configuration ID. ```bash -f, --file string Instance configuration JSON file definition -h, --help help for create --id string Optional ID to set for the instance configuration (Overrides id if present) ``` -------------------------------- ### Main Command Structure Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration.md This is the base command for managing instance configurations. Use subcommands to perform specific actions. ```bash ecctl platform instance-configuration [flags] ``` -------------------------------- ### Show Elastic StackPack Information Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_stack_show.md Use this command to view details about a specific Elastic StackPack. No additional setup is required beyond having `ecctl` installed and configured. ```bash ecctl stack show [flags] ``` -------------------------------- ### Download Instance Configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_pull.md Use this command to pull the instance configuration to a local path. Specify the target directory using the `--path` flag. ```bash ecctl platform instance-configuration pull --path ``` -------------------------------- ### List Platform Roles Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_role_list.md Use this command to retrieve a list of all platform roles configured in your Elastic Cloud Enterprise environment. No specific setup is required beyond having ecctl installed and configured. ```bash ecctl platform role list [flags] ``` -------------------------------- ### Instance Configuration Show Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_show.md These flags can be used with the 'show' command to refine the instance configuration details you retrieve. Specify the configuration version or choose to display deleted configurations. ```bash -v, --config-version string Instance configuration version -h, --help help for show --show-deleted If set to true, allows to show deleted instance configurations ``` -------------------------------- ### Create Instance Configuration Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_create.md Use this command to create a new instance configuration by providing a JSON definition file. The `-f` flag specifies the path to this file. ```bash ecctl platform instance-configuration create -f [flags] ``` -------------------------------- ### Create a basic deployment Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-example-create-deployment.md Use this command to create a new deployment with default settings. Ensure you are authenticated with ecctl. ```bash ecctl deployment create --template-id "default" --name "my-deployment" ``` -------------------------------- ### Create a deployment with specific resources Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-example-create-deployment.md Create a deployment and specify the resources to include, such as Elasticsearch, Kibana, and APM Server. Adjust resource sizes as needed. ```bash ecctl deployment create --template-id "default" --name "my-deployment" --resources "elasticsearch=2g,kibana=1g,apm=512m" ``` -------------------------------- ### Create Instance Configuration Source: https://context7.com/elastic/ecctl/llms.txt Creates a new instance configuration using a JSON file. ```sh ecctl platform instance-configuration create -f config.json ``` -------------------------------- ### Help option for keystore command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_elasticsearch_keystore.md Displays help information for the keystore command. ```bash -h, --help help for keystore ``` -------------------------------- ### Start Maintenance Mode for a Deployment Resource Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start-maintenance.md Use this command to start maintenance mode on a specific deployment resource. You must provide the deployment ID and the resource kind. You can target all instances or specific instance IDs. ```bash ecctl deployment resource start-maintenance --kind [--all|--i ,] [flags] ``` -------------------------------- ### Switch between ecctl configurations Source: https://context7.com/elastic/ecctl/llms.txt Demonstrates how to use named configuration files to switch between different environments. ```sh # Switch between environments using named configs ecctl deployment list # uses ~/.ecctl/config.yaml ecctl deployment list --config staging # uses ~/.ecctl/staging.yaml ``` -------------------------------- ### List Instance Configurations Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_list.md Use the `ecctl platform instance-configuration list` command to retrieve a list of all available instance configurations. ```APIDOC ## List Instance Configurations ### Description Lists the instance configurations. ### Command ``` ecctl platform instance-configuration list [flags] ``` ### Options ``` -h, --help help for list ``` ### Inherited Options :::{include} _snippets/inherited-options.md ::: ### See Also * [ecctl platform instance-configuration](/reference/ecctl_platform_instance-configuration.md) - Manages instance configurations ``` -------------------------------- ### Resource Lifecycle Operations Source: https://context7.com/elastic/ecctl/llms.txt Performs individual resource-level lifecycle commands such as shutdown, start, stop, and restore. ```APIDOC ## `ecctl deployment resource shutdown / start / stop / restore` — Lifecycle operations Individual resource-level lifecycle commands. Each accepts `--kind` (elasticsearch, kibana, apm, appsearch, enterprise_search) and optionally `--ref-id`. ### Usage ```sh ecctl deployment resource --kind [--ref-id ] [--force] ``` ### Commands - **shutdown**: Shuts down a resource. - **start**: Starts a stopped resource or puts a resource into maintenance mode. - **stop**: Stops a running resource. - **restore**: Restores a deleted resource. ### Parameters #### Path Parameters - **deployment-id** (string) - Required - The ID of the deployment. #### Query Parameters - **kind** (string) - Required - The kind of resource to operate on (e.g., elasticsearch, kibana, apm). - **ref-id** (string) - Optional - The reference ID of the resource. - **force** (boolean) - Optional - Force the operation without confirmation. ``` -------------------------------- ### Get Raw JSON Output Source: https://context7.com/elastic/ecctl/llms.txt Fetches the raw API response in JSON format for deployment lists. ```sh ecctl deployment list --output json ``` -------------------------------- ### Create a deployment from a file definition Source: https://github.com/elastic/ecctl/blob/master/notes/v1.0.0-beta1.md Use the `deployment create` command to provision a new deployment. Specify the deployment configuration in a file and use flags for overrides. ```command ecctl deployment create ``` -------------------------------- ### Start resource with optional RefId Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start.md If a RefId is not automatically discovered, you can optionally specify it using the `--ref-id` flag. ```bash ecctl deployment resource start --kind --ref-id ``` -------------------------------- ### ecctl platform allocator Command Structure Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_allocator.md This is the base command for managing allocators. Use this as a starting point for all allocator-related operations. ```bash ecctl platform allocator [flags] ``` -------------------------------- ### Show ecctl version Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_version.md Use this command to display the installed version of the ecctl tool. It accepts a help flag for more information. ```bash ecctl version [flags] ``` ```bash ecctl version [flags] Options: -h, --help help for version ``` -------------------------------- ### Build ecctl locally Source: https://github.com/elastic/ecctl/blob/master/CONTRIBUTING.md Compile the ecctl binary with your local changes. Ensure you have completed the environment setup before running this command. ```console cd ${GOPATH}/src/github.com/elastic/ecctl make ecctl ``` -------------------------------- ### Deployment Template Create Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_template_create.md These options configure the creation of a deployment template. The `--file` option is mandatory for providing the template definition. ```bash -f, --file string Deployment template definition. -h, --help help for create --hide-instance-configurations Hides instance configurations - only visible when using the JSON output. --template-id string Optional deployment template ID. Otherwise the deployment template will be created with an auto-generated ID. ``` -------------------------------- ### List Instance Configurations Source: https://context7.com/elastic/ecctl/llms.txt Retrieves a list of all instance configurations used in deployment templates. ```sh ecctl platform instance-configuration list ``` -------------------------------- ### Start maintenance mode on a deployment resource Source: https://github.com/elastic/ecctl/blob/master/notes/v1.0.0-beta1.md Use the `deployment resource start-maintenance` command to enable maintenance mode for a deployment resource. ```command ecctl deployment resource start-maintenance ``` -------------------------------- ### Create a deployment from a file definition Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md Create a deployment using a previously saved JSON definition file. The `--track` flag can be used to monitor its progress. ```bash $ ecctl deployment create --file create_example.json --track ``` -------------------------------- ### Generate Extension Update Payload Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_extension_update.md Use this command to get a JSON payload representing the current extension state, which can then be edited for updates. ```bash ecctl deployment extension update --generate-payload > update.json ``` -------------------------------- ### Instance Configuration Update Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_update.md The `-f` or `--file` option is required to specify the path to the JSON file containing the instance configuration definition. Use `-h` or `--help` for command help. ```bash -f, --file string Instance configuration JSON file definition -h, --help help for update ``` -------------------------------- ### Create a deployment from a JSON configuration file Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-example-create-deployment.md Use a JSON file to define all aspects of your deployment, including resources, versions, and advanced settings. This is useful for complex or repeatable deployments. ```bash ecctl deployment create --template-file "deployment-config.json" --name "my-deployment-from-json" ``` -------------------------------- ### Set Multiple Secrets Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_elasticsearch_keystore_update.md Example of setting multiple secrets in a single payload. Each secret is defined within the 'secrets' object in the JSON file. ```json { "secrets": { "my-secret": { "value": "my-value" }, "my-other-secret": { "value": "my-other-value" } } } ``` ```bash $ ecctl deployment elasticsearch keystore set --file=multiple.json ``` -------------------------------- ### Help for List Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_constructor_list.md Displays help information for the `ecctl platform constructor list` command, including available flags. ```bash ecctl platform constructor list --help ``` -------------------------------- ### List Deployment Templates Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_template_list.md Use this command to list all available deployment templates. You can filter the results using various flags. ```bash ecctl deployment template list [flags] ``` -------------------------------- ### ecctl comment Command Structure Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_comment.md This is the base command for managing resource comments. Use this as a starting point for creating, deleting, listing, showing, or updating comments. ```bash ecctl comment [flags] ``` -------------------------------- ### Show Instance Configuration Source: https://context7.com/elastic/ecctl/llms.txt Displays detailed information for a specific instance configuration using its ID. ```sh ecctl platform instance-configuration show ``` -------------------------------- ### Extension Creation Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_extension_create.md These are the available options for creating a deployment extension. The `--file` or `--download-url` flags are mandatory for specifying the extension source. ```bash --description string Optional flag to add a description to the extension. --download-url string Optional flag to define the URL to download the extension archive. --file string Optional flag to upload an extension from a local file path. -h, --help help for create --type string Extension type. Can be one of [bundle, plugin]. --version string Elastic stack version. Numeric version for plugins, e.g. 7.10.0. Major version e.g. 7.*, or wildcards e.g. * for bundles. ``` -------------------------------- ### Show Instance Configuration Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_show.md Use this command to display a specific instance configuration by its ID. You can optionally specify the configuration version or include deleted configurations in the output. ```bash ecctl platform instance-configuration show [flags] ``` -------------------------------- ### Print ecctl version information Source: https://context7.com/elastic/ecctl/llms.txt This command displays the current ecctl version, build hash, and build date. It is useful for verifying the installed version and build details. ```sh ecctl version # Version: v1.15.0 # Build Hash: abc123def456 # Build Date: 2025-06-13 ``` -------------------------------- ### Show Deployment Details with Plan Logs, History, and Settings Source: https://context7.com/elastic/ecctl/llms.txt Use this command to retrieve comprehensive information about a specific deployment, including its plan logs, history, and configuration settings. ```sh ecctl deployment show 7229888e7bf8350c7e4d07d7374171c0 --plan-logs --plan-history --settings ``` -------------------------------- ### Create a deployment with default values Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md Use this command to create a deployment based on a specified deployment template and region, utilizing default configurations. ```bash $ ecctl deployment create --name my-deployment --deployment-template=aws-io-optimized-v2 --region=us-east-1 ``` -------------------------------- ### Example Deployment Update Payload Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_update.md This JSON defines an update for an Elasticsearch cluster, changing the zone count for the first topology element to 3. This payload is used with the `-f` flag. ```json { "resources": { "elasticsearch": [ { "display_name": "my elasticsearch cluster", "ref_id": "my-es-cluster", "plan": { "deployment_template": { "id": "default" }, "elasticsearch": { "version": "6.8.4" }, "cluster_topology": [ { "instance_configuration_id": "data.default", "memory_per_node": 1024, "node_count_per_zone": 1, "node_type": { "data": true, "ingest": true, "master": true, "ml": false }, "zone_count": 3 } ] } } ] } } ``` -------------------------------- ### Help option for settings command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_proxy_settings.md Displays help information for the 'settings' subcommand. ```bash -h, --help help for settings ``` -------------------------------- ### Available options for ecctl deployment template show Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_template_show.md Lists the available command-line options for the `ecctl deployment template show` command, including help flags, configuration hiding, stack version filtering, and template ID specification. ```bash -h, --help help for show --hide-instance-configurations Hides instance configurations - only visible when using the JSON output --stack-version string Optional filter to only return deployment templates which are valid for the specified stack version. --template-id string Required template ID to update. ``` -------------------------------- ### Set GCS Snapshot Repository Credentials Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_elasticsearch_keystore_update.md Example of setting credentials for a GCS snapshot repository. The secrets are defined in a JSON file, including sensitive values like private keys. ```json { "secrets": { "gcs.client.default.credentials_file": { "as_file": true, "value": { "type": "service_account", "project_id": "project-id", "private_key_id": "key-id", "private_key": "-----BEGIN PRIVATE KEY-----\nprivate-key\n-----END PRIVATE KEY-----\n", "client_email": "service-account-email", "client_id": "client-id", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://accounts.google.com/o/oauth2/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email" } } } } ``` ```bash $ ecctl deployment elasticsearch keystore set --file=gcs-creds.json ``` -------------------------------- ### Configure ecctl using YAML file for Elastic Cloud Hosted Source: https://context7.com/elastic/ecctl/llms.txt Example configuration file for Elastic Cloud Hosted (ESS) using YAML format, specifying the host and API key. ```yaml # ~/.ecctl/config.yaml — Elastic Cloud Hosted host: https://api.elastic-cloud.com api_key: bWFyYzo4ZTJmNmZkNjY5ZmQ0MDBkOTQ3ZjI3MTg3ZWI5MWZhYjpOQktHY05jclE0cTBzcUlnTXg3QTd3 # Alternative: username/password # user: myuser # pass: mypassword # ECE example (different host + region) # host: https://my-ece-host:12443 # region: ece-region # api_key: ``` -------------------------------- ### Show Command Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_elasticsearch_keystore_show.md These are the specific options available for the 'show' command, including help and the optional ref-id parameter. ```bash -h, --help help for show --ref-id string Optional ref_id to use for the Elasticsearch resource, auto-discovered if not specified. ``` -------------------------------- ### Create Instance Configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_create.md Creates a new instance configuration by providing a JSON file with the configuration details. You can optionally specify an ID for the configuration. ```APIDOC ## ecctl platform instance-configuration create ### Description Creates a new instance configuration. ### Method POST (inferred from create operation) ### Endpoint /api/v1/platform/instance-configurations (inferred from create operation) ### Parameters #### Command Line Options - **-f, --file** (string) - Required - Instance configuration JSON file definition - **--id** (string) - Optional - Optional ID to set for the instance configuration (Overrides id if present) ### Request Example ```bash ecctl platform instance-configuration create -f ``` ### See Also * [ecctl platform instance-configuration](/reference/ecctl_platform_instance-configuration.md) - Manages instance configurations ``` -------------------------------- ### ecctl Shared Configuration File Example Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-example-shared-configuration-file.md This YAML configuration file sets up the ecctl tool to connect to Elastic Cloud. It includes the API endpoint URL and authentication credentials, prioritizing API keys. ```yaml host: https://api.elastic-cloud.com # URL of your Elastic Cloud or Elastic Cloud Enterprise API endpoint # Credentials ## api_key is the preferred authentication mechanism. api_key: bWFyYzo4ZTJmNmZkNjY5ZmQ0MDBkOTQ3ZjI3MTg3ZWI5MWZhYjpOQktHY05jclE0cTBzcUlnTXg3QTd3 ## username and password can be used when no API key is available. user: username pass: password ``` -------------------------------- ### Create a deployment with a custom template Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl-example-create-deployment.md Deploy a custom configuration by referencing a specific template ID. This allows for pre-defined resource allocations and settings. ```bash ecctl deployment create --template-id "my-custom-template-id" --name "my-custom-deployment" ``` -------------------------------- ### Start maintenance mode on a deployment resource Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_resource_start-maintenance.md Initiates maintenance mode for a specified deployment resource. You can target all instances of a resource kind, or specific instances using their IDs. A resource kind and deployment ID are required. ```APIDOC ## ecctl deployment resource start-maintenance ### Description Starts maintenance mode on a deployment resource. ### Method POST (inferred from command structure, actual method not specified) ### Endpoint /api/v1/deployments/{deployment_id}/resources/{kind}/maintenance (inferred, actual endpoint not specified) ### Parameters #### Path Parameters - **deployment id** (string) - Required - The ID of the deployment. - **kind** (string) - Required - The deployment resource kind (apm, appsearch, kibana, elasticsearch). #### Query Parameters - **all** (boolean) - Optional - Starts maintenance mode on all instances of a defined resource kind. - **instance-id** (string array) - Optional - Deployment instance IDs to use (e.g. instance-0000000001). - **ignore-missing** (boolean) - Optional - If set and the specified instance does not exist, then quietly proceed to the next instance. - **ref-id** (string) - Optional - Optional deployment RefId, if not set, the RefId will be auto-discovered. ### Request Example ```bash ecctl deployment resource start-maintenance --kind [--all|--i ,] [flags] ``` ### Response #### Success Response (200) (Response details not specified in the source) #### Response Example (Response example not specified in the source) ``` -------------------------------- ### Help for resync command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_constructor_resync.md Displays help information for the `ecctl platform constructor resync` command, including available options. ```bash ecctl platform constructor resync --help ``` -------------------------------- ### Create Serverless Project Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_create.md Use this command to create a new serverless project. Specify the project name and optionally its tier and type. ```bash ecctl project create [flags] ``` -------------------------------- ### Update Deployment and Change Topology Zone Count Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_update.md Executes a deployment update using the specified JSON file, changing the cluster topology's zone count. This example demonstrates a common update scenario. ```bash $ cat deployment_example_update.json { "resources": { "elasticsearch": [ { "display_name": "my elasticsearch cluster", "ref_id": "my-es-cluster", "plan": { "deployment_template": { "id": "default" }, "elasticsearch": { "version": "6.8.4" }, "cluster_topology": [ { "instance_configuration_id": "data.default", "memory_per_node": 1024, "node_count_per_zone": 1, "node_type": { "data": true, "ingest": true, "master": true, "ml": false }, "zone_count": 3 } ] } } ] } } $ ecctl deployment update f44c06c3af6f85dac05023cf243f4ab1 -f deployment_example_update.json ... ``` -------------------------------- ### Retry deployment creation with request ID Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_create.md This example demonstrates how to retry a failed deployment creation using the `--request-id` flag, which takes the request ID from a previous failed command's error response. ```APIDOC ## To retry a deployment when the previous deployment creation failed, use the request ID provided in the error response of the previous command: $ ecctl deployment create --request-id=GMZPMRrcMYqHdmxjIQkHbdjnhPIeBElcwrHwzVlhGUSMXrEIzVXoBykSVRsKncNb ``` -------------------------------- ### Show Project Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_show.md These are the specific options available for the `show` command. The `--type` flag allows you to specify the project type, which is auto-detected if omitted. ```bash -h, --help help for show --type string Project type (elasticsearch/search, observability, security). Auto-detected if omitted. ``` -------------------------------- ### Create Platform Role Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_role_create.md The `--file` option is required to specify the JSON file containing the role definition. ```bash --file string File name of the role to create -h, --help help for create ``` -------------------------------- ### Example Commit Message Source: https://github.com/elastic/ecctl/blob/master/CONTRIBUTING.md Follow this format for commit messages to ensure clarity and consistency. Include a short subject line, a blank line, and a detailed explanation of the reasoning behind the changes. Reference related issues using 'refs #issue_number' or 'fixes/closes #issue_number'. ```console elasticsearch: Remove unnecessary cluster list sorting Removes the unnecessary sorting on the obtained API response since the cluster list is already sorted by the backend. Closes #1234 ``` -------------------------------- ### Help Option for Show Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_auth_key_show.md This option displays help information for the `ecctl auth key show` command. ```bash -h, --help help for show ``` -------------------------------- ### API Key Creation Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_auth_key_create.md When creating an API key, you can provide a description for it using the --description flag. Help information is available via the -h or --help flags. ```bash --description string User API key description -h, --help help for create ``` -------------------------------- ### ecctl init Command Usage Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_init.md This is the basic usage of the ecctl init command. It creates an initial configuration file for ecctl. ```bash ecctl init [flags] ``` -------------------------------- ### Show Allocator Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_allocator_show.md These are the specific options available for the `show` command. The `--metadata` flag can be used to include allocator metadata in the output. ```bash -h, --help help for show --metadata Show allocator metadata ``` -------------------------------- ### Show Command Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_traffic-filter_show.md These are the specific options available for the `show` subcommand. The `--help` flag displays usage information, while `--include-associations` is an optional flag to fetch associated resources. ```bash -h, --help help for show --include-associations Optional flag to include all associated resources ``` -------------------------------- ### Help option for ecctl deployment plan Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_plan.md Displays help information for the `ecctl deployment plan` command. ```bash ecctl deployment plan -h ``` -------------------------------- ### ecctl platform instance-configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration.md The base command for managing instance configurations. ```APIDOC ## ecctl platform instance-configuration ### Description Manages instance configurations. ### Usage ``` ecctl platform instance-configuration [flags] ``` ### Options ``` -h, --help help for instance-configuration ``` ### See Also * [ecctl platform](/reference/ecctl_platform.md) - Manages the platform * [ecctl platform instance-configuration create](/reference/ecctl_platform_instance-configuration_create.md) - Creates a new instance configuration * [ecctl platform instance-configuration delete](/reference/ecctl_platform_instance-configuration_delete.md) - Deletes an instance configuration * [ecctl platform instance-configuration list](/reference/ecctl_platform_instance-configuration_list.md) - Lists the instance configurations * [ecctl platform instance-configuration pull](/reference/ecctl_platform_instance-configuration_pull.md) - Downloads instance configuration into a local folder * [ecctl platform instance-configuration show](/reference/ecctl_platform_instance-configuration_show.md) - Shows an instance configuration * [ecctl platform instance-configuration update](/reference/ecctl_platform_instance-configuration_update.md) - Overwrites an instance configuration ``` -------------------------------- ### Help for Enable Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_user_enable.md View the help information for the `ecctl user enable` command to understand all available flags and options. ```bash ecctl user enable -h ``` -------------------------------- ### Show Serverless Project Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_show.md Use this command to display details of a specific serverless project. Replace `` with the actual project ID. ```bash ecctl project show [flags] ``` -------------------------------- ### Create Deployment Template Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_template_create.md Use this command to create a new deployment template by providing a JSON definition file. Flags can be used to specify the file and other options. ```bash ecctl deployment template create --file [flags] ``` -------------------------------- ### Show a specific repository configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_repository_show.md Use this command to display the configuration details of a named snapshot repository. Replace `` with the actual name of the repository you want to inspect. ```bash ecctl platform repository show [flags] ``` -------------------------------- ### Show Instance Configuration Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_show.md This command retrieves and displays the details of a specific instance configuration identified by its ID. ```APIDOC ## ecctl platform instance-configuration show ### Description Shows an instance configuration. ### Method CLI Command ### Parameters #### Path Parameters - **config id** (string) - Required - The ID of the instance configuration to show. #### Flags - **-v, --config-version string** - Instance configuration version. - **-h, --help** - help for show. - **--show-deleted** - If set to true, allows to show deleted instance configurations. ### See also * [ecctl platform instance-configuration](/reference/ecctl_platform_instance-configuration.md) - Manages instance configurations ``` -------------------------------- ### ecctl platform instance-configuration pull Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_instance-configuration_pull.md Downloads instance configuration into a local folder. ```APIDOC ## ecctl platform instance-configuration pull ### Description Downloads instance configuration into a local folder. ### Command ``` ecctl platform instance-configuration pull --path [flags] ``` ### Options #### Flags - `-h, --help` - help for pull - `-p, --path string` - Local path with instance configuration. ``` -------------------------------- ### Create Serverless Project Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_create.md Command to create a new serverless project with specified options. ```APIDOC ## ecctl project create ### Description Creates a serverless project. ### Method CLI Command ### Endpoint N/A ### Parameters #### Command Options - **--name** (string) - Required - Project name - **--tier** (string) - Optional - Product tier (observability: complete/logs_essentials, security: complete/essentials) - **--type** (string) - Optional - Project type (elasticsearch/search, observability, security) ### Request Example ```bash ecctl project create --name "my-project" --type "elasticsearch" ``` ### Response Success: Project created. Error: Appropriate error message if creation fails. ``` -------------------------------- ### Project Creation Options Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project_create.md These flags can be used with the `ecctl project create` command to configure the new project. The name is required, while tier and type are optional. ```bash -h, --help help for create --name string Project name --tier string Product tier (observability: complete/logs_essentials, security: complete/essentials) --type string Project type (elasticsearch/search, observability, security) ``` -------------------------------- ### Create a snapshot repository with S3 settings Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_repository_create.md Use this command to create a new snapshot repository named 'my-snapshot-repo' using settings defined in 'settings.yml'. The default repository type 's3' is assumed. ```bash ecctl platform repository create my-snapshot-repo --settings settings.yml ``` -------------------------------- ### Help for Set Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_allocator_metadata_set.md This flag displays help information for the `set` command, detailing its options and usage. ```bash ecctl platform allocator metadata set -h help for set ``` -------------------------------- ### Create a platform user with multiple roles Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_user_create.md Use this command to create a new platform user and assign them multiple roles. Ensure the roles specified are valid within your ECE environment. ```bash ecctl user create --username sam89 --role ece_platform_viewer --role ece_deployment_viewer ``` -------------------------------- ### Help for Show Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_elasticsearch_keystore_show.md This flag provides help information for the 'show' subcommand, detailing its options and usage. ```bash ecctl deployment elasticsearch keystore show --help ``` -------------------------------- ### Help Option for ecctl project Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_project.md Displays help information for the 'ecctl project' command, detailing its options and usage. ```bash -h, --help help for project ``` -------------------------------- ### Create Deployment Extension Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_deployment_extension_create.md Use this command to create a new deployment extension. You must specify the extension name, version, type, and either a file path or a download URL. ```bash ecctl deployment extension create --version --type {--file | --download-url } [--description ] [flags] ``` -------------------------------- ### ecctl init command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_init.md Initializes the ecctl configuration by creating a configuration file. This command sets up the necessary files for ecctl to interact with Elastic Cloud. ```APIDOC ## ecctl init ### Description Creates an initial configuration file. ### Command ``` ecctl init [flags] ``` ### Options ``` -h, --help help for init ``` ### Inherited Options :::{include} _snippets/inherited-options.md ::: ### See also * [ecctl](/reference/ecctl.md) - Elastic Cloud Control ``` -------------------------------- ### List all proxies Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_proxy_list.md Use this command to retrieve a list of all proxies configured in the platform. No additional arguments are required. ```bash ecctl platform proxy list [flags] ``` -------------------------------- ### Show Constructor Command Source: https://github.com/elastic/ecctl/blob/master/docs/reference/ecctl_platform_constructor_show.md Use this command to display details of a specific constructor. Replace `` with the actual ID of the constructor you want to inspect. ```bash ecctl platform constructor show [flags] ``` -------------------------------- ### Create Snapshot Repository Source: https://context7.com/elastic/ecctl/llms.txt Creates a new snapshot repository using a JSON configuration file. ```sh ecctl platform repository create -f repo.json ``` -------------------------------- ### Instance Configuration Management Source: https://context7.com/elastic/ecctl/llms.txt Commands for managing instance configurations used in deployment templates. ```APIDOC ## `ecctl platform instance-configuration` — Instance configurations (ECE) Manages the instance configurations used in deployment templates. ### Commands * `list`: Lists all instance configurations. * `show `: Shows details of a specific instance configuration. * `create -f config.json`: Creates a new instance configuration. * `update -f config.json`: Updates an existing instance configuration. * `pull --location ./instance-configs/`: Pulls instance configurations to a local directory. * `delete `: Deletes an instance configuration. ### Example ```sh ecctl platform instance-configuration list ecctl platform instance-configuration show ecctl platform instance-configuration create -f config.json ecctl platform instance-configuration update -f config.json ecctl platform instance-configuration pull --location ./instance-configs/ ecctl platform instance-configuration delete ``` ```