You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::ElasticsearchService::Client

Inherits:
Seahorse::Client::Base show all
Defined in:
(unknown)

Overview

An API client for Amazon Elasticsearch Service. To construct a client, you need to configure a :region and :credentials.

elasticsearchservice = Aws::ElasticsearchService::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

See #initialize for a full list of supported configuration options.

Region

You can configure a default region in the following locations:

  • ENV['AWS_REGION']
  • Aws.config[:region]

Go here for a list of supported regions.

Credentials

Default credentials are loaded automatically from the following locations:

  • ENV['AWS_ACCESS_KEY_ID'] and ENV['AWS_SECRET_ACCESS_KEY']
  • Aws.config[:credentials]
  • The shared credentials ini file at ~/.aws/credentials (more information)
  • From an instance profile when running on EC2

You can also construct a credentials object from one of the following classes:

Alternatively, you configure credentials with :access_key_id and :secret_access_key:

# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))

Aws::ElasticsearchService::Client.new(
  access_key_id: creds['access_key_id'],
  secret_access_key: creds['secret_access_key']
)

Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Constructor collapse

API Operations collapse

Instance Method Summary collapse

Methods inherited from Seahorse::Client::Base

add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options = {}) ⇒ Aws::ElasticsearchService::Client

Constructs an API client.

Options Hash (options):

  • :access_key_id (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :active_endpoint_cache (Boolean)

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types. See Plugins::ParamConverter for more details.

  • :credentials (required, Credentials)

    Your AWS credentials. The following locations will be searched in order for credentials:

    • :access_key_id, :secret_access_key, and :session_token options
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • HOME/.aws/credentials shared credentials file
    • EC2 instance profile credentials See Plugins::RequestSigner for more details.
  • :disable_host_prefix_injection (Boolean)

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available. See Plugins::EndpointPattern for more details.

  • :endpoint (String)

    A default endpoint is constructed from the :region. See Plugins::RegionalEndpoint for more details.

  • :endpoint_cache_max_entries (Integer)

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_max_threads (Integer)

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_poll_interval (Integer)

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec. See Plugins::EndpointDiscovery for more details.

  • :endpoint_discovery (Boolean)

    When set to true, endpoint discovery will be enabled for operations when available. Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :http_continue_timeout (Float) — default: 1

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_idle_timeout (Integer) — default: 5

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_open_timeout (Integer) — default: 15

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_proxy (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_read_timeout (Integer) — default: 60

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_wire_trace (Boolean) — default: false

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the logger at. See Plugins::Logging for more details.

  • :log_formatter (Logging::LogFormatter)

    The log formatter. Defaults to Seahorse::Client::Logging::Formatter.default. See Plugins::Logging for more details.

  • :logger (Logger) — default: nil

    The Logger instance to send log messages to. If this option is not set, logging will be disabled. See Plugins::Logging for more details.

  • :profile (String)

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used. See Plugins::RequestSigner for more details.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised. See Seahorse::Client::Plugins::RaiseResponseErrors for more details.

  • :region (required, String)

    The AWS region to connect to. The region is used to construct the client endpoint. Defaults to ENV['AWS_REGION']. Also checks AMAZON_REGION and AWS_DEFAULT_REGION. See Plugins::RegionalEndpoint for more details.

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors and auth errors from expired credentials. See Plugins::RetryErrors for more details.

  • :secret_access_key (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :session_token (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :ssl_ca_bundle (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_directory (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_store (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_verify_peer (Boolean) — default: true

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled. See Plugins::StubResponses for more details.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request. See Plugins::ParamValidator for more details.

Instance Method Details

#accept_inbound_cross_cluster_search_connection(options = {}) ⇒ Types::AcceptInboundCrossClusterSearchConnectionResponse

Allows the destination domain owner to accept an inbound cross-cluster search connection request.

Examples:

Request syntax with placeholder values


resp = client.accept_inbound_cross_cluster_search_connection({
  cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
})

Response structure


resp.cross_cluster_search_connection.source_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.source_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.source_domain_info.region #=> String
resp.cross_cluster_search_connection.destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.destination_domain_info.region #=> String
resp.cross_cluster_search_connection.cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connection.connection_status.message #=> String

Options Hash (options):

  • :cross_cluster_search_connection_id (required, String)

    The id of the inbound connection that you want to accept.

Returns:

#add_tags(options = {}) ⇒ Struct

Attaches tags to an existing Elasticsearch domain. Tags are a set of case-sensitive key value pairs. An Elasticsearch domain may have up to 10 tags. See Tagging Amazon Elasticsearch Service Domains for more information.

Examples:

Request syntax with placeholder values


resp = client.add_tags({
  arn: "ARN", # required
  tag_list: [ # required
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Options Hash (options):

  • :arn (required, String)

    Specify the ARN for which you want to add the tags.

  • :tag_list (required, Array<Types::Tag>)

    List of Tag that need to be added for the Elasticsearch domain.

Returns:

  • (Struct)

    Returns an empty response.

#associate_package(options = {}) ⇒ Types::AssociatePackageResponse

Associates a package with an Amazon ES domain.

Examples:

Request syntax with placeholder values


resp = client.associate_package({
  package_id: "PackageID", # required
  domain_name: "DomainName", # required
})

Response structure


resp.domain_package_details.package_id #=> String
resp.domain_package_details.package_name #=> String
resp.domain_package_details.package_type #=> String, one of "TXT-DICTIONARY"
resp.domain_package_details.last_updated #=> Time
resp.domain_package_details.domain_name #=> String
resp.domain_package_details.domain_package_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ACTIVE", "DISSOCIATING", "DISSOCIATION_FAILED"
resp.domain_package_details.package_version #=> String
resp.domain_package_details.reference_path #=> String
resp.domain_package_details.error_details.error_type #=> String
resp.domain_package_details.error_details.error_message #=> String

Options Hash (options):

  • :package_id (required, String)

    Internal ID of the package that you want to associate with a domain. Use DescribePackages to find this value.

  • :domain_name (required, String)

    Name of the domain that you want to associate the package with.

Returns:

#cancel_elasticsearch_service_software_update(options = {}) ⇒ Types::CancelElasticsearchServiceSoftwareUpdateResponse

Cancels a scheduled service software update for an Amazon ES domain. You can only perform this operation before the AutomatedUpdateDate and when the UpdateStatus is in the PENDING_UPDATE state.

Examples:

Request syntax with placeholder values


resp = client.cancel_elasticsearch_service_software_update({
  domain_name: "DomainName", # required
})

Response structure


resp.service_software_options.current_version #=> String
resp.service_software_options.new_version #=> String
resp.service_software_options.update_available #=> true/false
resp.service_software_options.cancellable #=> true/false
resp.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.service_software_options.description #=> String
resp.service_software_options.automated_update_date #=> Time
resp.service_software_options.optional_deployment #=> true/false

Options Hash (options):

  • :domain_name (required, String)

    The name of the domain that you want to stop the latest service software update on.

Returns:

#create_elasticsearch_domain(options = {}) ⇒ Types::CreateElasticsearchDomainResponse

Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.

Examples:

Request syntax with placeholder values


resp = client.create_elasticsearch_domain({
  domain_name: "DomainName", # required
  elasticsearch_version: "ElasticsearchVersionString",
  elasticsearch_cluster_config: {
    instance_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch
    instance_count: 1,
    dedicated_master_enabled: false,
    zone_awareness_enabled: false,
    zone_awareness_config: {
      availability_zone_count: 1,
    },
    dedicated_master_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch
    dedicated_master_count: 1,
    warm_enabled: false,
    warm_type: "ultrawarm1.medium.elasticsearch", # accepts ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch
    warm_count: 1,
  },
  ebs_options: {
    ebs_enabled: false,
    volume_type: "standard", # accepts standard, gp2, io1
    volume_size: 1,
    iops: 1,
  },
  access_policies: "PolicyDocument",
  snapshot_options: {
    automated_snapshot_start_hour: 1,
  },
  vpc_options: {
    subnet_ids: ["String"],
    security_group_ids: ["String"],
  },
  cognito_options: {
    enabled: false,
    user_pool_id: "UserPoolId",
    identity_pool_id: "IdentityPoolId",
    role_arn: "RoleArn",
  },
  encryption_at_rest_options: {
    enabled: false,
    kms_key_id: "KmsKeyId",
  },
  node_to_node_encryption_options: {
    enabled: false,
  },
  advanced_options: {
    "String" => "String",
  },
  log_publishing_options: {
    "INDEX_SLOW_LOGS" => {
      cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn",
      enabled: false,
    },
  },
  domain_endpoint_options: {
    enforce_https: false,
    tls_security_policy: "Policy-Min-TLS-1-0-2019-07", # accepts Policy-Min-TLS-1-0-2019-07, Policy-Min-TLS-1-2-2019-07
    custom_endpoint_enabled: false,
    custom_endpoint: "DomainNameFqdn",
    custom_endpoint_certificate_arn: "ARN",
  },
  advanced_security_options: {
    enabled: false,
    internal_user_database_enabled: false,
    master_user_options: {
      master_user_arn: "ARN",
      master_user_name: "Username",
      master_user_password: "Password",
    },
    saml_options: {
      enabled: false,
      idp: {
        metadata_content: "SAMLMetadata", # required
        entity_id: "SAMLEntityId", # required
      },
      master_user_name: "Username",
      master_backend_role: "BackendRole",
      subject_key: "String",
      roles_key: "String",
      session_timeout_minutes: 1,
    },
  },
})

Response structure


resp.domain_status.domain_id #=> String
resp.domain_status.domain_name #=> String
resp.domain_status.arn #=> String
resp.domain_status.created #=> true/false
resp.domain_status.deleted #=> true/false
resp.domain_status.endpoint #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.processing #=> true/false
resp.domain_status.upgrade_processing #=> true/false
resp.domain_status.elasticsearch_version #=> String
resp.domain_status.elasticsearch_cluster_config.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.instance_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.dedicated_master_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.warm_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.warm_count #=> Integer
resp.domain_status.ebs_options.ebs_enabled #=> true/false
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.snapshot_options.automated_snapshot_start_hour #=> Integer
resp.domain_status.vpc_options.vpc_id #=> String
resp.domain_status.vpc_options.subnet_ids #=> Array
resp.domain_status.vpc_options.subnet_ids[0] #=> String
resp.domain_status.vpc_options.availability_zones #=> Array
resp.domain_status.vpc_options.availability_zones[0] #=> String
resp.domain_status.vpc_options.security_group_ids #=> Array
resp.domain_status.vpc_options.security_group_ids[0] #=> String
resp.domain_status.cognito_options.enabled #=> true/false
resp.domain_status.cognito_options.user_pool_id #=> String
resp.domain_status.cognito_options.identity_pool_id #=> String
resp.domain_status.cognito_options.role_arn #=> String
resp.domain_status.encryption_at_rest_options.enabled #=> true/false
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> true/false
resp.domain_status.advanced_options #=> Hash
resp.domain_status.advanced_options["String"] #=> String
resp.domain_status.log_publishing_options #=> Hash
resp.domain_status.log_publishing_options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_status.log_publishing_options["LogType"].enabled #=> true/false
resp.domain_status.service_software_options.current_version #=> String
resp.domain_status.service_software_options.new_version #=> String
resp.domain_status.service_software_options.update_available #=> true/false
resp.domain_status.service_software_options.cancellable #=> true/false
resp.domain_status.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.domain_status.service_software_options.description #=> String
resp.domain_status.service_software_options.automated_update_date #=> Time
resp.domain_status.service_software_options.optional_deployment #=> true/false
resp.domain_status.domain_endpoint_options.enforce_https #=> true/false
resp.domain_status.domain_endpoint_options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> true/false
resp.domain_status.domain_endpoint_options.custom_endpoint #=> String
resp.domain_status.domain_endpoint_options.custom_endpoint_certificate_arn #=> String
resp.domain_status.advanced_security_options.enabled #=> true/false
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.idp. #=> String
resp.domain_status.advanced_security_options.saml_options.idp.entity_id #=> String
resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer

Options Hash (options):

  • :domain_name (required, String)

    The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a lowercase letter and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

  • :elasticsearch_version (String)

    String of format X.Y to specify version for the Elasticsearch domain eg. \"1.5\" or \"2.3\". For more information, see Creating Elasticsearch Domainstarget="_blank" in the Amazon Elasticsearch Service Developer Guide.

  • :elasticsearch_cluster_config (Types::ElasticsearchClusterConfig)

    Configuration options for an Elasticsearch domain. Specifies the instance type and number of instances in the domain cluster.

  • :ebs_options (Types::EBSOptions)

    Options to enable, disable and specify the type and size of EBS storage volumes.

  • :access_policies (String)

    IAM access policy as a JSON-formatted string.

  • :snapshot_options (Types::SnapshotOptions)

    Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours.

  • :vpc_options (Types::VPCOptions)

    Options to specify the subnets and security groups for VPC endpoint. For more information, see Creating a VPCtarget="_blank" in VPC Endpoints for Amazon Elasticsearch Service Domains

  • :cognito_options (Types::CognitoOptions)

    Options to specify the Cognito user and identity pools for Kibana authentication. For more information, see Amazon Cognito Authentication for Kibanatarget="_blank".

  • :encryption_at_rest_options (Types::EncryptionAtRestOptions)

    Specifies the Encryption At Rest Options.

  • :node_to_node_encryption_options (Types::NodeToNodeEncryptionOptions)

    Specifies the NodeToNodeEncryptionOptions.

  • :advanced_options (Hash<String,String>)

    Option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Optionstarget="_blank" for more information.

  • :log_publishing_options (Hash<String,Types::LogPublishingOption>)

    Map of LogType and LogPublishingOption, each containing options to publish a given type of Elasticsearch log.

  • :domain_endpoint_options (Types::DomainEndpointOptions)

    Options to specify configuration that will be applied to the domain endpoint.

  • :advanced_security_options (Types::AdvancedSecurityOptionsInput)

    Specifies advanced security options.

Returns:

#create_outbound_cross_cluster_search_connection(options = {}) ⇒ Types::CreateOutboundCrossClusterSearchConnectionResponse

Creates a new cross-cluster search connection from a source domain to a destination domain.

Examples:

Request syntax with placeholder values


resp = client.create_outbound_cross_cluster_search_connection({
  source_domain_info: { # required
    owner_id: "OwnerId",
    domain_name: "DomainName", # required
    region: "Region",
  },
  destination_domain_info: { # required
    owner_id: "OwnerId",
    domain_name: "DomainName", # required
    region: "Region",
  },
  connection_alias: "ConnectionAlias", # required
})

Response structure


resp.source_domain_info.owner_id #=> String
resp.source_domain_info.domain_name #=> String
resp.source_domain_info.region #=> String
resp.destination_domain_info.owner_id #=> String
resp.destination_domain_info.domain_name #=> String
resp.destination_domain_info.region #=> String
resp.connection_alias #=> String
resp.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "VALIDATING", "VALIDATION_FAILED", "PROVISIONING", "ACTIVE", "REJECTED", "DELETING", "DELETED"
resp.connection_status.message #=> String
resp.cross_cluster_search_connection_id #=> String

Options Hash (options):

  • :source_domain_info (required, Types::DomainInformation)

    Specifies the DomainInformation for the source Elasticsearch domain.

  • :destination_domain_info (required, Types::DomainInformation)

    Specifies the DomainInformation for the destination Elasticsearch domain.

  • :connection_alias (required, String)

    Specifies the connection alias that will be used by the customer for this connection.

Returns:

#create_package(options = {}) ⇒ Types::CreatePackageResponse

Create a package for use with Amazon ES domains.

Examples:

Request syntax with placeholder values


resp = client.create_package({
  package_name: "PackageName", # required
  package_type: "TXT-DICTIONARY", # required, accepts TXT-DICTIONARY
  package_description: "PackageDescription",
  package_source: { # required
    s3_bucket_name: "S3BucketName",
    s3_key: "S3Key",
  },
})

Response structure


resp.package_details.package_id #=> String
resp.package_details.package_name #=> String
resp.package_details.package_type #=> String, one of "TXT-DICTIONARY"
resp.package_details.package_description #=> String
resp.package_details.package_status #=> String, one of "COPYING", "COPY_FAILED", "VALIDATING", "VALIDATION_FAILED", "AVAILABLE", "DELETING", "DELETED", "DELETE_FAILED"
resp.package_details.created_at #=> Time
resp.package_details.last_updated_at #=> Time
resp.package_details.available_package_version #=> String
resp.package_details.error_details.error_type #=> String
resp.package_details.error_details.error_message #=> String

Options Hash (options):

  • :package_name (required, String)

    Unique identifier for the package.

  • :package_type (required, String)

    Type of package. Currently supports only TXT-DICTIONARY.

  • :package_description (String)

    Description of the package.

  • :package_source (required, Types::PackageSource)

    The customer S3 location PackageSource for importing the package.

Returns:

#delete_elasticsearch_domain(options = {}) ⇒ Types::DeleteElasticsearchDomainResponse

Permanently deletes the specified Elasticsearch domain and all of its data. Once a domain is deleted, it cannot be recovered.

Examples:

Request syntax with placeholder values


resp = client.delete_elasticsearch_domain({
  domain_name: "DomainName", # required
})

Response structure


resp.domain_status.domain_id #=> String
resp.domain_status.domain_name #=> String
resp.domain_status.arn #=> String
resp.domain_status.created #=> true/false
resp.domain_status.deleted #=> true/false
resp.domain_status.endpoint #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.processing #=> true/false
resp.domain_status.upgrade_processing #=> true/false
resp.domain_status.elasticsearch_version #=> String
resp.domain_status.elasticsearch_cluster_config.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.instance_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.dedicated_master_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.warm_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.warm_count #=> Integer
resp.domain_status.ebs_options.ebs_enabled #=> true/false
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.snapshot_options.automated_snapshot_start_hour #=> Integer
resp.domain_status.vpc_options.vpc_id #=> String
resp.domain_status.vpc_options.subnet_ids #=> Array
resp.domain_status.vpc_options.subnet_ids[0] #=> String
resp.domain_status.vpc_options.availability_zones #=> Array
resp.domain_status.vpc_options.availability_zones[0] #=> String
resp.domain_status.vpc_options.security_group_ids #=> Array
resp.domain_status.vpc_options.security_group_ids[0] #=> String
resp.domain_status.cognito_options.enabled #=> true/false
resp.domain_status.cognito_options.user_pool_id #=> String
resp.domain_status.cognito_options.identity_pool_id #=> String
resp.domain_status.cognito_options.role_arn #=> String
resp.domain_status.encryption_at_rest_options.enabled #=> true/false
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> true/false
resp.domain_status.advanced_options #=> Hash
resp.domain_status.advanced_options["String"] #=> String
resp.domain_status.log_publishing_options #=> Hash
resp.domain_status.log_publishing_options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_status.log_publishing_options["LogType"].enabled #=> true/false
resp.domain_status.service_software_options.current_version #=> String
resp.domain_status.service_software_options.new_version #=> String
resp.domain_status.service_software_options.update_available #=> true/false
resp.domain_status.service_software_options.cancellable #=> true/false
resp.domain_status.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.domain_status.service_software_options.description #=> String
resp.domain_status.service_software_options.automated_update_date #=> Time
resp.domain_status.service_software_options.optional_deployment #=> true/false
resp.domain_status.domain_endpoint_options.enforce_https #=> true/false
resp.domain_status.domain_endpoint_options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> true/false
resp.domain_status.domain_endpoint_options.custom_endpoint #=> String
resp.domain_status.domain_endpoint_options.custom_endpoint_certificate_arn #=> String
resp.domain_status.advanced_security_options.enabled #=> true/false
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.idp. #=> String
resp.domain_status.advanced_security_options.saml_options.idp.entity_id #=> String
resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer

Options Hash (options):

  • :domain_name (required, String)

    The name of the Elasticsearch domain that you want to permanently delete.

Returns:

#delete_elasticsearch_service_role(options = {}) ⇒ Struct

Deletes the service-linked role that Elasticsearch Service uses to manage and maintain VPC domains. Role deletion will fail if any existing VPC domains use the role. You must delete any such Elasticsearch domains before deleting the role. See Deleting Elasticsearch Service Role in VPC Endpoints for Amazon Elasticsearch Service Domains.

Examples:

Request syntax with placeholder values


resp = client.delete_elasticsearch_service_role()

Returns:

  • (Struct)

    Returns an empty response.

#delete_inbound_cross_cluster_search_connection(options = {}) ⇒ Types::DeleteInboundCrossClusterSearchConnectionResponse

Allows the destination domain owner to delete an existing inbound cross-cluster search connection.

Examples:

Request syntax with placeholder values


resp = client.delete_inbound_cross_cluster_search_connection({
  cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
})

Response structure


resp.cross_cluster_search_connection.source_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.source_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.source_domain_info.region #=> String
resp.cross_cluster_search_connection.destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.destination_domain_info.region #=> String
resp.cross_cluster_search_connection.cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connection.connection_status.message #=> String

Options Hash (options):

  • :cross_cluster_search_connection_id (required, String)

    The id of the inbound connection that you want to permanently delete.

Returns:

#delete_outbound_cross_cluster_search_connection(options = {}) ⇒ Types::DeleteOutboundCrossClusterSearchConnectionResponse

Allows the source domain owner to delete an existing outbound cross-cluster search connection.

Examples:

Request syntax with placeholder values


resp = client.delete_outbound_cross_cluster_search_connection({
  cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
})

Response structure


resp.cross_cluster_search_connection.source_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.source_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.source_domain_info.region #=> String
resp.cross_cluster_search_connection.destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.destination_domain_info.region #=> String
resp.cross_cluster_search_connection.cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connection.connection_alias #=> String
resp.cross_cluster_search_connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "VALIDATING", "VALIDATION_FAILED", "PROVISIONING", "ACTIVE", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connection.connection_status.message #=> String

Options Hash (options):

  • :cross_cluster_search_connection_id (required, String)

    The id of the outbound connection that you want to permanently delete.

Returns:

#delete_package(options = {}) ⇒ Types::DeletePackageResponse

Delete the package.

Examples:

Request syntax with placeholder values


resp = client.delete_package({
  package_id: "PackageID", # required
})

Response structure


resp.package_details.package_id #=> String
resp.package_details.package_name #=> String
resp.package_details.package_type #=> String, one of "TXT-DICTIONARY"
resp.package_details.package_description #=> String
resp.package_details.package_status #=> String, one of "COPYING", "COPY_FAILED", "VALIDATING", "VALIDATION_FAILED", "AVAILABLE", "DELETING", "DELETED", "DELETE_FAILED"
resp.package_details.created_at #=> Time
resp.package_details.last_updated_at #=> Time
resp.package_details.available_package_version #=> String
resp.package_details.error_details.error_type #=> String
resp.package_details.error_details.error_message #=> String

Options Hash (options):

  • :package_id (required, String)

    Internal ID of the package that you want to delete. Use DescribePackages to find this value.

Returns:

#describe_elasticsearch_domain(options = {}) ⇒ Types::DescribeElasticsearchDomainResponse

Returns domain configuration information about the specified Elasticsearch domain, including the domain ID, domain endpoint, and domain ARN.

Examples:

Request syntax with placeholder values


resp = client.describe_elasticsearch_domain({
  domain_name: "DomainName", # required
})

Response structure


resp.domain_status.domain_id #=> String
resp.domain_status.domain_name #=> String
resp.domain_status.arn #=> String
resp.domain_status.created #=> true/false
resp.domain_status.deleted #=> true/false
resp.domain_status.endpoint #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.processing #=> true/false
resp.domain_status.upgrade_processing #=> true/false
resp.domain_status.elasticsearch_version #=> String
resp.domain_status.elasticsearch_cluster_config.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.instance_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.dedicated_master_count #=> Integer
resp.domain_status.elasticsearch_cluster_config.warm_enabled #=> true/false
resp.domain_status.elasticsearch_cluster_config.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_status.elasticsearch_cluster_config.warm_count #=> Integer
resp.domain_status.ebs_options.ebs_enabled #=> true/false
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.snapshot_options.automated_snapshot_start_hour #=> Integer
resp.domain_status.vpc_options.vpc_id #=> String
resp.domain_status.vpc_options.subnet_ids #=> Array
resp.domain_status.vpc_options.subnet_ids[0] #=> String
resp.domain_status.vpc_options.availability_zones #=> Array
resp.domain_status.vpc_options.availability_zones[0] #=> String
resp.domain_status.vpc_options.security_group_ids #=> Array
resp.domain_status.vpc_options.security_group_ids[0] #=> String
resp.domain_status.cognito_options.enabled #=> true/false
resp.domain_status.cognito_options.user_pool_id #=> String
resp.domain_status.cognito_options.identity_pool_id #=> String
resp.domain_status.cognito_options.role_arn #=> String
resp.domain_status.encryption_at_rest_options.enabled #=> true/false
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> true/false
resp.domain_status.advanced_options #=> Hash
resp.domain_status.advanced_options["String"] #=> String
resp.domain_status.log_publishing_options #=> Hash
resp.domain_status.log_publishing_options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_status.log_publishing_options["LogType"].enabled #=> true/false
resp.domain_status.service_software_options.current_version #=> String
resp.domain_status.service_software_options.new_version #=> String
resp.domain_status.service_software_options.update_available #=> true/false
resp.domain_status.service_software_options.cancellable #=> true/false
resp.domain_status.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.domain_status.service_software_options.description #=> String
resp.domain_status.service_software_options.automated_update_date #=> Time
resp.domain_status.service_software_options.optional_deployment #=> true/false
resp.domain_status.domain_endpoint_options.enforce_https #=> true/false
resp.domain_status.domain_endpoint_options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> true/false
resp.domain_status.domain_endpoint_options.custom_endpoint #=> String
resp.domain_status.domain_endpoint_options.custom_endpoint_certificate_arn #=> String
resp.domain_status.advanced_security_options.enabled #=> true/false
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.enabled #=> true/false
resp.domain_status.advanced_security_options.saml_options.idp. #=> String
resp.domain_status.advanced_security_options.saml_options.idp.entity_id #=> String
resp.domain_status.advanced_security_options.saml_options.subject_key #=> String
resp.domain_status.advanced_security_options.saml_options.roles_key #=> String
resp.domain_status.advanced_security_options.saml_options.session_timeout_minutes #=> Integer

Options Hash (options):

  • :domain_name (required, String)

    The name of the Elasticsearch domain for which you want information.

Returns:

#describe_elasticsearch_domain_config(options = {}) ⇒ Types::DescribeElasticsearchDomainConfigResponse

Provides cluster configuration information about the specified Elasticsearch domain, such as the state, creation date, update version, and update date for cluster options.

Examples:

Request syntax with placeholder values


resp = client.describe_elasticsearch_domain_config({
  domain_name: "DomainName", # required
})

Response structure


resp.domain_config.elasticsearch_version.options #=> String
resp.domain_config.elasticsearch_version.status.creation_date #=> Time
resp.domain_config.elasticsearch_version.status.update_date #=> Time
resp.domain_config.elasticsearch_version.status.update_version #=> Integer
resp.domain_config.elasticsearch_version.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.elasticsearch_version.status.pending_deletion #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.instance_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.zone_awareness_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.warm_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.warm_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.status.creation_date #=> Time
resp.domain_config.elasticsearch_cluster_config.status.update_date #=> Time
resp.domain_config.elasticsearch_cluster_config.status.update_version #=> Integer
resp.domain_config.elasticsearch_cluster_config.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.elasticsearch_cluster_config.status.pending_deletion #=> true/false
resp.domain_config.ebs_options.options.ebs_enabled #=> true/false
resp.domain_config.ebs_options.options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_config.ebs_options.options.volume_size #=> Integer
resp.domain_config.ebs_options.options.iops #=> Integer
resp.domain_config.ebs_options.status.creation_date #=> Time
resp.domain_config.ebs_options.status.update_date #=> Time
resp.domain_config.ebs_options.status.update_version #=> Integer
resp.domain_config.ebs_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.ebs_options.status.pending_deletion #=> true/false
resp.domain_config.access_policies.options #=> String
resp.domain_config.access_policies.status.creation_date #=> Time
resp.domain_config.access_policies.status.update_date #=> Time
resp.domain_config.access_policies.status.update_version #=> Integer
resp.domain_config.access_policies.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.access_policies.status.pending_deletion #=> true/false
resp.domain_config.snapshot_options.options.automated_snapshot_start_hour #=> Integer
resp.domain_config.snapshot_options.status.creation_date #=> Time
resp.domain_config.snapshot_options.status.update_date #=> Time
resp.domain_config.snapshot_options.status.update_version #=> Integer
resp.domain_config.snapshot_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.snapshot_options.status.pending_deletion #=> true/false
resp.domain_config.vpc_options.options.vpc_id #=> String
resp.domain_config.vpc_options.options.subnet_ids #=> Array
resp.domain_config.vpc_options.options.subnet_ids[0] #=> String
resp.domain_config.vpc_options.options.availability_zones #=> Array
resp.domain_config.vpc_options.options.availability_zones[0] #=> String
resp.domain_config.vpc_options.options.security_group_ids #=> Array
resp.domain_config.vpc_options.options.security_group_ids[0] #=> String
resp.domain_config.vpc_options.status.creation_date #=> Time
resp.domain_config.vpc_options.status.update_date #=> Time
resp.domain_config.vpc_options.status.update_version #=> Integer
resp.domain_config.vpc_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.vpc_options.status.pending_deletion #=> true/false
resp.domain_config.cognito_options.options.enabled #=> true/false
resp.domain_config.cognito_options.options.user_pool_id #=> String
resp.domain_config.cognito_options.options.identity_pool_id #=> String
resp.domain_config.cognito_options.options.role_arn #=> String
resp.domain_config.cognito_options.status.creation_date #=> Time
resp.domain_config.cognito_options.status.update_date #=> Time
resp.domain_config.cognito_options.status.update_version #=> Integer
resp.domain_config.cognito_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.cognito_options.status.pending_deletion #=> true/false
resp.domain_config.encryption_at_rest_options.options.enabled #=> true/false
resp.domain_config.encryption_at_rest_options.options.kms_key_id #=> String
resp.domain_config.encryption_at_rest_options.status.creation_date #=> Time
resp.domain_config.encryption_at_rest_options.status.update_date #=> Time
resp.domain_config.encryption_at_rest_options.status.update_version #=> Integer
resp.domain_config.encryption_at_rest_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.encryption_at_rest_options.status.pending_deletion #=> true/false
resp.domain_config.node_to_node_encryption_options.options.enabled #=> true/false
resp.domain_config.node_to_node_encryption_options.status.creation_date #=> Time
resp.domain_config.node_to_node_encryption_options.status.update_date #=> Time
resp.domain_config.node_to_node_encryption_options.status.update_version #=> Integer
resp.domain_config.node_to_node_encryption_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.node_to_node_encryption_options.status.pending_deletion #=> true/false
resp.domain_config.advanced_options.options #=> Hash
resp.domain_config.advanced_options.options["String"] #=> String
resp.domain_config.advanced_options.status.creation_date #=> Time
resp.domain_config.advanced_options.status.update_date #=> Time
resp.domain_config.advanced_options.status.update_version #=> Integer
resp.domain_config.advanced_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.advanced_options.status.pending_deletion #=> true/false
resp.domain_config.log_publishing_options.options #=> Hash
resp.domain_config.log_publishing_options.options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_config.log_publishing_options.options["LogType"].enabled #=> true/false
resp.domain_config.log_publishing_options.status.creation_date #=> Time
resp.domain_config.log_publishing_options.status.update_date #=> Time
resp.domain_config.log_publishing_options.status.update_version #=> Integer
resp.domain_config.log_publishing_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.log_publishing_options.status.pending_deletion #=> true/false
resp.domain_config.domain_endpoint_options.options.enforce_https #=> true/false
resp.domain_config.domain_endpoint_options.options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_config.domain_endpoint_options.options.custom_endpoint_enabled #=> true/false
resp.domain_config.domain_endpoint_options.options.custom_endpoint #=> String
resp.domain_config.domain_endpoint_options.options.custom_endpoint_certificate_arn #=> String
resp.domain_config.domain_endpoint_options.status.creation_date #=> Time
resp.domain_config.domain_endpoint_options.status.update_date #=> Time
resp.domain_config.domain_endpoint_options.status.update_version #=> Integer
resp.domain_config.domain_endpoint_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.domain_endpoint_options.status.pending_deletion #=> true/false
resp.domain_config.advanced_security_options.options.enabled #=> true/false
resp.domain_config.advanced_security_options.options.internal_user_database_enabled #=> true/false
resp.domain_config.advanced_security_options.options.saml_options.enabled #=> true/false
resp.domain_config.advanced_security_options.options.saml_options.idp. #=> String
resp.domain_config.advanced_security_options.options.saml_options.idp.entity_id #=> String
resp.domain_config.advanced_security_options.options.saml_options.subject_key #=> String
resp.domain_config.advanced_security_options.options.saml_options.roles_key #=> String
resp.domain_config.advanced_security_options.options.saml_options.session_timeout_minutes #=> Integer
resp.domain_config.advanced_security_options.status.creation_date #=> Time
resp.domain_config.advanced_security_options.status.update_date #=> Time
resp.domain_config.advanced_security_options.status.update_version #=> Integer
resp.domain_config.advanced_security_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.advanced_security_options.status.pending_deletion #=> true/false

Options Hash (options):

  • :domain_name (required, String)

    The Elasticsearch domain that you want to get information about.

Returns:

#describe_elasticsearch_domains(options = {}) ⇒ Types::DescribeElasticsearchDomainsResponse

Returns domain configuration information about the specified Elasticsearch domains, including the domain ID, domain endpoint, and domain ARN.

Examples:

Request syntax with placeholder values


resp = client.describe_elasticsearch_domains({
  domain_names: ["DomainName"], # required
})

Response structure


resp.domain_status_list #=> Array
resp.domain_status_list[0].domain_id #=> String
resp.domain_status_list[0].domain_name #=> String
resp.domain_status_list[0].arn #=> String
resp.domain_status_list[0].created #=> true/false
resp.domain_status_list[0].deleted #=> true/false
resp.domain_status_list[0].endpoint #=> String
resp.domain_status_list[0].endpoints #=> Hash
resp.domain_status_list[0].endpoints["String"] #=> String
resp.domain_status_list[0].processing #=> true/false
resp.domain_status_list[0].upgrade_processing #=> true/false
resp.domain_status_list[0].elasticsearch_version #=> String
resp.domain_status_list[0].elasticsearch_cluster_config.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status_list[0].elasticsearch_cluster_config.instance_count #=> Integer
resp.domain_status_list[0].elasticsearch_cluster_config.dedicated_master_enabled #=> true/false
resp.domain_status_list[0].elasticsearch_cluster_config.zone_awareness_enabled #=> true/false
resp.domain_status_list[0].elasticsearch_cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status_list[0].elasticsearch_cluster_config.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_status_list[0].elasticsearch_cluster_config.dedicated_master_count #=> Integer
resp.domain_status_list[0].elasticsearch_cluster_config.warm_enabled #=> true/false
resp.domain_status_list[0].elasticsearch_cluster_config.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_status_list[0].elasticsearch_cluster_config.warm_count #=> Integer
resp.domain_status_list[0].ebs_options.ebs_enabled #=> true/false
resp.domain_status_list[0].ebs_options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_status_list[0].ebs_options.volume_size #=> Integer
resp.domain_status_list[0].ebs_options.iops #=> Integer
resp.domain_status_list[0].access_policies #=> String
resp.domain_status_list[0].snapshot_options.automated_snapshot_start_hour #=> Integer
resp.domain_status_list[0].vpc_options.vpc_id #=> String
resp.domain_status_list[0].vpc_options.subnet_ids #=> Array
resp.domain_status_list[0].vpc_options.subnet_ids[0] #=> String
resp.domain_status_list[0].vpc_options.availability_zones #=> Array
resp.domain_status_list[0].vpc_options.availability_zones[0] #=> String
resp.domain_status_list[0].vpc_options.security_group_ids #=> Array
resp.domain_status_list[0].vpc_options.security_group_ids[0] #=> String
resp.domain_status_list[0].cognito_options.enabled #=> true/false
resp.domain_status_list[0].cognito_options.user_pool_id #=> String
resp.domain_status_list[0].cognito_options.identity_pool_id #=> String
resp.domain_status_list[0].cognito_options.role_arn #=> String
resp.domain_status_list[0].encryption_at_rest_options.enabled #=> true/false
resp.domain_status_list[0].encryption_at_rest_options.kms_key_id #=> String
resp.domain_status_list[0].node_to_node_encryption_options.enabled #=> true/false
resp.domain_status_list[0].advanced_options #=> Hash
resp.domain_status_list[0].advanced_options["String"] #=> String
resp.domain_status_list[0].log_publishing_options #=> Hash
resp.domain_status_list[0].log_publishing_options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_status_list[0].log_publishing_options["LogType"].enabled #=> true/false
resp.domain_status_list[0].service_software_options.current_version #=> String
resp.domain_status_list[0].service_software_options.new_version #=> String
resp.domain_status_list[0].service_software_options.update_available #=> true/false
resp.domain_status_list[0].service_software_options.cancellable #=> true/false
resp.domain_status_list[0].service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.domain_status_list[0].service_software_options.description #=> String
resp.domain_status_list[0].service_software_options.automated_update_date #=> Time
resp.domain_status_list[0].service_software_options.optional_deployment #=> true/false
resp.domain_status_list[0].domain_endpoint_options.enforce_https #=> true/false
resp.domain_status_list[0].domain_endpoint_options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_status_list[0].domain_endpoint_options.custom_endpoint_enabled #=> true/false
resp.domain_status_list[0].domain_endpoint_options.custom_endpoint #=> String
resp.domain_status_list[0].domain_endpoint_options.custom_endpoint_certificate_arn #=> String
resp.domain_status_list[0].advanced_security_options.enabled #=> true/false
resp.domain_status_list[0].advanced_security_options.internal_user_database_enabled #=> true/false
resp.domain_status_list[0].advanced_security_options.saml_options.enabled #=> true/false
resp.domain_status_list[0].advanced_security_options.saml_options.idp. #=> String
resp.domain_status_list[0].advanced_security_options.saml_options.idp.entity_id #=> String
resp.domain_status_list[0].advanced_security_options.saml_options.subject_key #=> String
resp.domain_status_list[0].advanced_security_options.saml_options.roles_key #=> String
resp.domain_status_list[0].advanced_security_options.saml_options.session_timeout_minutes #=> Integer

Options Hash (options):

  • :domain_names (required, Array<String>)

    The Elasticsearch domains for which you want information.

Returns:

#describe_elasticsearch_instance_type_limits(options = {}) ⇒ Types::DescribeElasticsearchInstanceTypeLimitsResponse

Describe Elasticsearch Limits for a given InstanceType and ElasticsearchVersion. When modifying existing Domain, specify the DomainName to know what Limits are supported for modifying.

Examples:

Request syntax with placeholder values


resp = client.describe_elasticsearch_instance_type_limits({
  domain_name: "DomainName",
  instance_type: "m3.medium.elasticsearch", # required, accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch
  elasticsearch_version: "ElasticsearchVersionString", # required
})

Response structure


resp.limits_by_role #=> Hash
resp.limits_by_role["InstanceRole"].storage_types #=> Array
resp.limits_by_role["InstanceRole"].storage_types[0].storage_type_name #=> String
resp.limits_by_role["InstanceRole"].storage_types[0].storage_sub_type_name #=> String
resp.limits_by_role["InstanceRole"].storage_types[0].storage_type_limits #=> Array
resp.limits_by_role["InstanceRole"].storage_types[0].storage_type_limits[0].limit_name #=> String
resp.limits_by_role["InstanceRole"].storage_types[0].storage_type_limits[0].limit_values #=> Array
resp.limits_by_role["InstanceRole"].storage_types[0].storage_type_limits[0].limit_values[0] #=> String
resp.limits_by_role["InstanceRole"].instance_limits.instance_count_limits.minimum_instance_count #=> Integer
resp.limits_by_role["InstanceRole"].instance_limits.instance_count_limits.maximum_instance_count #=> Integer
resp.limits_by_role["InstanceRole"].additional_limits #=> Array
resp.limits_by_role["InstanceRole"].additional_limits[0].limit_name #=> String
resp.limits_by_role["InstanceRole"].additional_limits[0].limit_values #=> Array
resp.limits_by_role["InstanceRole"].additional_limits[0].limit_values[0] #=> String

Options Hash (options):

  • :domain_name (String)

    DomainName represents the name of the Domain that we are trying to modify. This should be present only if we are querying for Elasticsearch Limits for existing domain.

  • :instance_type (required, String)

    The instance type for an Elasticsearch cluster for which Elasticsearch Limits are needed.

  • :elasticsearch_version (required, String)

    Version of Elasticsearch for which Limits are needed.

Returns:

#describe_inbound_cross_cluster_search_connections(options = {}) ⇒ Types::DescribeInboundCrossClusterSearchConnectionsResponse

Lists all the inbound cross-cluster search connections for a destination domain.

Examples:

Request syntax with placeholder values


resp = client.describe_inbound_cross_cluster_search_connections({
  filters: [
    {
      name: "NonEmptyString",
      values: ["NonEmptyString"],
    },
  ],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.cross_cluster_search_connections #=> Array
resp.cross_cluster_search_connections[0].source_domain_info.owner_id #=> String
resp.cross_cluster_search_connections[0].source_domain_info.domain_name #=> String
resp.cross_cluster_search_connections[0].source_domain_info.region #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.region #=> String
resp.cross_cluster_search_connections[0].cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connections[0].connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connections[0].connection_status.message #=> String
resp.next_token #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    A list of filters used to match properties for inbound cross-cluster search connection. Available Filter names for this operation are: * cross-cluster-search-connection-id * source-domain-info.domain-name * source-domain-info.owner-id * source-domain-info.region * destination-domain-info.domain-name

  • :max_results (Integer)

    Set this value to limit the number of results returned. If not specified, defaults to 100.

  • :next_token (String)

    NextToken is sent in case the earlier API call results contain the NextToken. It is used for pagination.

Returns:

#describe_outbound_cross_cluster_search_connections(options = {}) ⇒ Types::DescribeOutboundCrossClusterSearchConnectionsResponse

Lists all the outbound cross-cluster search connections for a source domain.

Examples:

Request syntax with placeholder values


resp = client.describe_outbound_cross_cluster_search_connections({
  filters: [
    {
      name: "NonEmptyString",
      values: ["NonEmptyString"],
    },
  ],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.cross_cluster_search_connections #=> Array
resp.cross_cluster_search_connections[0].source_domain_info.owner_id #=> String
resp.cross_cluster_search_connections[0].source_domain_info.domain_name #=> String
resp.cross_cluster_search_connections[0].source_domain_info.region #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connections[0].destination_domain_info.region #=> String
resp.cross_cluster_search_connections[0].cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connections[0].connection_alias #=> String
resp.cross_cluster_search_connections[0].connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "VALIDATING", "VALIDATION_FAILED", "PROVISIONING", "ACTIVE", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connections[0].connection_status.message #=> String
resp.next_token #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    A list of filters used to match properties for outbound cross-cluster search connection. Available Filter names for this operation are: * cross-cluster-search-connection-id * destination-domain-info.domain-name * destination-domain-info.owner-id * destination-domain-info.region * source-domain-info.domain-name

  • :max_results (Integer)

    Set this value to limit the number of results returned. If not specified, defaults to 100.

  • :next_token (String)

    NextToken is sent in case the earlier API call results contain the NextToken. It is used for pagination.

Returns:

#describe_packages(options = {}) ⇒ Types::DescribePackagesResponse

Describes all packages available to Amazon ES. Includes options for filtering, limiting the number of results, and pagination.

Examples:

Request syntax with placeholder values


resp = client.describe_packages({
  filters: [
    {
      name: "PackageID", # accepts PackageID, PackageName, PackageStatus
      value: ["DescribePackagesFilterValue"],
    },
  ],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.package_details_list #=> Array
resp.package_details_list[0].package_id #=> String
resp.package_details_list[0].package_name #=> String
resp.package_details_list[0].package_type #=> String, one of "TXT-DICTIONARY"
resp.package_details_list[0].package_description #=> String
resp.package_details_list[0].package_status #=> String, one of "COPYING", "COPY_FAILED", "VALIDATING", "VALIDATION_FAILED", "AVAILABLE", "DELETING", "DELETED", "DELETE_FAILED"
resp.package_details_list[0].created_at #=> Time
resp.package_details_list[0].last_updated_at #=> Time
resp.package_details_list[0].available_package_version #=> String
resp.package_details_list[0].error_details.error_type #=> String
resp.package_details_list[0].error_details.error_message #=> String
resp.next_token #=> String

Options Hash (options):

  • :filters (Array<Types::DescribePackagesFilter>)

    Only returns packages that match the DescribePackagesFilterList values.

  • :max_results (Integer)

    Limits results to a maximum number of packages.

  • :next_token (String)

    Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, returns results for the next page.

Returns:

#describe_reserved_elasticsearch_instance_offerings(options = {}) ⇒ Types::DescribeReservedElasticsearchInstanceOfferingsResponse

Lists available reserved Elasticsearch instance offerings.

Examples:

Request syntax with placeholder values


resp = client.describe_reserved_elasticsearch_instance_offerings({
  reserved_elasticsearch_instance_offering_id: "GUID",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.reserved_elasticsearch_instance_offerings #=> Array
resp.reserved_elasticsearch_instance_offerings[0].reserved_elasticsearch_instance_offering_id #=> String
resp.reserved_elasticsearch_instance_offerings[0].elasticsearch_instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.reserved_elasticsearch_instance_offerings[0].duration #=> Integer
resp.reserved_elasticsearch_instance_offerings[0].fixed_price #=> Float
resp.reserved_elasticsearch_instance_offerings[0].usage_price #=> Float
resp.reserved_elasticsearch_instance_offerings[0].currency_code #=> String
resp.reserved_elasticsearch_instance_offerings[0].payment_option #=> String, one of "ALL_UPFRONT", "PARTIAL_UPFRONT", "NO_UPFRONT"
resp.reserved_elasticsearch_instance_offerings[0].recurring_charges #=> Array
resp.reserved_elasticsearch_instance_offerings[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_elasticsearch_instance_offerings[0].recurring_charges[0].recurring_charge_frequency #=> String

Options Hash (options):

  • :reserved_elasticsearch_instance_offering_id (String)

    The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.

  • :max_results (Integer)

    Set this value to limit the number of results returned. If not specified, defaults to 100.

  • :next_token (String)

    NextToken should be sent in case if earlier API call produced result containing NextToken. It is used for pagination.

Returns:

#describe_reserved_elasticsearch_instances(options = {}) ⇒ Types::DescribeReservedElasticsearchInstancesResponse

Returns information about reserved Elasticsearch instances for this account.

Examples:

Request syntax with placeholder values


resp = client.describe_reserved_elasticsearch_instances({
  reserved_elasticsearch_instance_id: "GUID",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.reserved_elasticsearch_instances #=> Array
resp.reserved_elasticsearch_instances[0].reservation_name #=> String
resp.reserved_elasticsearch_instances[0].reserved_elasticsearch_instance_id #=> String
resp.reserved_elasticsearch_instances[0].reserved_elasticsearch_instance_offering_id #=> String
resp.reserved_elasticsearch_instances[0].elasticsearch_instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.reserved_elasticsearch_instances[0].start_time #=> Time
resp.reserved_elasticsearch_instances[0].duration #=> Integer
resp.reserved_elasticsearch_instances[0].fixed_price #=> Float
resp.reserved_elasticsearch_instances[0].usage_price #=> Float
resp.reserved_elasticsearch_instances[0].currency_code #=> String
resp.reserved_elasticsearch_instances[0].elasticsearch_instance_count #=> Integer
resp.reserved_elasticsearch_instances[0].state #=> String
resp.reserved_elasticsearch_instances[0].payment_option #=> String, one of "ALL_UPFRONT", "PARTIAL_UPFRONT", "NO_UPFRONT"
resp.reserved_elasticsearch_instances[0].recurring_charges #=> Array
resp.reserved_elasticsearch_instances[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_elasticsearch_instances[0].recurring_charges[0].recurring_charge_frequency #=> String

Options Hash (options):

  • :reserved_elasticsearch_instance_id (String)

    The reserved instance identifier filter value. Use this parameter to show only the reservation that matches the specified reserved Elasticsearch instance ID.

  • :max_results (Integer)

    Set this value to limit the number of results returned. If not specified, defaults to 100.

  • :next_token (String)

    NextToken should be sent in case if earlier API call produced result containing NextToken. It is used for pagination.

Returns:

#dissociate_package(options = {}) ⇒ Types::DissociatePackageResponse

Dissociates a package from the Amazon ES domain.

Examples:

Request syntax with placeholder values


resp = client.dissociate_package({
  package_id: "PackageID", # required
  domain_name: "DomainName", # required
})

Response structure


resp.domain_package_details.package_id #=> String
resp.domain_package_details.package_name #=> String
resp.domain_package_details.package_type #=> String, one of "TXT-DICTIONARY"
resp.domain_package_details.last_updated #=> Time
resp.domain_package_details.domain_name #=> String
resp.domain_package_details.domain_package_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ACTIVE", "DISSOCIATING", "DISSOCIATION_FAILED"
resp.domain_package_details.package_version #=> String
resp.domain_package_details.reference_path #=> String
resp.domain_package_details.error_details.error_type #=> String
resp.domain_package_details.error_details.error_message #=> String

Options Hash (options):

  • :package_id (required, String)

    Internal ID of the package that you want to associate with a domain. Use DescribePackages to find this value.

  • :domain_name (required, String)

    Name of the domain that you want to associate the package with.

Returns:

#get_compatible_elasticsearch_versions(options = {}) ⇒ Types::GetCompatibleElasticsearchVersionsResponse

Returns a list of upgrade compatible Elastisearch versions. You can optionally pass a DomainName to get all upgrade compatible Elasticsearch versions for that specific domain.

Examples:

Request syntax with placeholder values


resp = client.get_compatible_elasticsearch_versions({
  domain_name: "DomainName",
})

Response structure


resp.compatible_elasticsearch_versions #=> Array
resp.compatible_elasticsearch_versions[0].source_version #=> String
resp.compatible_elasticsearch_versions[0].target_versions #=> Array
resp.compatible_elasticsearch_versions[0].target_versions[0] #=> String

Options Hash (options):

  • :domain_name (String)

    The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

Returns:

#get_package_version_history(options = {}) ⇒ Types::GetPackageVersionHistoryResponse

Returns a list of versions of the package, along with their creation time and commit message.

Examples:

Request syntax with placeholder values


resp = client.get_package_version_history({
  package_id: "PackageID", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.package_id #=> String
resp.package_version_history_list #=> Array
resp.package_version_history_list[0].package_version #=> String
resp.package_version_history_list[0].commit_message #=> String
resp.package_version_history_list[0].created_at #=> Time
resp.next_token #=> String

Options Hash (options):

  • :package_id (required, String)

    Returns an audit history of versions of the package.

  • :max_results (Integer)

    Limits results to a maximum number of versions.

  • :next_token (String)

    Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, returns results for the next page.

Returns:

#get_upgrade_history(options = {}) ⇒ Types::GetUpgradeHistoryResponse

Retrieves the complete history of the last 10 upgrades that were performed on the domain.

Examples:

Request syntax with placeholder values


resp = client.get_upgrade_history({
  domain_name: "DomainName", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.upgrade_histories #=> Array
resp.upgrade_histories[0].upgrade_name #=> String
resp.upgrade_histories[0].start_timestamp #=> Time
resp.upgrade_histories[0].upgrade_status #=> String, one of "IN_PROGRESS", "SUCCEEDED", "SUCCEEDED_WITH_ISSUES", "FAILED"
resp.upgrade_histories[0].steps_list #=> Array
resp.upgrade_histories[0].steps_list[0].upgrade_step #=> String, one of "PRE_UPGRADE_CHECK", "SNAPSHOT", "UPGRADE"
resp.upgrade_histories[0].steps_list[0].upgrade_step_status #=> String, one of "IN_PROGRESS", "SUCCEEDED", "SUCCEEDED_WITH_ISSUES", "FAILED"
resp.upgrade_histories[0].steps_list[0].issues #=> Array
resp.upgrade_histories[0].steps_list[0].issues[0] #=> String
resp.upgrade_histories[0].steps_list[0].progress_percent #=> Float
resp.next_token #=> String

Options Hash (options):

  • :domain_name (required, String)

    The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

  • :max_results (Integer)

    Set this value to limit the number of results returned.

  • :next_token (String)

    Paginated APIs accepts NextToken input to returns next page results and provides a NextToken output in the response which can be used by the client to retrieve more results.

Returns:

#get_upgrade_status(options = {}) ⇒ Types::GetUpgradeStatusResponse

Retrieves the latest status of the last upgrade or upgrade eligibility check that was performed on the domain.

Examples:

Request syntax with placeholder values


resp = client.get_upgrade_status({
  domain_name: "DomainName", # required
})

Response structure


resp.upgrade_step #=> String, one of "PRE_UPGRADE_CHECK", "SNAPSHOT", "UPGRADE"
resp.step_status #=> String, one of "IN_PROGRESS", "SUCCEEDED", "SUCCEEDED_WITH_ISSUES", "FAILED"
resp.upgrade_name #=> String

Options Hash (options):

  • :domain_name (required, String)

    The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

Returns:

#list_domain_names(options = {}) ⇒ Types::ListDomainNamesResponse

Returns the name of all Elasticsearch domains owned by the current user's account.

Examples:

Request syntax with placeholder values


resp = client.list_domain_names()

Response structure


resp.domain_names #=> Array
resp.domain_names[0].domain_name #=> String

Returns:

#list_domains_for_package(options = {}) ⇒ Types::ListDomainsForPackageResponse

Lists all Amazon ES domains associated with the package.

Examples:

Request syntax with placeholder values


resp = client.list_domains_for_package({
  package_id: "PackageID", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.domain_package_details_list #=> Array
resp.domain_package_details_list[0].package_id #=> String
resp.domain_package_details_list[0].package_name #=> String
resp.domain_package_details_list[0].package_type #=> String, one of "TXT-DICTIONARY"
resp.domain_package_details_list[0].last_updated #=> Time
resp.domain_package_details_list[0].domain_name #=> String
resp.domain_package_details_list[0].domain_package_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ACTIVE", "DISSOCIATING", "DISSOCIATION_FAILED"
resp.domain_package_details_list[0].package_version #=> String
resp.domain_package_details_list[0].reference_path #=> String
resp.domain_package_details_list[0].error_details.error_type #=> String
resp.domain_package_details_list[0].error_details.error_message #=> String
resp.next_token #=> String

Options Hash (options):

  • :package_id (required, String)

    The package for which to list domains.

  • :max_results (Integer)

    Limits results to a maximum number of domains.

  • :next_token (String)

    Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, returns results for the next page.

Returns:

#list_elasticsearch_instance_types(options = {}) ⇒ Types::ListElasticsearchInstanceTypesResponse

List all Elasticsearch instance types that are supported for given ElasticsearchVersion

Examples:

Request syntax with placeholder values


resp = client.list_elasticsearch_instance_types({
  elasticsearch_version: "ElasticsearchVersionString", # required
  domain_name: "DomainName",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.elasticsearch_instance_types #=> Array
resp.elasticsearch_instance_types[0] #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.next_token #=> String

Options Hash (options):

  • :elasticsearch_version (required, String)

    Version of Elasticsearch for which list of supported elasticsearch instance types are needed.

  • :domain_name (String)

    DomainName represents the name of the Domain that we are trying to modify. This should be present only if we are querying for list of available Elasticsearch instance types when modifying existing domain.

  • :max_results (Integer)

    Set this value to limit the number of results returned. Value provided must be greater than 30 else it wont be honored.

  • :next_token (String)

    NextToken should be sent in case if earlier API call produced result containing NextToken. It is used for pagination.

Returns:

#list_elasticsearch_versions(options = {}) ⇒ Types::ListElasticsearchVersionsResponse

List all supported Elasticsearch versions

Examples:

Request syntax with placeholder values


resp = client.list_elasticsearch_versions({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.elasticsearch_versions #=> Array
resp.elasticsearch_versions[0] #=> String
resp.next_token #=> String

Options Hash (options):

  • :max_results (Integer)

    Set this value to limit the number of results returned. Value provided must be greater than 10 else it wont be honored.

  • :next_token (String)

    Paginated APIs accepts NextToken input to returns next page results and provides a NextToken output in the response which can be used by the client to retrieve more results.

Returns:

#list_packages_for_domain(options = {}) ⇒ Types::ListPackagesForDomainResponse

Lists all packages associated with the Amazon ES domain.

Examples:

Request syntax with placeholder values


resp = client.list_packages_for_domain({
  domain_name: "DomainName", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.domain_package_details_list #=> Array
resp.domain_package_details_list[0].package_id #=> String
resp.domain_package_details_list[0].package_name #=> String
resp.domain_package_details_list[0].package_type #=> String, one of "TXT-DICTIONARY"
resp.domain_package_details_list[0].last_updated #=> Time
resp.domain_package_details_list[0].domain_name #=> String
resp.domain_package_details_list[0].domain_package_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ACTIVE", "DISSOCIATING", "DISSOCIATION_FAILED"
resp.domain_package_details_list[0].package_version #=> String
resp.domain_package_details_list[0].reference_path #=> String
resp.domain_package_details_list[0].error_details.error_type #=> String
resp.domain_package_details_list[0].error_details.error_message #=> String
resp.next_token #=> String

Options Hash (options):

  • :domain_name (required, String)

    The name of the domain for which you want to list associated packages.

  • :max_results (Integer)

    Limits results to a maximum number of packages.

  • :next_token (String)

    Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, returns results for the next page.

Returns:

#list_tags(options = {}) ⇒ Types::ListTagsResponse

Returns all tags for the given Elasticsearch domain.

Examples:

Request syntax with placeholder values


resp = client.list_tags({
  arn: "ARN", # required
})

Response structure


resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Options Hash (options):

  • :arn (required, String)

    Specify the ARN for the Elasticsearch domain to which the tags are attached that you want to view.

Returns:

#purchase_reserved_elasticsearch_instance_offering(options = {}) ⇒ Types::PurchaseReservedElasticsearchInstanceOfferingResponse

Allows you to purchase reserved Elasticsearch instances.

Examples:

Request syntax with placeholder values


resp = client.purchase_reserved_elasticsearch_instance_offering({
  reserved_elasticsearch_instance_offering_id: "GUID", # required
  reservation_name: "ReservationToken", # required
  instance_count: 1,
})

Response structure


resp.reserved_elasticsearch_instance_id #=> String
resp.reservation_name #=> String

Options Hash (options):

  • :reserved_elasticsearch_instance_offering_id (required, String)

    The ID of the reserved Elasticsearch instance offering to purchase.

  • :reservation_name (required, String)

    A customer-specified identifier to track this reservation.

  • :instance_count (Integer)

    The number of Elasticsearch instances to reserve.

Returns:

#reject_inbound_cross_cluster_search_connection(options = {}) ⇒ Types::RejectInboundCrossClusterSearchConnectionResponse

Allows the destination domain owner to reject an inbound cross-cluster search connection request.

Examples:

Request syntax with placeholder values


resp = client.reject_inbound_cross_cluster_search_connection({
  cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
})

Response structure


resp.cross_cluster_search_connection.source_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.source_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.source_domain_info.region #=> String
resp.cross_cluster_search_connection.destination_domain_info.owner_id #=> String
resp.cross_cluster_search_connection.destination_domain_info.domain_name #=> String
resp.cross_cluster_search_connection.destination_domain_info.region #=> String
resp.cross_cluster_search_connection.cross_cluster_search_connection_id #=> String
resp.cross_cluster_search_connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.cross_cluster_search_connection.connection_status.message #=> String

Options Hash (options):

  • :cross_cluster_search_connection_id (required, String)

    The id of the inbound connection that you want to reject.

Returns:

#remove_tags(options = {}) ⇒ Struct

Removes the specified set of tags from the specified Elasticsearch domain.

Examples:

Request syntax with placeholder values


resp = client.remove_tags({
  arn: "ARN", # required
  tag_keys: ["String"], # required
})

Options Hash (options):

  • :arn (required, String)

    Specifies the ARN for the Elasticsearch domain from which you want to delete the specified tags.

  • :tag_keys (required, Array<String>)

    Specifies the TagKey list which you want to remove from the Elasticsearch domain.

Returns:

  • (Struct)

    Returns an empty response.

#start_elasticsearch_service_software_update(options = {}) ⇒ Types::StartElasticsearchServiceSoftwareUpdateResponse

Schedules a service software update for an Amazon ES domain.

Examples:

Request syntax with placeholder values


resp = client.start_elasticsearch_service_software_update({
  domain_name: "DomainName", # required
})

Response structure


resp.service_software_options.current_version #=> String
resp.service_software_options.new_version #=> String
resp.service_software_options.update_available #=> true/false
resp.service_software_options.cancellable #=> true/false
resp.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.service_software_options.description #=> String
resp.service_software_options.automated_update_date #=> Time
resp.service_software_options.optional_deployment #=> true/false

Options Hash (options):

  • :domain_name (required, String)

    The name of the domain that you want to update to the latest service software.

Returns:

#update_elasticsearch_domain_config(options = {}) ⇒ Types::UpdateElasticsearchDomainConfigResponse

Modifies the cluster configuration of the specified Elasticsearch domain, setting as setting the instance type and the number of instances.

Examples:

Request syntax with placeholder values


resp = client.update_elasticsearch_domain_config({
  domain_name: "DomainName", # required
  elasticsearch_cluster_config: {
    instance_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch
    instance_count: 1,
    dedicated_master_enabled: false,
    zone_awareness_enabled: false,
    zone_awareness_config: {
      availability_zone_count: 1,
    },
    dedicated_master_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, m5.large.elasticsearch, m5.xlarge.elasticsearch, m5.2xlarge.elasticsearch, m5.4xlarge.elasticsearch, m5.12xlarge.elasticsearch, r5.large.elasticsearch, r5.xlarge.elasticsearch, r5.2xlarge.elasticsearch, r5.4xlarge.elasticsearch, r5.12xlarge.elasticsearch, c5.large.elasticsearch, c5.xlarge.elasticsearch, c5.2xlarge.elasticsearch, c5.4xlarge.elasticsearch, c5.9xlarge.elasticsearch, c5.18xlarge.elasticsearch, ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch
    dedicated_master_count: 1,
    warm_enabled: false,
    warm_type: "ultrawarm1.medium.elasticsearch", # accepts ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch
    warm_count: 1,
  },
  ebs_options: {
    ebs_enabled: false,
    volume_type: "standard", # accepts standard, gp2, io1
    volume_size: 1,
    iops: 1,
  },
  snapshot_options: {
    automated_snapshot_start_hour: 1,
  },
  vpc_options: {
    subnet_ids: ["String"],
    security_group_ids: ["String"],
  },
  cognito_options: {
    enabled: false,
    user_pool_id: "UserPoolId",
    identity_pool_id: "IdentityPoolId",
    role_arn: "RoleArn",
  },
  advanced_options: {
    "String" => "String",
  },
  access_policies: "PolicyDocument",
  log_publishing_options: {
    "INDEX_SLOW_LOGS" => {
      cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn",
      enabled: false,
    },
  },
  domain_endpoint_options: {
    enforce_https: false,
    tls_security_policy: "Policy-Min-TLS-1-0-2019-07", # accepts Policy-Min-TLS-1-0-2019-07, Policy-Min-TLS-1-2-2019-07
    custom_endpoint_enabled: false,
    custom_endpoint: "DomainNameFqdn",
    custom_endpoint_certificate_arn: "ARN",
  },
  advanced_security_options: {
    enabled: false,
    internal_user_database_enabled: false,
    master_user_options: {
      master_user_arn: "ARN",
      master_user_name: "Username",
      master_user_password: "Password",
    },
    saml_options: {
      enabled: false,
      idp: {
        metadata_content: "SAMLMetadata", # required
        entity_id: "SAMLEntityId", # required
      },
      master_user_name: "Username",
      master_backend_role: "BackendRole",
      subject_key: "String",
      roles_key: "String",
      session_timeout_minutes: 1,
    },
  },
})

Response structure


resp.domain_config.elasticsearch_version.options #=> String
resp.domain_config.elasticsearch_version.status.creation_date #=> Time
resp.domain_config.elasticsearch_version.status.update_date #=> Time
resp.domain_config.elasticsearch_version.status.update_version #=> Integer
resp.domain_config.elasticsearch_version.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.elasticsearch_version.status.pending_deletion #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.instance_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.instance_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.zone_awareness_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_type #=> String, one of "m3.medium.elasticsearch", "m3.large.elasticsearch", "m3.xlarge.elasticsearch", "m3.2xlarge.elasticsearch", "m4.large.elasticsearch", "m4.xlarge.elasticsearch", "m4.2xlarge.elasticsearch", "m4.4xlarge.elasticsearch", "m4.10xlarge.elasticsearch", "m5.large.elasticsearch", "m5.xlarge.elasticsearch", "m5.2xlarge.elasticsearch", "m5.4xlarge.elasticsearch", "m5.12xlarge.elasticsearch", "r5.large.elasticsearch", "r5.xlarge.elasticsearch", "r5.2xlarge.elasticsearch", "r5.4xlarge.elasticsearch", "r5.12xlarge.elasticsearch", "c5.large.elasticsearch", "c5.xlarge.elasticsearch", "c5.2xlarge.elasticsearch", "c5.4xlarge.elasticsearch", "c5.9xlarge.elasticsearch", "c5.18xlarge.elasticsearch", "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch", "t2.micro.elasticsearch", "t2.small.elasticsearch", "t2.medium.elasticsearch", "r3.large.elasticsearch", "r3.xlarge.elasticsearch", "r3.2xlarge.elasticsearch", "r3.4xlarge.elasticsearch", "r3.8xlarge.elasticsearch", "i2.xlarge.elasticsearch", "i2.2xlarge.elasticsearch", "d2.xlarge.elasticsearch", "d2.2xlarge.elasticsearch", "d2.4xlarge.elasticsearch", "d2.8xlarge.elasticsearch", "c4.large.elasticsearch", "c4.xlarge.elasticsearch", "c4.2xlarge.elasticsearch", "c4.4xlarge.elasticsearch", "c4.8xlarge.elasticsearch", "r4.large.elasticsearch", "r4.xlarge.elasticsearch", "r4.2xlarge.elasticsearch", "r4.4xlarge.elasticsearch", "r4.8xlarge.elasticsearch", "r4.16xlarge.elasticsearch", "i3.large.elasticsearch", "i3.xlarge.elasticsearch", "i3.2xlarge.elasticsearch", "i3.4xlarge.elasticsearch", "i3.8xlarge.elasticsearch", "i3.16xlarge.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.dedicated_master_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.options.warm_enabled #=> true/false
resp.domain_config.elasticsearch_cluster_config.options.warm_type #=> String, one of "ultrawarm1.medium.elasticsearch", "ultrawarm1.large.elasticsearch"
resp.domain_config.elasticsearch_cluster_config.options.warm_count #=> Integer
resp.domain_config.elasticsearch_cluster_config.status.creation_date #=> Time
resp.domain_config.elasticsearch_cluster_config.status.update_date #=> Time
resp.domain_config.elasticsearch_cluster_config.status.update_version #=> Integer
resp.domain_config.elasticsearch_cluster_config.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.elasticsearch_cluster_config.status.pending_deletion #=> true/false
resp.domain_config.ebs_options.options.ebs_enabled #=> true/false
resp.domain_config.ebs_options.options.volume_type #=> String, one of "standard", "gp2", "io1"
resp.domain_config.ebs_options.options.volume_size #=> Integer
resp.domain_config.ebs_options.options.iops #=> Integer
resp.domain_config.ebs_options.status.creation_date #=> Time
resp.domain_config.ebs_options.status.update_date #=> Time
resp.domain_config.ebs_options.status.update_version #=> Integer
resp.domain_config.ebs_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.ebs_options.status.pending_deletion #=> true/false
resp.domain_config.access_policies.options #=> String
resp.domain_config.access_policies.status.creation_date #=> Time
resp.domain_config.access_policies.status.update_date #=> Time
resp.domain_config.access_policies.status.update_version #=> Integer
resp.domain_config.access_policies.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.access_policies.status.pending_deletion #=> true/false
resp.domain_config.snapshot_options.options.automated_snapshot_start_hour #=> Integer
resp.domain_config.snapshot_options.status.creation_date #=> Time
resp.domain_config.snapshot_options.status.update_date #=> Time
resp.domain_config.snapshot_options.status.update_version #=> Integer
resp.domain_config.snapshot_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.snapshot_options.status.pending_deletion #=> true/false
resp.domain_config.vpc_options.options.vpc_id #=> String
resp.domain_config.vpc_options.options.subnet_ids #=> Array
resp.domain_config.vpc_options.options.subnet_ids[0] #=> String
resp.domain_config.vpc_options.options.availability_zones #=> Array
resp.domain_config.vpc_options.options.availability_zones[0] #=> String
resp.domain_config.vpc_options.options.security_group_ids #=> Array
resp.domain_config.vpc_options.options.security_group_ids[0] #=> String
resp.domain_config.vpc_options.status.creation_date #=> Time
resp.domain_config.vpc_options.status.update_date #=> Time
resp.domain_config.vpc_options.status.update_version #=> Integer
resp.domain_config.vpc_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.vpc_options.status.pending_deletion #=> true/false
resp.domain_config.cognito_options.options.enabled #=> true/false
resp.domain_config.cognito_options.options.user_pool_id #=> String
resp.domain_config.cognito_options.options.identity_pool_id #=> String
resp.domain_config.cognito_options.options.role_arn #=> String
resp.domain_config.cognito_options.status.creation_date #=> Time
resp.domain_config.cognito_options.status.update_date #=> Time
resp.domain_config.cognito_options.status.update_version #=> Integer
resp.domain_config.cognito_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.cognito_options.status.pending_deletion #=> true/false
resp.domain_config.encryption_at_rest_options.options.enabled #=> true/false
resp.domain_config.encryption_at_rest_options.options.kms_key_id #=> String
resp.domain_config.encryption_at_rest_options.status.creation_date #=> Time
resp.domain_config.encryption_at_rest_options.status.update_date #=> Time
resp.domain_config.encryption_at_rest_options.status.update_version #=> Integer
resp.domain_config.encryption_at_rest_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.encryption_at_rest_options.status.pending_deletion #=> true/false
resp.domain_config.node_to_node_encryption_options.options.enabled #=> true/false
resp.domain_config.node_to_node_encryption_options.status.creation_date #=> Time
resp.domain_config.node_to_node_encryption_options.status.update_date #=> Time
resp.domain_config.node_to_node_encryption_options.status.update_version #=> Integer
resp.domain_config.node_to_node_encryption_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.node_to_node_encryption_options.status.pending_deletion #=> true/false
resp.domain_config.advanced_options.options #=> Hash
resp.domain_config.advanced_options.options["String"] #=> String
resp.domain_config.advanced_options.status.creation_date #=> Time
resp.domain_config.advanced_options.status.update_date #=> Time
resp.domain_config.advanced_options.status.update_version #=> Integer
resp.domain_config.advanced_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.advanced_options.status.pending_deletion #=> true/false
resp.domain_config.log_publishing_options.options #=> Hash
resp.domain_config.log_publishing_options.options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.domain_config.log_publishing_options.options["LogType"].enabled #=> true/false
resp.domain_config.log_publishing_options.status.creation_date #=> Time
resp.domain_config.log_publishing_options.status.update_date #=> Time
resp.domain_config.log_publishing_options.status.update_version #=> Integer
resp.domain_config.log_publishing_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.log_publishing_options.status.pending_deletion #=> true/false
resp.domain_config.domain_endpoint_options.options.enforce_https #=> true/false
resp.domain_config.domain_endpoint_options.options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"
resp.domain_config.domain_endpoint_options.options.custom_endpoint_enabled #=> true/false
resp.domain_config.domain_endpoint_options.options.custom_endpoint #=> String
resp.domain_config.domain_endpoint_options.options.custom_endpoint_certificate_arn #=> String
resp.domain_config.domain_endpoint_options.status.creation_date #=> Time
resp.domain_config.domain_endpoint_options.status.update_date #=> Time
resp.domain_config.domain_endpoint_options.status.update_version #=> Integer
resp.domain_config.domain_endpoint_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.domain_endpoint_options.status.pending_deletion #=> true/false
resp.domain_config.advanced_security_options.options.enabled #=> true/false
resp.domain_config.advanced_security_options.options.internal_user_database_enabled #=> true/false
resp.domain_config.advanced_security_options.options.saml_options.enabled #=> true/false
resp.domain_config.advanced_security_options.options.saml_options.idp. #=> String
resp.domain_config.advanced_security_options.options.saml_options.idp.entity_id #=> String
resp.domain_config.advanced_security_options.options.saml_options.subject_key #=> String
resp.domain_config.advanced_security_options.options.saml_options.roles_key #=> String
resp.domain_config.advanced_security_options.options.saml_options.session_timeout_minutes #=> Integer
resp.domain_config.advanced_security_options.status.creation_date #=> Time
resp.domain_config.advanced_security_options.status.update_date #=> Time
resp.domain_config.advanced_security_options.status.update_version #=> Integer
resp.domain_config.advanced_security_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.advanced_security_options.status.pending_deletion #=> true/false

Options Hash (options):

  • :domain_name (required, String)

    The name of the Elasticsearch domain that you are updating.

  • :elasticsearch_cluster_config (Types::ElasticsearchClusterConfig)

    The type and number of instances to instantiate for the domain cluster.

  • :ebs_options (Types::EBSOptions)

    Specify the type and size of the EBS volume that you want to use.

  • :snapshot_options (Types::SnapshotOptions)

    Option to set the time, in UTC format, for the daily automated snapshot. Default value is 0 hours.

  • :vpc_options (Types::VPCOptions)

    Options to specify the subnets and security groups for VPC endpoint. For more information, see Creating a VPCtarget="_blank" in VPC Endpoints for Amazon Elasticsearch Service Domains

  • :cognito_options (Types::CognitoOptions)

    Options to specify the Cognito user and identity pools for Kibana authentication. For more information, see Amazon Cognito Authentication for Kibanatarget="_blank".

  • :advanced_options (Hash<String,String>)

    Modifies the advanced option to allow references to indices in an HTTP request body. Must be false when configuring access to individual sub-resources. By default, the value is true. See Configuration Advanced Optionstarget="_blank" for more information.

  • :access_policies (String)

    IAM access policy as a JSON-formatted string.

  • :log_publishing_options (Hash<String,Types::LogPublishingOption>)

    Map of LogType and LogPublishingOption, each containing options to publish a given type of Elasticsearch log.

  • :domain_endpoint_options (Types::DomainEndpointOptions)

    Options to specify configuration that will be applied to the domain endpoint.

  • :advanced_security_options (Types::AdvancedSecurityOptionsInput)

    Specifies advanced security options.

Returns:

#update_package(options = {}) ⇒ Types::UpdatePackageResponse

Updates a package for use with Amazon ES domains.

Examples:

Request syntax with placeholder values


resp = client.update_package({
  package_id: "PackageID", # required
  package_source: { # required
    s3_bucket_name: "S3BucketName",
    s3_key: "S3Key",
  },
  package_description: "PackageDescription",
  commit_message: "CommitMessage",
})

Response structure


resp.package_details.package_id #=> String
resp.package_details.package_name #=> String
resp.package_details.package_type #=> String, one of "TXT-DICTIONARY"
resp.package_details.package_description #=> String
resp.package_details.package_status #=> String, one of "COPYING", "COPY_FAILED", "VALIDATING", "VALIDATION_FAILED", "AVAILABLE", "DELETING", "DELETED", "DELETE_FAILED"
resp.package_details.created_at #=> Time
resp.package_details.last_updated_at #=> Time
resp.package_details.available_package_version #=> String
resp.package_details.error_details.error_type #=> String
resp.package_details.error_details.error_message #=> String

Options Hash (options):

  • :package_id (required, String)

    Unique identifier for the package.

  • :package_source (required, Types::PackageSource)

    The S3 location for importing the package specified as S3BucketName and S3Key

  • :package_description (String)

    New description of the package.

  • :commit_message (String)

    An info message for the new version which will be shown as part of GetPackageVersionHistoryResponse.

Returns:

#upgrade_elasticsearch_domain(options = {}) ⇒ Types::UpgradeElasticsearchDomainResponse

Allows you to either upgrade your domain or perform an Upgrade eligibility check to a compatible Elasticsearch version.

Examples:

Request syntax with placeholder values


resp = client.upgrade_elasticsearch_domain({
  domain_name: "DomainName", # required
  target_version: "ElasticsearchVersionString", # required
  perform_check_only: false,
})

Response structure


resp.domain_name #=> String
resp.target_version #=> String
resp.perform_check_only #=> true/false

Options Hash (options):

  • :domain_name (required, String)

    The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).

  • :target_version (required, String)

    The version of Elasticsearch that you intend to upgrade the domain to.

  • :perform_check_only (Boolean)

    This flag, when set to True, indicates that an Upgrade Eligibility Check needs to be performed. This will not actually perform the Upgrade.

Returns:

#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean

Waiters polls an API operation until a resource enters a desired state.

Basic Usage

Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.

# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:

# poll for ~25 seconds
client.wait_until(...) do |w|
  w.max_attempts = 5
  w.delay = 5
end

Callbacks

You can be notified before each polling attempt and before each delay. If you throw :success or :failure from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(...) do |w|

  # disable max attempts
  w.max_attempts = nil

  # poll for 1 hour, instead of a number of attempts
  w.before_wait do |attempts, response|
    throw :failure if Time.now - started_at > 3600
  end

end

Handling Errors

When a waiter is successful, it returns true. When a waiter fails, it raises an error. All errors raised extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

Parameters:

  • waiter_name (Symbol)

    The name of the waiter. See #waiter_names for a full list of supported waiters.

  • params (Hash) (defaults to: {})

    Additional request parameters. See the #waiter_names for a list of supported waiters and what request they call. The called request determines the list of accepted parameters.

Yield Parameters:

Returns:

  • (Boolean)

    Returns true if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.

#waiter_namesArray<Symbol>

Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:

Waiter NameClient MethodDefault Delay:Default Max Attempts:

Returns:

  • (Array<Symbol>)

    the list of supported waiters.