Class: Aws::OpenSearchService::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb

Overview

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

client = Aws::OpenSearchService::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

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

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

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

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    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.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :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, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :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.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::OpenSearchService::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::OpenSearchService::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



444
445
446
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 444

def initialize(*args)
  super
end

Instance Method Details

#accept_inbound_connection(params = {}) ⇒ Types::AcceptInboundConnectionResponse

Allows the destination Amazon OpenSearch Service domain owner to accept an inbound cross-cluster search connection request. For more information, see Cross-cluster search for Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.accept_inbound_connection({
  connection_id: "ConnectionId", # required
})

Response structure


resp.connection.local_domain_info.aws_domain_information.owner_id #=> String
resp.connection.local_domain_info.aws_domain_information.domain_name #=> String
resp.connection.local_domain_info.aws_domain_information.region #=> String
resp.connection.remote_domain_info.aws_domain_information.owner_id #=> String
resp.connection.remote_domain_info.aws_domain_information.domain_name #=> String
resp.connection.remote_domain_info.aws_domain_information.region #=> String
resp.connection.connection_id #=> String
resp.connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connection.connection_status.message #=> String
resp.connection.connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"

Parameters:

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

    ({})

Options Hash (params):

  • :connection_id (required, String)

    The ID of the inbound connection to accept.

Returns:

See Also:



489
490
491
492
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 489

def accept_inbound_connection(params = {}, options = {})
  req = build_request(:accept_inbound_connection, params)
  req.send_request(options)
end

#add_data_source(params = {}) ⇒ Types::AddDataSourceResponse

Creates a new direct-query data source to the specified domain. For more information, see Creating Amazon OpenSearch Service data source integrations with Amazon S3.

Examples:

Request syntax with placeholder values


resp = client.add_data_source({
  domain_name: "DomainName", # required
  name: "DataSourceName", # required
  data_source_type: { # required
    s3_glue_data_catalog: {
      role_arn: "RoleArn",
    },
  },
  description: "DataSourceDescription",
})

Response structure


resp.message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain to add the data source to.

  • :name (required, String)

    A name for the data source.

  • :data_source_type (required, Types::DataSourceType)

    The type of data source.

  • :description (String)

    A description of the data source.

Returns:

See Also:



539
540
541
542
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 539

def add_data_source(params = {}, options = {})
  req = build_request(:add_data_source, params)
  req.send_request(options)
end

#add_tags(params = {}) ⇒ Struct

Attaches tags to an existing Amazon OpenSearch Service domain. Tags are a set of case-sensitive key-value pairs. A domain can have up to 10 tags. For more information, see Tagging Amazon OpenSearch Service domains.

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :arn (required, String)

    Amazon Resource Name (ARN) for the OpenSearch Service domain to which you want to attach resource tags.

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

    List of resource tags.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



578
579
580
581
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 578

def add_tags(params = {}, options = {})
  req = build_request(:add_tags, params)
  req.send_request(options)
end

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

Associates a package with an Amazon OpenSearch Service domain. For more information, see Custom packages for Amazon OpenSearch Service.

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", "ZIP-PLUGIN"
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

Parameters:

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

    ({})

Options Hash (params):

  • :package_id (required, String)

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

  • :domain_name (required, String)

    Name of the domain to associate the package with.

Returns:

See Also:



626
627
628
629
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 626

def associate_package(params = {}, options = {})
  req = build_request(:associate_package, params)
  req.send_request(options)
end

#authorize_vpc_endpoint_access(params = {}) ⇒ Types::AuthorizeVpcEndpointAccessResponse

Provides access to an Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.authorize_vpc_endpoint_access({
  domain_name: "DomainName", # required
  account: "AWSAccount", # required
})

Response structure


resp.authorized_principal.principal_type #=> String, one of "AWS_ACCOUNT", "AWS_SERVICE"
resp.authorized_principal.principal #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the OpenSearch Service domain to provide access to.

  • :account (required, String)

    The Amazon Web Services account ID to grant access to.

Returns:

See Also:



660
661
662
663
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 660

def authorize_vpc_endpoint_access(params = {}, options = {})
  req = build_request(:authorize_vpc_endpoint_access, params)
  req.send_request(options)
end

#cancel_domain_config_change(params = {}) ⇒ Types::CancelDomainConfigChangeResponse

Cancels a pending configuration change on an Amazon OpenSearch Service domain.

Examples:

Request syntax with placeholder values


resp = client.cancel_domain_config_change({
  domain_name: "DomainName", # required
  dry_run: false,
})

Response structure


resp.cancelled_change_ids #=> Array
resp.cancelled_change_ids[0] #=> String
resp.cancelled_change_properties #=> Array
resp.cancelled_change_properties[0].property_name #=> String
resp.cancelled_change_properties[0].cancelled_value #=> String
resp.cancelled_change_properties[0].active_value #=> String
resp.dry_run #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of an OpenSearch Service domain. Domain names are unique across the domains owned by an account within an Amazon Web Services Region.

  • :dry_run (Boolean)

    When set to True, returns the list of change IDs and properties that will be cancelled without actually cancelling the change.

Returns:

See Also:



704
705
706
707
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 704

def cancel_domain_config_change(params = {}, options = {})
  req = build_request(:cancel_domain_config_change, params)
  req.send_request(options)
end

#cancel_service_software_update(params = {}) ⇒ Types::CancelServiceSoftwareUpdateResponse

Cancels a scheduled service software update for an Amazon OpenSearch Service domain. You can only perform this operation before the AutomatedUpdateDate and when the domain's UpdateStatus is PENDING_UPDATE. For more information, see Service software updates in Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.cancel_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 #=> Boolean
resp.service_software_options.cancellable #=> Boolean
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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    Name of the OpenSearch Service domain that you want to cancel the service software update on.

Returns:

See Also:



748
749
750
751
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 748

def cancel_service_software_update(params = {}, options = {})
  req = build_request(:cancel_service_software_update, params)
  req.send_request(options)
end

#create_domain(params = {}) ⇒ Types::CreateDomainResponse

Creates an Amazon OpenSearch Service domain. For more information, see Creating and managing Amazon OpenSearch Service domains.

Examples:

Request syntax with placeholder values


resp = client.create_domain({
  domain_name: "DomainName", # required
  engine_version: "VersionString",
  cluster_config: {
    instance_type: "m3.medium.search", # accepts m3.medium.search, m3.large.search, m3.xlarge.search, m3.2xlarge.search, m4.large.search, m4.xlarge.search, m4.2xlarge.search, m4.4xlarge.search, m4.10xlarge.search, m5.large.search, m5.xlarge.search, m5.2xlarge.search, m5.4xlarge.search, m5.12xlarge.search, m5.24xlarge.search, r5.large.search, r5.xlarge.search, r5.2xlarge.search, r5.4xlarge.search, r5.12xlarge.search, r5.24xlarge.search, c5.large.search, c5.xlarge.search, c5.2xlarge.search, c5.4xlarge.search, c5.9xlarge.search, c5.18xlarge.search, t3.nano.search, t3.micro.search, t3.small.search, t3.medium.search, t3.large.search, t3.xlarge.search, t3.2xlarge.search, or1.medium.search, or1.large.search, or1.xlarge.search, or1.2xlarge.search, or1.4xlarge.search, or1.8xlarge.search, or1.12xlarge.search, or1.16xlarge.search, ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search, t2.micro.search, t2.small.search, t2.medium.search, r3.large.search, r3.xlarge.search, r3.2xlarge.search, r3.4xlarge.search, r3.8xlarge.search, i2.xlarge.search, i2.2xlarge.search, d2.xlarge.search, d2.2xlarge.search, d2.4xlarge.search, d2.8xlarge.search, c4.large.search, c4.xlarge.search, c4.2xlarge.search, c4.4xlarge.search, c4.8xlarge.search, r4.large.search, r4.xlarge.search, r4.2xlarge.search, r4.4xlarge.search, r4.8xlarge.search, r4.16xlarge.search, i3.large.search, i3.xlarge.search, i3.2xlarge.search, i3.4xlarge.search, i3.8xlarge.search, i3.16xlarge.search, r6g.large.search, r6g.xlarge.search, r6g.2xlarge.search, r6g.4xlarge.search, r6g.8xlarge.search, r6g.12xlarge.search, m6g.large.search, m6g.xlarge.search, m6g.2xlarge.search, m6g.4xlarge.search, m6g.8xlarge.search, m6g.12xlarge.search, c6g.large.search, c6g.xlarge.search, c6g.2xlarge.search, c6g.4xlarge.search, c6g.8xlarge.search, c6g.12xlarge.search, r6gd.large.search, r6gd.xlarge.search, r6gd.2xlarge.search, r6gd.4xlarge.search, r6gd.8xlarge.search, r6gd.12xlarge.search, r6gd.16xlarge.search, t4g.small.search, t4g.medium.search
    instance_count: 1,
    dedicated_master_enabled: false,
    zone_awareness_enabled: false,
    zone_awareness_config: {
      availability_zone_count: 1,
    },
    dedicated_master_type: "m3.medium.search", # accepts m3.medium.search, m3.large.search, m3.xlarge.search, m3.2xlarge.search, m4.large.search, m4.xlarge.search, m4.2xlarge.search, m4.4xlarge.search, m4.10xlarge.search, m5.large.search, m5.xlarge.search, m5.2xlarge.search, m5.4xlarge.search, m5.12xlarge.search, m5.24xlarge.search, r5.large.search, r5.xlarge.search, r5.2xlarge.search, r5.4xlarge.search, r5.12xlarge.search, r5.24xlarge.search, c5.large.search, c5.xlarge.search, c5.2xlarge.search, c5.4xlarge.search, c5.9xlarge.search, c5.18xlarge.search, t3.nano.search, t3.micro.search, t3.small.search, t3.medium.search, t3.large.search, t3.xlarge.search, t3.2xlarge.search, or1.medium.search, or1.large.search, or1.xlarge.search, or1.2xlarge.search, or1.4xlarge.search, or1.8xlarge.search, or1.12xlarge.search, or1.16xlarge.search, ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search, t2.micro.search, t2.small.search, t2.medium.search, r3.large.search, r3.xlarge.search, r3.2xlarge.search, r3.4xlarge.search, r3.8xlarge.search, i2.xlarge.search, i2.2xlarge.search, d2.xlarge.search, d2.2xlarge.search, d2.4xlarge.search, d2.8xlarge.search, c4.large.search, c4.xlarge.search, c4.2xlarge.search, c4.4xlarge.search, c4.8xlarge.search, r4.large.search, r4.xlarge.search, r4.2xlarge.search, r4.4xlarge.search, r4.8xlarge.search, r4.16xlarge.search, i3.large.search, i3.xlarge.search, i3.2xlarge.search, i3.4xlarge.search, i3.8xlarge.search, i3.16xlarge.search, r6g.large.search, r6g.xlarge.search, r6g.2xlarge.search, r6g.4xlarge.search, r6g.8xlarge.search, r6g.12xlarge.search, m6g.large.search, m6g.xlarge.search, m6g.2xlarge.search, m6g.4xlarge.search, m6g.8xlarge.search, m6g.12xlarge.search, c6g.large.search, c6g.xlarge.search, c6g.2xlarge.search, c6g.4xlarge.search, c6g.8xlarge.search, c6g.12xlarge.search, r6gd.large.search, r6gd.xlarge.search, r6gd.2xlarge.search, r6gd.4xlarge.search, r6gd.8xlarge.search, r6gd.12xlarge.search, r6gd.16xlarge.search, t4g.small.search, t4g.medium.search
    dedicated_master_count: 1,
    warm_enabled: false,
    warm_type: "ultrawarm1.medium.search", # accepts ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search
    warm_count: 1,
    cold_storage_options: {
      enabled: false, # required
    },
    multi_az_with_standby_enabled: false,
  },
  ebs_options: {
    ebs_enabled: false,
    volume_type: "standard", # accepts standard, gp2, io1, gp3
    volume_size: 1,
    iops: 1,
    throughput: 1,
  },
  access_policies: "PolicyDocument",
  ip_address_type: "ipv4", # accepts ipv4, dualstack
  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, Policy-Min-TLS-1-2-PFS-2023-10
    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,
    },
    jwt_options: {
      enabled: false,
      subject_key: "SubjectKey",
      roles_key: "RolesKey",
      public_key: "String",
    },
    anonymous_auth_enabled: false,
  },
  tag_list: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  auto_tune_options: {
    desired_state: "ENABLED", # accepts ENABLED, DISABLED
    maintenance_schedules: [
      {
        start_at: Time.now,
        duration: {
          value: 1,
          unit: "HOURS", # accepts HOURS
        },
        cron_expression_for_recurrence: "String",
      },
    ],
    use_off_peak_window: false,
  },
  off_peak_window_options: {
    enabled: false,
    off_peak_window: {
      window_start_time: {
        hours: 1, # required
        minutes: 1, # required
      },
    },
  },
  software_update_options: {
    auto_software_update_enabled: false,
  },
  aiml_options: {
    natural_language_query_generation_options: {
      desired_state: "ENABLED", # accepts ENABLED, DISABLED
    },
  },
})

Response structure


resp.domain_status.domain_id #=> String
resp.domain_status.domain_name #=> String
resp.domain_status.arn #=> String
resp.domain_status.created #=> Boolean
resp.domain_status.deleted #=> Boolean
resp.domain_status.endpoint #=> String
resp.domain_status.endpoint_v2 #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.domain_endpoint_v2_hosted_zone_id #=> String
resp.domain_status.processing #=> Boolean
resp.domain_status.upgrade_processing #=> Boolean
resp.domain_status.engine_version #=> String
resp.domain_status.cluster_config.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.instance_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.dedicated_master_count #=> Integer
resp.domain_status.cluster_config.warm_enabled #=> Boolean
resp.domain_status.cluster_config.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.domain_status.cluster_config.warm_count #=> Integer
resp.domain_status.cluster_config.cold_storage_options.enabled #=> Boolean
resp.domain_status.cluster_config.multi_az_with_standby_enabled #=> Boolean
resp.domain_status.ebs_options.ebs_enabled #=> Boolean
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.ebs_options.throughput #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.ip_address_type #=> String, one of "ipv4", "dualstack"
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 #=> Boolean
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 #=> Boolean
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_status.service_software_options.cancellable #=> Boolean
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 #=> Boolean
resp.domain_status.domain_endpoint_options.enforce_https #=> Boolean
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", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> Boolean
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 #=> Boolean
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> Boolean
resp.domain_status.advanced_security_options.saml_options.enabled #=> Boolean
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
resp.domain_status.advanced_security_options.jwt_options.enabled #=> Boolean
resp.domain_status.advanced_security_options.jwt_options.subject_key #=> String
resp.domain_status.advanced_security_options.jwt_options.roles_key #=> String
resp.domain_status.advanced_security_options.jwt_options.public_key #=> String
resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.domain_status.auto_tune_options.error_message #=> String
resp.domain_status.auto_tune_options.use_off_peak_window #=> Boolean
resp.domain_status.change_progress_details.change_id #=> String
resp.domain_status.change_progress_details.message #=> String
resp.domain_status.change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.domain_status.change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.domain_status.change_progress_details.start_time #=> Time
resp.domain_status.change_progress_details.last_updated_time #=> Time
resp.domain_status.off_peak_window_options.enabled #=> Boolean
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.hours #=> Integer
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.minutes #=> Integer
resp.domain_status.software_update_options.auto_software_update_enabled #=> Boolean
resp.domain_status.domain_processing_status #=> String, one of "Creating", "Active", "Modifying", "UpgradingEngineVersion", "UpdatingServiceSoftware", "Isolated", "Deleting"
resp.domain_status.modifying_properties #=> Array
resp.domain_status.modifying_properties[0].name #=> String
resp.domain_status.modifying_properties[0].active_value #=> String
resp.domain_status.modifying_properties[0].pending_value #=> String
resp.domain_status.modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.domain_status.aiml_options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_status.aiml_options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    Name of the OpenSearch Service domain to create. Domain names are unique across the domains owned by an account within an Amazon Web Services Region.

  • :engine_version (String)

    String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the engine version for the OpenSearch Service domain. For example, OpenSearch_1.0 or Elasticsearch_7.9. For more information, see Creating and managing Amazon OpenSearch Service domains.

  • :cluster_config (Types::ClusterConfig)

    Container for the cluster configuration of a domain.

  • :ebs_options (Types::EBSOptions)

    Container for the parameters required to enable EBS-based storage for an OpenSearch Service domain.

  • :access_policies (String)

    Identity and Access Management (IAM) policy document specifying the access policies for the new domain.

  • :ip_address_type (String)

    Specify either dual stack or IPv4 as your IP address type. Dual stack allows you to share domain resources across IPv4 and IPv6 address types, and is the recommended option. If you set your IP address type to dual stack, you can't change your address type later.

  • :snapshot_options (Types::SnapshotOptions)

    DEPRECATED. Container for the parameters required to configure automated snapshots of domain indexes.

  • :vpc_options (Types::VPCOptions)

    Container for the values required to configure VPC access domains. If you don't specify these values, OpenSearch Service creates the domain with a public endpoint. For more information, see Launching your Amazon OpenSearch Service domains using a VPC.

  • :cognito_options (Types::CognitoOptions)

    Key-value pairs to configure Amazon Cognito authentication. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards.

  • :encryption_at_rest_options (Types::EncryptionAtRestOptions)

    Key-value pairs to enable encryption at rest.

  • :node_to_node_encryption_options (Types::NodeToNodeEncryptionOptions)

    Enables node-to-node encryption.

  • :advanced_options (Hash<String,String>)

    Key-value pairs to specify advanced configuration options. The following key-value pairs are supported:

    • "rest.action.multi.allow_explicit_index": "true" | "false" - Note the use of a string rather than a boolean. Specifies whether explicit references to indexes are allowed inside the body of HTTP requests. If you want to configure access policies for domain sub-resources, such as specific indexes and domain APIs, you must disable this property. Default is true.

    • "indices.fielddata.cache.size": "80" - Note the use of a string rather than a boolean. Specifies the percentage of heap space allocated to field data. Default is unbounded.

    • "indices.query.bool.max_clause_count": "1024" - Note the use of a string rather than a boolean. Specifies the maximum number of clauses allowed in a Lucene boolean query. Default is 1,024. Queries with more than the permitted number of clauses result in a TooManyClauses error.

    • "override_main_response_version": "true" | "false" - Note the use of a string rather than a boolean. Specifies whether the domain reports its version as 7.10 to allow Elasticsearch OSS clients and plugins to continue working with it. Default is false when creating a domain and true when upgrading a domain.

    For more information, see Advanced cluster parameters.

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

    Key-value pairs to configure log publishing.

  • :domain_endpoint_options (Types::DomainEndpointOptions)

    Additional options for the domain endpoint, such as whether to require HTTPS for all traffic.

  • :advanced_security_options (Types::AdvancedSecurityOptionsInput)

    Options for fine-grained access control.

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

    List of tags to add to the domain upon creation.

  • :auto_tune_options (Types::AutoTuneOptionsInput)

    Options for Auto-Tune.

  • :off_peak_window_options (Types::OffPeakWindowOptions)

    Specifies a daily 10-hour time block during which OpenSearch Service can perform configuration changes on the domain, including service software updates and Auto-Tune enhancements that require a blue/green deployment. If no options are specified, the default start time of 10:00 P.M. local time (for the Region that the domain is created in) is used.

  • :software_update_options (Types::SoftwareUpdateOptions)

    Software update options for the domain.

  • :aiml_options (Types::AIMLOptionsInput)

    Options for all machine learning features for the specified domain.

Returns:

See Also:



1130
1131
1132
1133
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1130

def create_domain(params = {}, options = {})
  req = build_request(:create_domain, params)
  req.send_request(options)
end

#create_outbound_connection(params = {}) ⇒ Types::CreateOutboundConnectionResponse

Creates a new cross-cluster search connection from a source Amazon OpenSearch Service domain to a destination domain. For more information, see Cross-cluster search for Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.create_outbound_connection({
  local_domain_info: { # required
    aws_domain_information: {
      owner_id: "OwnerId",
      domain_name: "DomainName", # required
      region: "Region",
    },
  },
  remote_domain_info: { # required
    aws_domain_information: {
      owner_id: "OwnerId",
      domain_name: "DomainName", # required
      region: "Region",
    },
  },
  connection_alias: "ConnectionAlias", # required
  connection_mode: "DIRECT", # accepts DIRECT, VPC_ENDPOINT
  connection_properties: {
    endpoint: "Endpoint",
    cross_cluster_search: {
      skip_unavailable: "ENABLED", # accepts ENABLED, DISABLED
    },
  },
})

Response structure


resp.local_domain_info.aws_domain_information.owner_id #=> String
resp.local_domain_info.aws_domain_information.domain_name #=> String
resp.local_domain_info.aws_domain_information.region #=> String
resp.remote_domain_info.aws_domain_information.owner_id #=> String
resp.remote_domain_info.aws_domain_information.domain_name #=> String
resp.remote_domain_info.aws_domain_information.region #=> String
resp.connection_alias #=> String
resp.connection_status.status_code #=> String, one of "VALIDATING", "VALIDATION_FAILED", "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connection_status.message #=> String
resp.connection_id #=> String
resp.connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"
resp.connection_properties.endpoint #=> String
resp.connection_properties.cross_cluster_search.skip_unavailable #=> String, one of "ENABLED", "DISABLED"

Parameters:

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

    ({})

Options Hash (params):

  • :local_domain_info (required, Types::DomainInformationContainer)

    Name and Region of the source (local) domain.

  • :remote_domain_info (required, Types::DomainInformationContainer)

    Name and Region of the destination (remote) domain.

  • :connection_alias (required, String)

    Name of the connection.

  • :connection_mode (String)

    The connection mode.

  • :connection_properties (Types::ConnectionProperties)

    The ConnectionProperties for the outbound connection.

Returns:

See Also:



1216
1217
1218
1219
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1216

def create_outbound_connection(params = {}, options = {})
  req = build_request(:create_outbound_connection, params)
  req.send_request(options)
end

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

Creates a package for use with Amazon OpenSearch Service domains. For more information, see Custom packages for Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.create_package({
  package_name: "PackageName", # required
  package_type: "TXT-DICTIONARY", # required, accepts TXT-DICTIONARY, ZIP-PLUGIN
  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", "ZIP-PLUGIN"
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
resp.package_details.engine_version #=> String
resp.package_details.available_plugin_properties.name #=> String
resp.package_details.available_plugin_properties.description #=> String
resp.package_details.available_plugin_properties.version #=> String
resp.package_details.available_plugin_properties.class_name #=> String
resp.package_details.available_plugin_properties.uncompressed_size_in_bytes #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :package_name (required, String)

    Unique name for the package.

  • :package_type (required, String)

    The type of package.

  • :package_description (String)

    Description of the package.

  • :package_source (required, Types::PackageSource)

    The Amazon S3 location from which to import the package.

Returns:

See Also:



1280
1281
1282
1283
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1280

def create_package(params = {}, options = {})
  req = build_request(:create_package, params)
  req.send_request(options)
end

#create_vpc_endpoint(params = {}) ⇒ Types::CreateVpcEndpointResponse

Creates an Amazon OpenSearch Service-managed VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.create_vpc_endpoint({
  domain_arn: "DomainArn", # required
  vpc_options: { # required
    subnet_ids: ["String"],
    security_group_ids: ["String"],
  },
  client_token: "ClientToken",
})

Response structure


resp.vpc_endpoint.vpc_endpoint_id #=> String
resp.vpc_endpoint.vpc_endpoint_owner #=> String
resp.vpc_endpoint.domain_arn #=> String
resp.vpc_endpoint.vpc_options.vpc_id #=> String
resp.vpc_endpoint.vpc_options.subnet_ids #=> Array
resp.vpc_endpoint.vpc_options.subnet_ids[0] #=> String
resp.vpc_endpoint.vpc_options.availability_zones #=> Array
resp.vpc_endpoint.vpc_options.availability_zones[0] #=> String
resp.vpc_endpoint.vpc_options.security_group_ids #=> Array
resp.vpc_endpoint.vpc_options.security_group_ids[0] #=> String
resp.vpc_endpoint.status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.vpc_endpoint.endpoint #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_arn (required, String)

    The Amazon Resource Name (ARN) of the domain to create the endpoint for.

  • :vpc_options (required, Types::VPCOptions)

    Options to specify the subnets and security groups for the endpoint.

  • :client_token (String)

    Unique, case-sensitive identifier to ensure idempotency of the request.

Returns:

See Also:



1332
1333
1334
1335
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1332

def create_vpc_endpoint(params = {}, options = {})
  req = build_request(:create_vpc_endpoint, params)
  req.send_request(options)
end

#delete_data_source(params = {}) ⇒ Types::DeleteDataSourceResponse

Deletes a direct-query data source. For more information, see Deleting an Amazon OpenSearch Service data source with Amazon S3.

Examples:

Request syntax with placeholder values


resp = client.delete_data_source({
  domain_name: "DomainName", # required
  name: "DataSourceName", # required
})

Response structure


resp.message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :name (required, String)

    The name of the data source to delete.

Returns:

See Also:



1369
1370
1371
1372
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1369

def delete_data_source(params = {}, options = {})
  req = build_request(:delete_data_source, params)
  req.send_request(options)
end

#delete_domain(params = {}) ⇒ Types::DeleteDomainResponse

Deletes an Amazon OpenSearch Service domain and all of its data. You can't recover a domain after you delete it.

Examples:

Request syntax with placeholder values


resp = client.delete_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 #=> Boolean
resp.domain_status.deleted #=> Boolean
resp.domain_status.endpoint #=> String
resp.domain_status.endpoint_v2 #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.domain_endpoint_v2_hosted_zone_id #=> String
resp.domain_status.processing #=> Boolean
resp.domain_status.upgrade_processing #=> Boolean
resp.domain_status.engine_version #=> String
resp.domain_status.cluster_config.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.instance_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.dedicated_master_count #=> Integer
resp.domain_status.cluster_config.warm_enabled #=> Boolean
resp.domain_status.cluster_config.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.domain_status.cluster_config.warm_count #=> Integer
resp.domain_status.cluster_config.cold_storage_options.enabled #=> Boolean
resp.domain_status.cluster_config.multi_az_with_standby_enabled #=> Boolean
resp.domain_status.ebs_options.ebs_enabled #=> Boolean
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.ebs_options.throughput #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.ip_address_type #=> String, one of "ipv4", "dualstack"
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 #=> Boolean
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 #=> Boolean
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_status.service_software_options.cancellable #=> Boolean
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 #=> Boolean
resp.domain_status.domain_endpoint_options.enforce_https #=> Boolean
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", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> Boolean
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 #=> Boolean
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> Boolean
resp.domain_status.advanced_security_options.saml_options.enabled #=> Boolean
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
resp.domain_status.advanced_security_options.jwt_options.enabled #=> Boolean
resp.domain_status.advanced_security_options.jwt_options.subject_key #=> String
resp.domain_status.advanced_security_options.jwt_options.roles_key #=> String
resp.domain_status.advanced_security_options.jwt_options.public_key #=> String
resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.domain_status.auto_tune_options.error_message #=> String
resp.domain_status.auto_tune_options.use_off_peak_window #=> Boolean
resp.domain_status.change_progress_details.change_id #=> String
resp.domain_status.change_progress_details.message #=> String
resp.domain_status.change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.domain_status.change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.domain_status.change_progress_details.start_time #=> Time
resp.domain_status.change_progress_details.last_updated_time #=> Time
resp.domain_status.off_peak_window_options.enabled #=> Boolean
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.hours #=> Integer
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.minutes #=> Integer
resp.domain_status.software_update_options.auto_software_update_enabled #=> Boolean
resp.domain_status.domain_processing_status #=> String, one of "Creating", "Active", "Modifying", "UpgradingEngineVersion", "UpdatingServiceSoftware", "Isolated", "Deleting"
resp.domain_status.modifying_properties #=> Array
resp.domain_status.modifying_properties[0].name #=> String
resp.domain_status.modifying_properties[0].active_value #=> String
resp.domain_status.modifying_properties[0].pending_value #=> String
resp.domain_status.modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.domain_status.aiml_options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_status.aiml_options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain you want to permanently delete.

Returns:

See Also:



1497
1498
1499
1500
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1497

def delete_domain(params = {}, options = {})
  req = build_request(:delete_domain, params)
  req.send_request(options)
end

#delete_inbound_connection(params = {}) ⇒ Types::DeleteInboundConnectionResponse

Allows the destination Amazon OpenSearch Service domain owner to delete an existing inbound cross-cluster search connection. For more information, see Cross-cluster search for Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.delete_inbound_connection({
  connection_id: "ConnectionId", # required
})

Response structure


resp.connection.local_domain_info.aws_domain_information.owner_id #=> String
resp.connection.local_domain_info.aws_domain_information.domain_name #=> String
resp.connection.local_domain_info.aws_domain_information.region #=> String
resp.connection.remote_domain_info.aws_domain_information.owner_id #=> String
resp.connection.remote_domain_info.aws_domain_information.domain_name #=> String
resp.connection.remote_domain_info.aws_domain_information.region #=> String
resp.connection.connection_id #=> String
resp.connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connection.connection_status.message #=> String
resp.connection.connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"

Parameters:

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

    ({})

Options Hash (params):

  • :connection_id (required, String)

    The ID of the inbound connection to permanently delete.

Returns:

See Also:



1541
1542
1543
1544
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1541

def delete_inbound_connection(params = {}, options = {})
  req = build_request(:delete_inbound_connection, params)
  req.send_request(options)
end

#delete_outbound_connection(params = {}) ⇒ Types::DeleteOutboundConnectionResponse

Allows the source Amazon OpenSearch Service domain owner to delete an existing outbound cross-cluster search connection. For more information, see Cross-cluster search for Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.delete_outbound_connection({
  connection_id: "ConnectionId", # required
})

Response structure


resp.connection.local_domain_info.aws_domain_information.owner_id #=> String
resp.connection.local_domain_info.aws_domain_information.domain_name #=> String
resp.connection.local_domain_info.aws_domain_information.region #=> String
resp.connection.remote_domain_info.aws_domain_information.owner_id #=> String
resp.connection.remote_domain_info.aws_domain_information.domain_name #=> String
resp.connection.remote_domain_info.aws_domain_information.region #=> String
resp.connection.connection_id #=> String
resp.connection.connection_alias #=> String
resp.connection.connection_status.status_code #=> String, one of "VALIDATING", "VALIDATION_FAILED", "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connection.connection_status.message #=> String
resp.connection.connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"
resp.connection.connection_properties.endpoint #=> String
resp.connection.connection_properties.cross_cluster_search.skip_unavailable #=> String, one of "ENABLED", "DISABLED"

Parameters:

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

    ({})

Options Hash (params):

  • :connection_id (required, String)

    The ID of the outbound connection you want to permanently delete.

Returns:

See Also:



1588
1589
1590
1591
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1588

def delete_outbound_connection(params = {}, options = {})
  req = build_request(:delete_outbound_connection, params)
  req.send_request(options)
end

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

Deletes an Amazon OpenSearch Service package. For more information, see Custom packages for Amazon OpenSearch Service.

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", "ZIP-PLUGIN"
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
resp.package_details.engine_version #=> String
resp.package_details.available_plugin_properties.name #=> String
resp.package_details.available_plugin_properties.description #=> String
resp.package_details.available_plugin_properties.version #=> String
resp.package_details.available_plugin_properties.class_name #=> String
resp.package_details.available_plugin_properties.uncompressed_size_in_bytes #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :package_id (required, String)

    The internal ID of the package you want to delete. Use DescribePackages to find this value.

Returns:

See Also:



1637
1638
1639
1640
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1637

def delete_package(params = {}, options = {})
  req = build_request(:delete_package, params)
  req.send_request(options)
end

#delete_vpc_endpoint(params = {}) ⇒ Types::DeleteVpcEndpointResponse

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.delete_vpc_endpoint({
  vpc_endpoint_id: "VpcEndpointId", # required
})

Response structure


resp.vpc_endpoint_summary.vpc_endpoint_id #=> String
resp.vpc_endpoint_summary.vpc_endpoint_owner #=> String
resp.vpc_endpoint_summary.domain_arn #=> String
resp.vpc_endpoint_summary.status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"

Parameters:

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

    ({})

Options Hash (params):

  • :vpc_endpoint_id (required, String)

    The unique identifier of the endpoint.

Returns:

See Also:



1668
1669
1670
1671
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1668

def delete_vpc_endpoint(params = {}, options = {})
  req = build_request(:delete_vpc_endpoint, params)
  req.send_request(options)
end

#describe_domain(params = {}) ⇒ Types::DescribeDomainResponse

Describes the domain configuration for the specified Amazon OpenSearch Service domain, including the domain ID, domain service endpoint, and domain ARN.

Examples:

Request syntax with placeholder values


resp = client.describe_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 #=> Boolean
resp.domain_status.deleted #=> Boolean
resp.domain_status.endpoint #=> String
resp.domain_status.endpoint_v2 #=> String
resp.domain_status.endpoints #=> Hash
resp.domain_status.endpoints["String"] #=> String
resp.domain_status.domain_endpoint_v2_hosted_zone_id #=> String
resp.domain_status.processing #=> Boolean
resp.domain_status.upgrade_processing #=> Boolean
resp.domain_status.engine_version #=> String
resp.domain_status.cluster_config.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.instance_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_enabled #=> Boolean
resp.domain_status.cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status.cluster_config.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status.cluster_config.dedicated_master_count #=> Integer
resp.domain_status.cluster_config.warm_enabled #=> Boolean
resp.domain_status.cluster_config.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.domain_status.cluster_config.warm_count #=> Integer
resp.domain_status.cluster_config.cold_storage_options.enabled #=> Boolean
resp.domain_status.cluster_config.multi_az_with_standby_enabled #=> Boolean
resp.domain_status.ebs_options.ebs_enabled #=> Boolean
resp.domain_status.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_status.ebs_options.volume_size #=> Integer
resp.domain_status.ebs_options.iops #=> Integer
resp.domain_status.ebs_options.throughput #=> Integer
resp.domain_status.access_policies #=> String
resp.domain_status.ip_address_type #=> String, one of "ipv4", "dualstack"
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 #=> Boolean
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 #=> Boolean
resp.domain_status.encryption_at_rest_options.kms_key_id #=> String
resp.domain_status.node_to_node_encryption_options.enabled #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_status.service_software_options.cancellable #=> Boolean
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 #=> Boolean
resp.domain_status.domain_endpoint_options.enforce_https #=> Boolean
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", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.domain_status.domain_endpoint_options.custom_endpoint_enabled #=> Boolean
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 #=> Boolean
resp.domain_status.advanced_security_options.internal_user_database_enabled #=> Boolean
resp.domain_status.advanced_security_options.saml_options.enabled #=> Boolean
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
resp.domain_status.advanced_security_options.jwt_options.enabled #=> Boolean
resp.domain_status.advanced_security_options.jwt_options.subject_key #=> String
resp.domain_status.advanced_security_options.jwt_options.roles_key #=> String
resp.domain_status.advanced_security_options.jwt_options.public_key #=> String
resp.domain_status.advanced_security_options.anonymous_auth_disable_date #=> Time
resp.domain_status.advanced_security_options.anonymous_auth_enabled #=> Boolean
resp.domain_status.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.domain_status.auto_tune_options.error_message #=> String
resp.domain_status.auto_tune_options.use_off_peak_window #=> Boolean
resp.domain_status.change_progress_details.change_id #=> String
resp.domain_status.change_progress_details.message #=> String
resp.domain_status.change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.domain_status.change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.domain_status.change_progress_details.start_time #=> Time
resp.domain_status.change_progress_details.last_updated_time #=> Time
resp.domain_status.off_peak_window_options.enabled #=> Boolean
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.hours #=> Integer
resp.domain_status.off_peak_window_options.off_peak_window.window_start_time.minutes #=> Integer
resp.domain_status.software_update_options.auto_software_update_enabled #=> Boolean
resp.domain_status.domain_processing_status #=> String, one of "Creating", "Active", "Modifying", "UpgradingEngineVersion", "UpdatingServiceSoftware", "Isolated", "Deleting"
resp.domain_status.modifying_properties #=> Array
resp.domain_status.modifying_properties[0].name #=> String
resp.domain_status.modifying_properties[0].active_value #=> String
resp.domain_status.modifying_properties[0].pending_value #=> String
resp.domain_status.modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.domain_status.aiml_options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_status.aiml_options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain that you want information about.

Returns:

See Also:



1797
1798
1799
1800
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1797

def describe_domain(params = {}, options = {})
  req = build_request(:describe_domain, params)
  req.send_request(options)
end

#describe_domain_auto_tunes(params = {}) ⇒ Types::DescribeDomainAutoTunesResponse

Returns the list of optimizations that Auto-Tune has made to an Amazon OpenSearch Service domain. For more information, see Auto-Tune for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.auto_tunes #=> Array
resp.auto_tunes[0].auto_tune_type #=> String, one of "SCHEDULED_ACTION"
resp.auto_tunes[0].auto_tune_details.scheduled_auto_tune_details.date #=> Time
resp.auto_tunes[0].auto_tune_details.scheduled_auto_tune_details.action_type #=> String, one of "JVM_HEAP_SIZE_TUNING", "JVM_YOUNG_GEN_TUNING"
resp.auto_tunes[0].auto_tune_details.scheduled_auto_tune_details.action #=> String
resp.auto_tunes[0].auto_tune_details.scheduled_auto_tune_details.severity #=> String, one of "LOW", "MEDIUM", "HIGH"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    Name of the domain that you want Auto-Tune details about.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribeDomainAutoTunes operation returns a nextToken, you can include the returned nextToken in subsequent DescribeDomainAutoTunes operations, which returns results in the next page.

Returns:

See Also:



1852
1853
1854
1855
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1852

def describe_domain_auto_tunes(params = {}, options = {})
  req = build_request(:describe_domain_auto_tunes, params)
  req.send_request(options)
end

#describe_domain_change_progress(params = {}) ⇒ Types::DescribeDomainChangeProgressResponse

Returns information about the current blue/green deployment happening on an Amazon OpenSearch Service domain. For more information, see Making configuration changes in Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.describe_domain_change_progress({
  domain_name: "DomainName", # required
  change_id: "GUID",
})

Response structure


resp.change_progress_status.change_id #=> String
resp.change_progress_status.start_time #=> Time
resp.change_progress_status.status #=> String, one of "PENDING", "PROCESSING", "COMPLETED", "FAILED"
resp.change_progress_status.pending_properties #=> Array
resp.change_progress_status.pending_properties[0] #=> String
resp.change_progress_status.completed_properties #=> Array
resp.change_progress_status.completed_properties[0] #=> String
resp.change_progress_status.total_number_of_stages #=> Integer
resp.change_progress_status.change_progress_stages #=> Array
resp.change_progress_status.change_progress_stages[0].name #=> String
resp.change_progress_status.change_progress_stages[0].status #=> String
resp.change_progress_status.change_progress_stages[0].description #=> String
resp.change_progress_status.change_progress_stages[0].last_updated #=> Time
resp.change_progress_status.last_updated_time #=> Time
resp.change_progress_status.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.change_progress_status.initiated_by #=> String, one of "CUSTOMER", "SERVICE"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain to get progress information for.

  • :change_id (String)

    The specific change ID for which you want to get progress information. If omitted, the request returns information about the most recent configuration change.

Returns:

See Also:



1907
1908
1909
1910
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 1907

def describe_domain_change_progress(params = {}, options = {})
  req = build_request(:describe_domain_change_progress, params)
  req.send_request(options)
end

#describe_domain_config(params = {}) ⇒ Types::DescribeDomainConfigResponse

Returns the configuration of an Amazon OpenSearch Service domain.

Examples:

Request syntax with placeholder values


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

Response structure


resp.domain_config.engine_version.options #=> String
resp.domain_config.engine_version.status.creation_date #=> Time
resp.domain_config.engine_version.status.update_date #=> Time
resp.domain_config.engine_version.status.update_version #=> Integer
resp.domain_config.engine_version.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.engine_version.status.pending_deletion #=> Boolean
resp.domain_config.cluster_config.options.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_config.cluster_config.options.instance_count #=> Integer
resp.domain_config.cluster_config.options.dedicated_master_enabled #=> Boolean
resp.domain_config.cluster_config.options.zone_awareness_enabled #=> Boolean
resp.domain_config.cluster_config.options.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_config.cluster_config.options.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_config.cluster_config.options.dedicated_master_count #=> Integer
resp.domain_config.cluster_config.options.warm_enabled #=> Boolean
resp.domain_config.cluster_config.options.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.domain_config.cluster_config.options.warm_count #=> Integer
resp.domain_config.cluster_config.options.cold_storage_options.enabled #=> Boolean
resp.domain_config.cluster_config.options.multi_az_with_standby_enabled #=> Boolean
resp.domain_config.cluster_config.status.creation_date #=> Time
resp.domain_config.cluster_config.status.update_date #=> Time
resp.domain_config.cluster_config.status.update_version #=> Integer
resp.domain_config.cluster_config.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.cluster_config.status.pending_deletion #=> Boolean
resp.domain_config.ebs_options.options.ebs_enabled #=> Boolean
resp.domain_config.ebs_options.options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_config.ebs_options.options.volume_size #=> Integer
resp.domain_config.ebs_options.options.iops #=> Integer
resp.domain_config.ebs_options.options.throughput #=> 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 #=> Boolean
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 #=> Boolean
resp.domain_config.ip_address_type.options #=> String, one of "ipv4", "dualstack"
resp.domain_config.ip_address_type.status.creation_date #=> Time
resp.domain_config.ip_address_type.status.update_date #=> Time
resp.domain_config.ip_address_type.status.update_version #=> Integer
resp.domain_config.ip_address_type.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.ip_address_type.status.pending_deletion #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_config.cognito_options.options.enabled #=> Boolean
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 #=> Boolean
resp.domain_config.encryption_at_rest_options.options.enabled #=> Boolean
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 #=> Boolean
resp.domain_config.node_to_node_encryption_options.options.enabled #=> Boolean
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 #=> Boolean
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 #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_config.domain_endpoint_options.options.enforce_https #=> Boolean
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", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.domain_config.domain_endpoint_options.options.custom_endpoint_enabled #=> Boolean
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 #=> Boolean
resp.domain_config.advanced_security_options.options.enabled #=> Boolean
resp.domain_config.advanced_security_options.options.internal_user_database_enabled #=> Boolean
resp.domain_config.advanced_security_options.options.saml_options.enabled #=> Boolean
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.options.jwt_options.enabled #=> Boolean
resp.domain_config.advanced_security_options.options.jwt_options.subject_key #=> String
resp.domain_config.advanced_security_options.options.jwt_options.roles_key #=> String
resp.domain_config.advanced_security_options.options.jwt_options.public_key #=> String
resp.domain_config.advanced_security_options.options.anonymous_auth_disable_date #=> Time
resp.domain_config.advanced_security_options.options.anonymous_auth_enabled #=> Boolean
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 #=> Boolean
resp.domain_config.auto_tune_options.options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_config.auto_tune_options.options.rollback_on_disable #=> String, one of "NO_ROLLBACK", "DEFAULT_ROLLBACK"
resp.domain_config.auto_tune_options.options.maintenance_schedules #=> Array
resp.domain_config.auto_tune_options.options.maintenance_schedules[0].start_at #=> Time
resp.domain_config.auto_tune_options.options.maintenance_schedules[0].duration.value #=> Integer
resp.domain_config.auto_tune_options.options.maintenance_schedules[0].duration.unit #=> String, one of "HOURS"
resp.domain_config.auto_tune_options.options.maintenance_schedules[0].cron_expression_for_recurrence #=> String
resp.domain_config.auto_tune_options.options.use_off_peak_window #=> Boolean
resp.domain_config.auto_tune_options.status.creation_date #=> Time
resp.domain_config.auto_tune_options.status.update_date #=> Time
resp.domain_config.auto_tune_options.status.update_version #=> Integer
resp.domain_config.auto_tune_options.status.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.domain_config.auto_tune_options.status.error_message #=> String
resp.domain_config.auto_tune_options.status.pending_deletion #=> Boolean
resp.domain_config.change_progress_details.change_id #=> String
resp.domain_config.change_progress_details.message #=> String
resp.domain_config.change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.domain_config.change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.domain_config.change_progress_details.start_time #=> Time
resp.domain_config.change_progress_details.last_updated_time #=> Time
resp.domain_config.off_peak_window_options.options.enabled #=> Boolean
resp.domain_config.off_peak_window_options.options.off_peak_window.window_start_time.hours #=> Integer
resp.domain_config.off_peak_window_options.options.off_peak_window.window_start_time.minutes #=> Integer
resp.domain_config.off_peak_window_options.status.creation_date #=> Time
resp.domain_config.off_peak_window_options.status.update_date #=> Time
resp.domain_config.off_peak_window_options.status.update_version #=> Integer
resp.domain_config.off_peak_window_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.off_peak_window_options.status.pending_deletion #=> Boolean
resp.domain_config.software_update_options.options.auto_software_update_enabled #=> Boolean
resp.domain_config.software_update_options.status.creation_date #=> Time
resp.domain_config.software_update_options.status.update_date #=> Time
resp.domain_config.software_update_options.status.update_version #=> Integer
resp.domain_config.software_update_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.software_update_options.status.pending_deletion #=> Boolean
resp.domain_config.modifying_properties #=> Array
resp.domain_config.modifying_properties[0].name #=> String
resp.domain_config.modifying_properties[0].active_value #=> String
resp.domain_config.modifying_properties[0].pending_value #=> String
resp.domain_config.modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.domain_config.aiml_options.options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_config.aiml_options.options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"
resp.domain_config.aiml_options.status.creation_date #=> Time
resp.domain_config.aiml_options.status.update_date #=> Time
resp.domain_config.aiml_options.status.update_version #=> Integer
resp.domain_config.aiml_options.status.state #=> String, one of "RequiresIndexDocuments", "Processing", "Active"
resp.domain_config.aiml_options.status.pending_deletion #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    Name of the OpenSearch Service domain configuration that you want to describe.

Returns:

See Also:



2110
2111
2112
2113
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2110

def describe_domain_config(params = {}, options = {})
  req = build_request(:describe_domain_config, params)
  req.send_request(options)
end

#describe_domain_health(params = {}) ⇒ Types::DescribeDomainHealthResponse

Returns information about domain and node health, the standby Availability Zone, number of nodes per Availability Zone, and shard count per node.

Examples:

Request syntax with placeholder values


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

Response structure


resp.domain_state #=> String, one of "Active", "Processing", "NotAvailable"
resp.availability_zone_count #=> String
resp.active_availability_zone_count #=> String
resp.stand_by_availability_zone_count #=> String
resp.data_node_count #=> String
resp.dedicated_master #=> Boolean
resp.master_eligible_node_count #=> String
resp.warm_node_count #=> String
resp.master_node #=> String, one of "Available", "UnAvailable"
resp.cluster_health #=> String, one of "Red", "Yellow", "Green", "NotAvailable"
resp.total_shards #=> String
resp.total_un_assigned_shards #=> String
resp.environment_information #=> Array
resp.environment_information[0].availability_zone_information #=> Array
resp.environment_information[0].availability_zone_information[0].availability_zone_name #=> String
resp.environment_information[0].availability_zone_information[0].zone_status #=> String, one of "Active", "StandBy", "NotAvailable"
resp.environment_information[0].availability_zone_information[0].configured_data_node_count #=> String
resp.environment_information[0].availability_zone_information[0].available_data_node_count #=> String
resp.environment_information[0].availability_zone_information[0].total_shards #=> String
resp.environment_information[0].availability_zone_information[0].total_un_assigned_shards #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

Returns:

See Also:



2171
2172
2173
2174
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2171

def describe_domain_health(params = {}, options = {})
  req = build_request(:describe_domain_health, params)
  req.send_request(options)
end

#describe_domain_nodes(params = {}) ⇒ Types::DescribeDomainNodesResponse

Returns information about domain and nodes, including data nodes, master nodes, ultrawarm nodes, Availability Zone(s), standby nodes, node configurations, and node states.

Examples:

Request syntax with placeholder values


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

Response structure


resp.domain_nodes_status_list #=> Array
resp.domain_nodes_status_list[0].node_id #=> String
resp.domain_nodes_status_list[0].node_type #=> String, one of "Data", "Ultrawarm", "Master"
resp.domain_nodes_status_list[0].availability_zone #=> String
resp.domain_nodes_status_list[0].instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_nodes_status_list[0].node_status #=> String, one of "Active", "StandBy", "NotAvailable"
resp.domain_nodes_status_list[0].storage_type #=> String
resp.domain_nodes_status_list[0].storage_volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_nodes_status_list[0].storage_size #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

Returns:

See Also:



2209
2210
2211
2212
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2209

def describe_domain_nodes(params = {}, options = {})
  req = build_request(:describe_domain_nodes, params)
  req.send_request(options)
end

#describe_domains(params = {}) ⇒ Types::DescribeDomainsResponse

Returns domain configuration information about the specified Amazon OpenSearch Service domains.

Examples:

Request syntax with placeholder values


resp = client.describe_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 #=> Boolean
resp.domain_status_list[0].deleted #=> Boolean
resp.domain_status_list[0].endpoint #=> String
resp.domain_status_list[0].endpoint_v2 #=> String
resp.domain_status_list[0].endpoints #=> Hash
resp.domain_status_list[0].endpoints["String"] #=> String
resp.domain_status_list[0].domain_endpoint_v2_hosted_zone_id #=> String
resp.domain_status_list[0].processing #=> Boolean
resp.domain_status_list[0].upgrade_processing #=> Boolean
resp.domain_status_list[0].engine_version #=> String
resp.domain_status_list[0].cluster_config.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status_list[0].cluster_config.instance_count #=> Integer
resp.domain_status_list[0].cluster_config.dedicated_master_enabled #=> Boolean
resp.domain_status_list[0].cluster_config.zone_awareness_enabled #=> Boolean
resp.domain_status_list[0].cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.domain_status_list[0].cluster_config.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.domain_status_list[0].cluster_config.dedicated_master_count #=> Integer
resp.domain_status_list[0].cluster_config.warm_enabled #=> Boolean
resp.domain_status_list[0].cluster_config.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.domain_status_list[0].cluster_config.warm_count #=> Integer
resp.domain_status_list[0].cluster_config.cold_storage_options.enabled #=> Boolean
resp.domain_status_list[0].cluster_config.multi_az_with_standby_enabled #=> Boolean
resp.domain_status_list[0].ebs_options.ebs_enabled #=> Boolean
resp.domain_status_list[0].ebs_options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.domain_status_list[0].ebs_options.volume_size #=> Integer
resp.domain_status_list[0].ebs_options.iops #=> Integer
resp.domain_status_list[0].ebs_options.throughput #=> Integer
resp.domain_status_list[0].access_policies #=> String
resp.domain_status_list[0].ip_address_type #=> String, one of "ipv4", "dualstack"
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 #=> Boolean
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 #=> Boolean
resp.domain_status_list[0].encryption_at_rest_options.kms_key_id #=> String
resp.domain_status_list[0].node_to_node_encryption_options.enabled #=> Boolean
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 #=> Boolean
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 #=> Boolean
resp.domain_status_list[0].service_software_options.cancellable #=> Boolean
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 #=> Boolean
resp.domain_status_list[0].domain_endpoint_options.enforce_https #=> Boolean
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", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.domain_status_list[0].domain_endpoint_options.custom_endpoint_enabled #=> Boolean
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 #=> Boolean
resp.domain_status_list[0].advanced_security_options.internal_user_database_enabled #=> Boolean
resp.domain_status_list[0].advanced_security_options.saml_options.enabled #=> Boolean
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
resp.domain_status_list[0].advanced_security_options.jwt_options.enabled #=> Boolean
resp.domain_status_list[0].advanced_security_options.jwt_options.subject_key #=> String
resp.domain_status_list[0].advanced_security_options.jwt_options.roles_key #=> String
resp.domain_status_list[0].advanced_security_options.jwt_options.public_key #=> String
resp.domain_status_list[0].advanced_security_options.anonymous_auth_disable_date #=> Time
resp.domain_status_list[0].advanced_security_options.anonymous_auth_enabled #=> Boolean
resp.domain_status_list[0].auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.domain_status_list[0].auto_tune_options.error_message #=> String
resp.domain_status_list[0].auto_tune_options.use_off_peak_window #=> Boolean
resp.domain_status_list[0].change_progress_details.change_id #=> String
resp.domain_status_list[0].change_progress_details.message #=> String
resp.domain_status_list[0].change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.domain_status_list[0].change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.domain_status_list[0].change_progress_details.start_time #=> Time
resp.domain_status_list[0].change_progress_details.last_updated_time #=> Time
resp.domain_status_list[0].off_peak_window_options.enabled #=> Boolean
resp.domain_status_list[0].off_peak_window_options.off_peak_window.window_start_time.hours #=> Integer
resp.domain_status_list[0].off_peak_window_options.off_peak_window.window_start_time.minutes #=> Integer
resp.domain_status_list[0].software_update_options.auto_software_update_enabled #=> Boolean
resp.domain_status_list[0].domain_processing_status #=> String, one of "Creating", "Active", "Modifying", "UpgradingEngineVersion", "UpdatingServiceSoftware", "Isolated", "Deleting"
resp.domain_status_list[0].modifying_properties #=> Array
resp.domain_status_list[0].modifying_properties[0].name #=> String
resp.domain_status_list[0].modifying_properties[0].active_value #=> String
resp.domain_status_list[0].modifying_properties[0].pending_value #=> String
resp.domain_status_list[0].modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.domain_status_list[0].aiml_options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.domain_status_list[0].aiml_options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_names (required, Array<String>)

    Array of OpenSearch Service domain names that you want information about. You must specify at least one domain name.

Returns:

See Also:



2339
2340
2341
2342
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2339

def describe_domains(params = {}, options = {})
  req = build_request(:describe_domains, params)
  req.send_request(options)
end

#describe_dry_run_progress(params = {}) ⇒ Types::DescribeDryRunProgressResponse

Describes the progress of a pre-update dry run analysis on an Amazon OpenSearch Service domain. For more information, see Determining whether a change will cause a blue/green deployment.

Examples:

Request syntax with placeholder values


resp = client.describe_dry_run_progress({
  domain_name: "DomainName", # required
  dry_run_id: "GUID",
  load_dry_run_config: false,
})

Response structure


resp.dry_run_progress_status.dry_run_id #=> String
resp.dry_run_progress_status.dry_run_status #=> String
resp.dry_run_progress_status.creation_date #=> String
resp.dry_run_progress_status.update_date #=> String
resp.dry_run_progress_status.validation_failures #=> Array
resp.dry_run_progress_status.validation_failures[0].code #=> String
resp.dry_run_progress_status.validation_failures[0].message #=> String
resp.dry_run_config.domain_id #=> String
resp.dry_run_config.domain_name #=> String
resp.dry_run_config.arn #=> String
resp.dry_run_config.created #=> Boolean
resp.dry_run_config.deleted #=> Boolean
resp.dry_run_config.endpoint #=> String
resp.dry_run_config.endpoint_v2 #=> String
resp.dry_run_config.endpoints #=> Hash
resp.dry_run_config.endpoints["String"] #=> String
resp.dry_run_config.domain_endpoint_v2_hosted_zone_id #=> String
resp.dry_run_config.processing #=> Boolean
resp.dry_run_config.upgrade_processing #=> Boolean
resp.dry_run_config.engine_version #=> String
resp.dry_run_config.cluster_config.instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.dry_run_config.cluster_config.instance_count #=> Integer
resp.dry_run_config.cluster_config.dedicated_master_enabled #=> Boolean
resp.dry_run_config.cluster_config.zone_awareness_enabled #=> Boolean
resp.dry_run_config.cluster_config.zone_awareness_config.availability_zone_count #=> Integer
resp.dry_run_config.cluster_config.dedicated_master_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.dry_run_config.cluster_config.dedicated_master_count #=> Integer
resp.dry_run_config.cluster_config.warm_enabled #=> Boolean
resp.dry_run_config.cluster_config.warm_type #=> String, one of "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search"
resp.dry_run_config.cluster_config.warm_count #=> Integer
resp.dry_run_config.cluster_config.cold_storage_options.enabled #=> Boolean
resp.dry_run_config.cluster_config.multi_az_with_standby_enabled #=> Boolean
resp.dry_run_config.ebs_options.ebs_enabled #=> Boolean
resp.dry_run_config.ebs_options.volume_type #=> String, one of "standard", "gp2", "io1", "gp3"
resp.dry_run_config.ebs_options.volume_size #=> Integer
resp.dry_run_config.ebs_options.iops #=> Integer
resp.dry_run_config.ebs_options.throughput #=> Integer
resp.dry_run_config.access_policies #=> String
resp.dry_run_config.ip_address_type #=> String, one of "ipv4", "dualstack"
resp.dry_run_config.snapshot_options.automated_snapshot_start_hour #=> Integer
resp.dry_run_config.vpc_options.vpc_id #=> String
resp.dry_run_config.vpc_options.subnet_ids #=> Array
resp.dry_run_config.vpc_options.subnet_ids[0] #=> String
resp.dry_run_config.vpc_options.availability_zones #=> Array
resp.dry_run_config.vpc_options.availability_zones[0] #=> String
resp.dry_run_config.vpc_options.security_group_ids #=> Array
resp.dry_run_config.vpc_options.security_group_ids[0] #=> String
resp.dry_run_config.cognito_options.enabled #=> Boolean
resp.dry_run_config.cognito_options.user_pool_id #=> String
resp.dry_run_config.cognito_options.identity_pool_id #=> String
resp.dry_run_config.cognito_options.role_arn #=> String
resp.dry_run_config.encryption_at_rest_options.enabled #=> Boolean
resp.dry_run_config.encryption_at_rest_options.kms_key_id #=> String
resp.dry_run_config.node_to_node_encryption_options.enabled #=> Boolean
resp.dry_run_config.advanced_options #=> Hash
resp.dry_run_config.advanced_options["String"] #=> String
resp.dry_run_config.log_publishing_options #=> Hash
resp.dry_run_config.log_publishing_options["LogType"].cloud_watch_logs_log_group_arn #=> String
resp.dry_run_config.log_publishing_options["LogType"].enabled #=> Boolean
resp.dry_run_config.service_software_options.current_version #=> String
resp.dry_run_config.service_software_options.new_version #=> String
resp.dry_run_config.service_software_options.update_available #=> Boolean
resp.dry_run_config.service_software_options.cancellable #=> Boolean
resp.dry_run_config.service_software_options.update_status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.dry_run_config.service_software_options.description #=> String
resp.dry_run_config.service_software_options.automated_update_date #=> Time
resp.dry_run_config.service_software_options.optional_deployment #=> Boolean
resp.dry_run_config.domain_endpoint_options.enforce_https #=> Boolean
resp.dry_run_config.domain_endpoint_options.tls_security_policy #=> String, one of "Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07", "Policy-Min-TLS-1-2-PFS-2023-10"
resp.dry_run_config.domain_endpoint_options.custom_endpoint_enabled #=> Boolean
resp.dry_run_config.domain_endpoint_options.custom_endpoint #=> String
resp.dry_run_config.domain_endpoint_options.custom_endpoint_certificate_arn #=> String
resp.dry_run_config.advanced_security_options.enabled #=> Boolean
resp.dry_run_config.advanced_security_options.internal_user_database_enabled #=> Boolean
resp.dry_run_config.advanced_security_options.saml_options.enabled #=> Boolean
resp.dry_run_config.advanced_security_options.saml_options.idp. #=> String
resp.dry_run_config.advanced_security_options.saml_options.idp.entity_id #=> String
resp.dry_run_config.advanced_security_options.saml_options.subject_key #=> String
resp.dry_run_config.advanced_security_options.saml_options.roles_key #=> String
resp.dry_run_config.advanced_security_options.saml_options.session_timeout_minutes #=> Integer
resp.dry_run_config.advanced_security_options.jwt_options.enabled #=> Boolean
resp.dry_run_config.advanced_security_options.jwt_options.subject_key #=> String
resp.dry_run_config.advanced_security_options.jwt_options.roles_key #=> String
resp.dry_run_config.advanced_security_options.jwt_options.public_key #=> String
resp.dry_run_config.advanced_security_options.anonymous_auth_disable_date #=> Time
resp.dry_run_config.advanced_security_options.anonymous_auth_enabled #=> Boolean
resp.dry_run_config.auto_tune_options.state #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "DISABLED_AND_ROLLBACK_SCHEDULED", "DISABLED_AND_ROLLBACK_IN_PROGRESS", "DISABLED_AND_ROLLBACK_COMPLETE", "DISABLED_AND_ROLLBACK_ERROR", "ERROR"
resp.dry_run_config.auto_tune_options.error_message #=> String
resp.dry_run_config.auto_tune_options.use_off_peak_window #=> Boolean
resp.dry_run_config.change_progress_details.change_id #=> String
resp.dry_run_config.change_progress_details.message #=> String
resp.dry_run_config.change_progress_details.config_change_status #=> String, one of "Pending", "Initializing", "Validating", "ValidationFailed", "ApplyingChanges", "Completed", "PendingUserInput", "Cancelled"
resp.dry_run_config.change_progress_details.initiated_by #=> String, one of "CUSTOMER", "SERVICE"
resp.dry_run_config.change_progress_details.start_time #=> Time
resp.dry_run_config.change_progress_details.last_updated_time #=> Time
resp.dry_run_config.off_peak_window_options.enabled #=> Boolean
resp.dry_run_config.off_peak_window_options.off_peak_window.window_start_time.hours #=> Integer
resp.dry_run_config.off_peak_window_options.off_peak_window.window_start_time.minutes #=> Integer
resp.dry_run_config.software_update_options.auto_software_update_enabled #=> Boolean
resp.dry_run_config.domain_processing_status #=> String, one of "Creating", "Active", "Modifying", "UpgradingEngineVersion", "UpdatingServiceSoftware", "Isolated", "Deleting"
resp.dry_run_config.modifying_properties #=> Array
resp.dry_run_config.modifying_properties[0].name #=> String
resp.dry_run_config.modifying_properties[0].active_value #=> String
resp.dry_run_config.modifying_properties[0].pending_value #=> String
resp.dry_run_config.modifying_properties[0].value_type #=> String, one of "PLAIN_TEXT", "STRINGIFIED_JSON"
resp.dry_run_config.aiml_options.natural_language_query_generation_options.desired_state #=> String, one of "ENABLED", "DISABLED"
resp.dry_run_config.aiml_options.natural_language_query_generation_options.current_state #=> String, one of "NOT_ENABLED", "ENABLE_COMPLETE", "ENABLE_IN_PROGRESS", "ENABLE_FAILED", "DISABLE_COMPLETE", "DISABLE_IN_PROGRESS", "DISABLE_FAILED"
resp.dry_run_results.deployment_type #=> String
resp.dry_run_results.message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :dry_run_id (String)

    The unique identifier of the dry run.

  • :load_dry_run_config (Boolean)

    Whether to include the configuration of the dry run in the response. The configuration specifies the updates that you're planning to make on the domain.

Returns:

See Also:



2493
2494
2495
2496
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2493

def describe_dry_run_progress(params = {}, options = {})
  req = build_request(:describe_dry_run_progress, params)
  req.send_request(options)
end

#describe_inbound_connections(params = {}) ⇒ Types::DescribeInboundConnectionsResponse

Lists all the inbound cross-cluster search connections for a destination (remote) Amazon OpenSearch Service domain. For more information, see Cross-cluster search for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.connections #=> Array
resp.connections[0].local_domain_info.aws_domain_information.owner_id #=> String
resp.connections[0].local_domain_info.aws_domain_information.domain_name #=> String
resp.connections[0].local_domain_info.aws_domain_information.region #=> String
resp.connections[0].remote_domain_info.aws_domain_information.owner_id #=> String
resp.connections[0].remote_domain_info.aws_domain_information.domain_name #=> String
resp.connections[0].remote_domain_info.aws_domain_information.region #=> String
resp.connections[0].connection_id #=> String
resp.connections[0].connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connections[0].connection_status.message #=> String
resp.connections[0].connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

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

    A list of filters used to match properties for inbound cross-cluster connections.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribeInboundConnections operation returns a nextToken, you can include the returned nextToken in subsequent DescribeInboundConnections operations, which returns results in the next page.

Returns:

See Also:



2560
2561
2562
2563
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2560

def describe_inbound_connections(params = {}, options = {})
  req = build_request(:describe_inbound_connections, params)
  req.send_request(options)
end

#describe_instance_type_limits(params = {}) ⇒ Types::DescribeInstanceTypeLimitsResponse

Describes the instance count, storage, and master node limits for a given OpenSearch or Elasticsearch version and instance type.

Examples:

Request syntax with placeholder values


resp = client.describe_instance_type_limits({
  domain_name: "DomainName",
  instance_type: "m3.medium.search", # required, accepts m3.medium.search, m3.large.search, m3.xlarge.search, m3.2xlarge.search, m4.large.search, m4.xlarge.search, m4.2xlarge.search, m4.4xlarge.search, m4.10xlarge.search, m5.large.search, m5.xlarge.search, m5.2xlarge.search, m5.4xlarge.search, m5.12xlarge.search, m5.24xlarge.search, r5.large.search, r5.xlarge.search, r5.2xlarge.search, r5.4xlarge.search, r5.12xlarge.search, r5.24xlarge.search, c5.large.search, c5.xlarge.search, c5.2xlarge.search, c5.4xlarge.search, c5.9xlarge.search, c5.18xlarge.search, t3.nano.search, t3.micro.search, t3.small.search, t3.medium.search, t3.large.search, t3.xlarge.search, t3.2xlarge.search, or1.medium.search, or1.large.search, or1.xlarge.search, or1.2xlarge.search, or1.4xlarge.search, or1.8xlarge.search, or1.12xlarge.search, or1.16xlarge.search, ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search, t2.micro.search, t2.small.search, t2.medium.search, r3.large.search, r3.xlarge.search, r3.2xlarge.search, r3.4xlarge.search, r3.8xlarge.search, i2.xlarge.search, i2.2xlarge.search, d2.xlarge.search, d2.2xlarge.search, d2.4xlarge.search, d2.8xlarge.search, c4.large.search, c4.xlarge.search, c4.2xlarge.search, c4.4xlarge.search, c4.8xlarge.search, r4.large.search, r4.xlarge.search, r4.2xlarge.search, r4.4xlarge.search, r4.8xlarge.search, r4.16xlarge.search, i3.large.search, i3.xlarge.search, i3.2xlarge.search, i3.4xlarge.search, i3.8xlarge.search, i3.16xlarge.search, r6g.large.search, r6g.xlarge.search, r6g.2xlarge.search, r6g.4xlarge.search, r6g.8xlarge.search, r6g.12xlarge.search, m6g.large.search, m6g.xlarge.search, m6g.2xlarge.search, m6g.4xlarge.search, m6g.8xlarge.search, m6g.12xlarge.search, c6g.large.search, c6g.xlarge.search, c6g.2xlarge.search, c6g.4xlarge.search, c6g.8xlarge.search, c6g.12xlarge.search, r6gd.large.search, r6gd.xlarge.search, r6gd.2xlarge.search, r6gd.4xlarge.search, r6gd.8xlarge.search, r6gd.12xlarge.search, r6gd.16xlarge.search, t4g.small.search, t4g.medium.search
  engine_version: "VersionString", # 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

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (String)

    The name of the domain. Only specify if you need the limits for an existing domain.

  • :instance_type (required, String)

    The OpenSearch Service instance type for which you need limit information.

  • :engine_version (required, String)

    Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.

Returns:

See Also:



2614
2615
2616
2617
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2614

def describe_instance_type_limits(params = {}, options = {})
  req = build_request(:describe_instance_type_limits, params)
  req.send_request(options)
end

#describe_outbound_connections(params = {}) ⇒ Types::DescribeOutboundConnectionsResponse

Lists all the outbound cross-cluster connections for a local (source) Amazon OpenSearch Service domain. For more information, see Cross-cluster search for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.connections #=> Array
resp.connections[0].local_domain_info.aws_domain_information.owner_id #=> String
resp.connections[0].local_domain_info.aws_domain_information.domain_name #=> String
resp.connections[0].local_domain_info.aws_domain_information.region #=> String
resp.connections[0].remote_domain_info.aws_domain_information.owner_id #=> String
resp.connections[0].remote_domain_info.aws_domain_information.domain_name #=> String
resp.connections[0].remote_domain_info.aws_domain_information.region #=> String
resp.connections[0].connection_id #=> String
resp.connections[0].connection_alias #=> String
resp.connections[0].connection_status.status_code #=> String, one of "VALIDATING", "VALIDATION_FAILED", "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connections[0].connection_status.message #=> String
resp.connections[0].connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"
resp.connections[0].connection_properties.endpoint #=> String
resp.connections[0].connection_properties.cross_cluster_search.skip_unavailable #=> String, one of "ENABLED", "DISABLED"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

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

    List of filter names and values that you can use for requests.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribeOutboundConnections operation returns a nextToken, you can include the returned nextToken in subsequent DescribeOutboundConnections operations, which returns results in the next page.

Returns:

See Also:



2682
2683
2684
2685
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2682

def describe_outbound_connections(params = {}, options = {})
  req = build_request(:describe_outbound_connections, params)
  req.send_request(options)
end

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

Describes all packages available to OpenSearch Service. For more information, see Custom packages for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_packages({
  filters: [
    {
      name: "PackageID", # accepts PackageID, PackageName, PackageStatus, PackageType, EngineVersion
      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", "ZIP-PLUGIN"
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.package_details_list[0].engine_version #=> String
resp.package_details_list[0].available_plugin_properties.name #=> String
resp.package_details_list[0].available_plugin_properties.description #=> String
resp.package_details_list[0].available_plugin_properties.version #=> String
resp.package_details_list[0].available_plugin_properties.class_name #=> String
resp.package_details_list[0].available_plugin_properties.uncompressed_size_in_bytes #=> Integer
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

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

    Only returns packages that match the DescribePackagesFilterList values.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribePackageFilters operation returns a nextToken, you can include the returned nextToken in subsequent DescribePackageFilters operations, which returns results in the next page.

Returns:

See Also:



2753
2754
2755
2756
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2753

def describe_packages(params = {}, options = {})
  req = build_request(:describe_packages, params)
  req.send_request(options)
end

#describe_reserved_instance_offerings(params = {}) ⇒ Types::DescribeReservedInstanceOfferingsResponse

Describes the available Amazon OpenSearch Service Reserved Instance offerings for a given Region. For more information, see Reserved Instances in Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.next_token #=> String
resp.reserved_instance_offerings #=> Array
resp.reserved_instance_offerings[0].reserved_instance_offering_id #=> String
resp.reserved_instance_offerings[0].instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.reserved_instance_offerings[0].duration #=> Integer
resp.reserved_instance_offerings[0].fixed_price #=> Float
resp.reserved_instance_offerings[0].usage_price #=> Float
resp.reserved_instance_offerings[0].currency_code #=> String
resp.reserved_instance_offerings[0].payment_option #=> String, one of "ALL_UPFRONT", "PARTIAL_UPFRONT", "NO_UPFRONT"
resp.reserved_instance_offerings[0].recurring_charges #=> Array
resp.reserved_instance_offerings[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_instance_offerings[0].recurring_charges[0].recurring_charge_frequency #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :reserved_instance_offering_id (String)

    The Reserved Instance identifier filter value. Use this parameter to show only the available instance types that match the specified reservation identifier.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribeReservedInstanceOfferings operation returns a nextToken, you can include the returned nextToken in subsequent DescribeReservedInstanceOfferings operations, which returns results in the next page.

Returns:

See Also:



2815
2816
2817
2818
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2815

def describe_reserved_instance_offerings(params = {}, options = {})
  req = build_request(:describe_reserved_instance_offerings, params)
  req.send_request(options)
end

#describe_reserved_instances(params = {}) ⇒ Types::DescribeReservedInstancesResponse

Describes the Amazon OpenSearch Service instances that you have reserved in a given Region. For more information, see Reserved Instances in Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.next_token #=> String
resp.reserved_instances #=> Array
resp.reserved_instances[0].reservation_name #=> String
resp.reserved_instances[0].reserved_instance_id #=> String
resp.reserved_instances[0].billing_subscription_id #=> Integer
resp.reserved_instances[0].reserved_instance_offering_id #=> String
resp.reserved_instances[0].instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.reserved_instances[0].start_time #=> Time
resp.reserved_instances[0].duration #=> Integer
resp.reserved_instances[0].fixed_price #=> Float
resp.reserved_instances[0].usage_price #=> Float
resp.reserved_instances[0].currency_code #=> String
resp.reserved_instances[0].instance_count #=> Integer
resp.reserved_instances[0].state #=> String
resp.reserved_instances[0].payment_option #=> String, one of "ALL_UPFRONT", "PARTIAL_UPFRONT", "NO_UPFRONT"
resp.reserved_instances[0].recurring_charges #=> Array
resp.reserved_instances[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_instances[0].recurring_charges[0].recurring_charge_frequency #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :reserved_instance_id (String)

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

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial DescribeReservedInstances operation returns a nextToken, you can include the returned nextToken in subsequent DescribeReservedInstances operations, which returns results in the next page.

Returns:

See Also:



2883
2884
2885
2886
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2883

def describe_reserved_instances(params = {}, options = {})
  req = build_request(:describe_reserved_instances, params)
  req.send_request(options)
end

#describe_vpc_endpoints(params = {}) ⇒ Types::DescribeVpcEndpointsResponse

Describes one or more Amazon OpenSearch Service-managed VPC endpoints.

Examples:

Request syntax with placeholder values


resp = client.describe_vpc_endpoints({
  vpc_endpoint_ids: ["VpcEndpointId"], # required
})

Response structure


resp.vpc_endpoints #=> Array
resp.vpc_endpoints[0].vpc_endpoint_id #=> String
resp.vpc_endpoints[0].vpc_endpoint_owner #=> String
resp.vpc_endpoints[0].domain_arn #=> String
resp.vpc_endpoints[0].vpc_options.vpc_id #=> String
resp.vpc_endpoints[0].vpc_options.subnet_ids #=> Array
resp.vpc_endpoints[0].vpc_options.subnet_ids[0] #=> String
resp.vpc_endpoints[0].vpc_options.availability_zones #=> Array
resp.vpc_endpoints[0].vpc_options.availability_zones[0] #=> String
resp.vpc_endpoints[0].vpc_options.security_group_ids #=> Array
resp.vpc_endpoints[0].vpc_options.security_group_ids[0] #=> String
resp.vpc_endpoints[0].status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.vpc_endpoints[0].endpoint #=> String
resp.vpc_endpoint_errors #=> Array
resp.vpc_endpoint_errors[0].vpc_endpoint_id #=> String
resp.vpc_endpoint_errors[0].error_code #=> String, one of "ENDPOINT_NOT_FOUND", "SERVER_ERROR"
resp.vpc_endpoint_errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :vpc_endpoint_ids (required, Array<String>)

    The unique identifiers of the endpoints to get information about.

Returns:

See Also:



2928
2929
2930
2931
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2928

def describe_vpc_endpoints(params = {}, options = {})
  req = build_request(:describe_vpc_endpoints, params)
  req.send_request(options)
end

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

Removes a package from the specified Amazon OpenSearch Service domain. The package can't be in use with any OpenSearch index for the dissociation to succeed. The package is still available in OpenSearch Service for association later. For more information, see Custom packages for Amazon OpenSearch Service.

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", "ZIP-PLUGIN"
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

Parameters:

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

    ({})

Options Hash (params):

  • :package_id (required, String)

    Internal ID of the package to dissociate from the domain. Use ListPackagesForDomain to find this value.

  • :domain_name (required, String)

    Name of the domain to dissociate the package from.

Returns:

See Also:



2978
2979
2980
2981
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 2978

def dissociate_package(params = {}, options = {})
  req = build_request(:dissociate_package, params)
  req.send_request(options)
end

#get_compatible_versions(params = {}) ⇒ Types::GetCompatibleVersionsResponse

Returns a map of OpenSearch or Elasticsearch versions and the versions you can upgrade them to.

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (String)

    The name of an existing domain. Provide this parameter to limit the results to a single domain.

Returns:

See Also:



3011
3012
3013
3014
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3011

def get_compatible_versions(params = {}, options = {})
  req = build_request(:get_compatible_versions, params)
  req.send_request(options)
end

#get_data_source(params = {}) ⇒ Types::GetDataSourceResponse

Retrieves information about a direct query data source.

Examples:

Request syntax with placeholder values


resp = client.get_data_source({
  domain_name: "DomainName", # required
  name: "DataSourceName", # required
})

Response structure


resp.data_source_type.s3_glue_data_catalog.role_arn #=> String
resp.name #=> String
resp.description #=> String
resp.status #=> String, one of "ACTIVE", "DISABLED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :name (required, String)

    The name of the data source to get information about.

Returns:

See Also:



3049
3050
3051
3052
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3049

def get_data_source(params = {}, options = {})
  req = build_request(:get_data_source, params)
  req.send_request(options)
end

#get_domain_maintenance_status(params = {}) ⇒ Types::GetDomainMaintenanceStatusResponse

The status of the maintenance action.

Examples:

Request syntax with placeholder values


resp = client.get_domain_maintenance_status({
  domain_name: "DomainName", # required
  maintenance_id: "RequestId", # required
})

Response structure


resp.status #=> String, one of "PENDING", "IN_PROGRESS", "COMPLETED", "FAILED", "TIMED_OUT"
resp.status_message #=> String
resp.node_id #=> String
resp.action #=> String, one of "REBOOT_NODE", "RESTART_SEARCH_PROCESS", "RESTART_DASHBOARD"
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :maintenance_id (required, String)

    The request ID of the maintenance action.

Returns:

See Also:



3091
3092
3093
3094
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3091

def get_domain_maintenance_status(params = {}, options = {})
  req = build_request(:get_domain_maintenance_status, params)
  req.send_request(options)
end

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

Returns a list of Amazon OpenSearch Service package versions, along with their creation time, commit message, and plugin properties (if the package is a zip plugin package). For more information, see Custom packages for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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.package_version_history_list[0].plugin_properties.name #=> String
resp.package_version_history_list[0].plugin_properties.description #=> String
resp.package_version_history_list[0].plugin_properties.version #=> String
resp.package_version_history_list[0].plugin_properties.class_name #=> String
resp.package_version_history_list[0].plugin_properties.uncompressed_size_in_bytes #=> Integer
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :package_id (required, String)

    The unique identifier of the package.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial GetPackageVersionHistory operation returns a nextToken, you can include the returned nextToken in subsequent GetPackageVersionHistory operations, which returns results in the next page.

Returns:

See Also:



3152
3153
3154
3155
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3152

def get_package_version_history(params = {}, options = {})
  req = build_request(:get_package_version_history, params)
  req.send_request(options)
end

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

Retrieves the complete history of the last 10 upgrades performed on an Amazon OpenSearch Service domain.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of an existing domain.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial GetUpgradeHistory operation returns a nextToken, you can include the returned nextToken in subsequent GetUpgradeHistory operations, which returns results in the next page.

Returns:

See Also:



3206
3207
3208
3209
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3206

def get_upgrade_history(params = {}, options = {})
  req = build_request(:get_upgrade_history, params)
  req.send_request(options)
end

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

Returns the most recent status of the last upgrade or upgrade eligibility check performed on an Amazon OpenSearch Service 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

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The domain of the domain to get upgrade status information for.

Returns:

See Also:



3239
3240
3241
3242
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3239

def get_upgrade_status(params = {}, options = {})
  req = build_request(:get_upgrade_status, params)
  req.send_request(options)
end

#list_data_sources(params = {}) ⇒ Types::ListDataSourcesResponse

Lists direct-query data sources for a specific domain. For more information, see For more information, see Working with Amazon OpenSearch Service direct queries with Amazon S3.

Examples:

Request syntax with placeholder values


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

Response structure


resp.data_sources #=> Array
resp.data_sources[0].data_source_type.s3_glue_data_catalog.role_arn #=> String
resp.data_sources[0].name #=> String
resp.data_sources[0].description #=> String
resp.data_sources[0].status #=> String, one of "ACTIVE", "DISABLED"

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

Returns:

See Also:



3277
3278
3279
3280
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3277

def list_data_sources(params = {}, options = {})
  req = build_request(:list_data_sources, params)
  req.send_request(options)
end

#list_domain_maintenances(params = {}) ⇒ Types::ListDomainMaintenancesResponse

A list of maintenance actions for the domain.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_domain_maintenances({
  domain_name: "DomainName", # required
  action: "REBOOT_NODE", # accepts REBOOT_NODE, RESTART_SEARCH_PROCESS, RESTART_DASHBOARD
  status: "PENDING", # accepts PENDING, IN_PROGRESS, COMPLETED, FAILED, TIMED_OUT
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.domain_maintenances #=> Array
resp.domain_maintenances[0].maintenance_id #=> String
resp.domain_maintenances[0].domain_name #=> String
resp.domain_maintenances[0].action #=> String, one of "REBOOT_NODE", "RESTART_SEARCH_PROCESS", "RESTART_DASHBOARD"
resp.domain_maintenances[0].node_id #=> String
resp.domain_maintenances[0].status #=> String, one of "PENDING", "IN_PROGRESS", "COMPLETED", "FAILED", "TIMED_OUT"
resp.domain_maintenances[0].status_message #=> String
resp.domain_maintenances[0].created_at #=> Time
resp.domain_maintenances[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :action (String)

    The name of the action.

  • :status (String)

    The status of the action.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListDomainMaintenances operation returns a nextToken, include the returned nextToken in subsequent ListDomainMaintenances operations, which returns results in the next page.

Returns:

See Also:



3337
3338
3339
3340
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3337

def list_domain_maintenances(params = {}, options = {})
  req = build_request(:list_domain_maintenances, params)
  req.send_request(options)
end

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

Returns the names of all Amazon OpenSearch Service domains owned by the current user in the active Region.

Examples:

Request syntax with placeholder values


resp = client.list_domain_names({
  engine_type: "OpenSearch", # accepts OpenSearch, Elasticsearch
})

Response structure


resp.domain_names #=> Array
resp.domain_names[0].domain_name #=> String
resp.domain_names[0].engine_type #=> String, one of "OpenSearch", "Elasticsearch"

Parameters:

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

    ({})

Options Hash (params):

  • :engine_type (String)

    Filters the output by domain engine type.

Returns:

See Also:



3368
3369
3370
3371
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3368

def list_domain_names(params = {}, options = {})
  req = build_request(:list_domain_names, params)
  req.send_request(options)
end

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

Lists all Amazon OpenSearch Service domains associated with a given package. For more information, see Custom packages for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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", "ZIP-PLUGIN"
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

Parameters:

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

    ({})

Options Hash (params):

  • :package_id (required, String)

    The unique identifier of the package for which to list associated domains.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListDomainsForPackage operation returns a nextToken, you can include the returned nextToken in subsequent ListDomainsForPackage operations, which returns results in the next page.

Returns:

See Also:



3429
3430
3431
3432
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3429

def list_domains_for_package(params = {}, options = {})
  req = build_request(:list_domains_for_package, params)
  req.send_request(options)
end

#list_instance_type_details(params = {}) ⇒ Types::ListInstanceTypeDetailsResponse

Lists all instance types and available features for a given OpenSearch or Elasticsearch version.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_instance_type_details({
  engine_version: "VersionString", # required
  domain_name: "DomainName",
  max_results: 1,
  next_token: "NextToken",
  retrieve_a_zs: false,
  instance_type: "InstanceTypeString",
})

Response structure


resp.instance_type_details #=> Array
resp.instance_type_details[0].instance_type #=> String, one of "m3.medium.search", "m3.large.search", "m3.xlarge.search", "m3.2xlarge.search", "m4.large.search", "m4.xlarge.search", "m4.2xlarge.search", "m4.4xlarge.search", "m4.10xlarge.search", "m5.large.search", "m5.xlarge.search", "m5.2xlarge.search", "m5.4xlarge.search", "m5.12xlarge.search", "m5.24xlarge.search", "r5.large.search", "r5.xlarge.search", "r5.2xlarge.search", "r5.4xlarge.search", "r5.12xlarge.search", "r5.24xlarge.search", "c5.large.search", "c5.xlarge.search", "c5.2xlarge.search", "c5.4xlarge.search", "c5.9xlarge.search", "c5.18xlarge.search", "t3.nano.search", "t3.micro.search", "t3.small.search", "t3.medium.search", "t3.large.search", "t3.xlarge.search", "t3.2xlarge.search", "or1.medium.search", "or1.large.search", "or1.xlarge.search", "or1.2xlarge.search", "or1.4xlarge.search", "or1.8xlarge.search", "or1.12xlarge.search", "or1.16xlarge.search", "ultrawarm1.medium.search", "ultrawarm1.large.search", "ultrawarm1.xlarge.search", "t2.micro.search", "t2.small.search", "t2.medium.search", "r3.large.search", "r3.xlarge.search", "r3.2xlarge.search", "r3.4xlarge.search", "r3.8xlarge.search", "i2.xlarge.search", "i2.2xlarge.search", "d2.xlarge.search", "d2.2xlarge.search", "d2.4xlarge.search", "d2.8xlarge.search", "c4.large.search", "c4.xlarge.search", "c4.2xlarge.search", "c4.4xlarge.search", "c4.8xlarge.search", "r4.large.search", "r4.xlarge.search", "r4.2xlarge.search", "r4.4xlarge.search", "r4.8xlarge.search", "r4.16xlarge.search", "i3.large.search", "i3.xlarge.search", "i3.2xlarge.search", "i3.4xlarge.search", "i3.8xlarge.search", "i3.16xlarge.search", "r6g.large.search", "r6g.xlarge.search", "r6g.2xlarge.search", "r6g.4xlarge.search", "r6g.8xlarge.search", "r6g.12xlarge.search", "m6g.large.search", "m6g.xlarge.search", "m6g.2xlarge.search", "m6g.4xlarge.search", "m6g.8xlarge.search", "m6g.12xlarge.search", "c6g.large.search", "c6g.xlarge.search", "c6g.2xlarge.search", "c6g.4xlarge.search", "c6g.8xlarge.search", "c6g.12xlarge.search", "r6gd.large.search", "r6gd.xlarge.search", "r6gd.2xlarge.search", "r6gd.4xlarge.search", "r6gd.8xlarge.search", "r6gd.12xlarge.search", "r6gd.16xlarge.search", "t4g.small.search", "t4g.medium.search"
resp.instance_type_details[0].encryption_enabled #=> Boolean
resp.instance_type_details[0].cognito_enabled #=> Boolean
resp.instance_type_details[0].app_logs_enabled #=> Boolean
resp.instance_type_details[0].advanced_security_enabled #=> Boolean
resp.instance_type_details[0].warm_enabled #=> Boolean
resp.instance_type_details[0].instance_role #=> Array
resp.instance_type_details[0].instance_role[0] #=> String
resp.instance_type_details[0].availability_zones #=> Array
resp.instance_type_details[0].availability_zones[0] #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :engine_version (required, String)

    The version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.

  • :domain_name (String)

    The name of the domain.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListInstanceTypeDetails operation returns a nextToken, you can include the returned nextToken in subsequent ListInstanceTypeDetails operations, which returns results in the next page.

  • :retrieve_a_zs (Boolean)

    An optional parameter that specifies the Availability Zones for the domain.

  • :instance_type (String)

    An optional parameter that lists information for a given instance type.

Returns:

See Also:



3500
3501
3502
3503
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3500

def list_instance_type_details(params = {}, options = {})
  req = build_request(:list_instance_type_details, params)
  req.send_request(options)
end

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

Lists all packages associated with an Amazon OpenSearch Service domain. For more information, see Custom packages for Amazon OpenSearch Service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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", "ZIP-PLUGIN"
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

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

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

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListPackagesForDomain operation returns a nextToken, you can include the returned nextToken in subsequent ListPackagesForDomain operations, which returns results in the next page.

Returns:

See Also:



3560
3561
3562
3563
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3560

def list_packages_for_domain(params = {}, options = {})
  req = build_request(:list_packages_for_domain, params)
  req.send_request(options)
end

#list_scheduled_actions(params = {}) ⇒ Types::ListScheduledActionsResponse

Retrieves a list of configuration changes that are scheduled for a domain. These changes can be service software updates or blue/green Auto-Tune enhancements.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


resp.scheduled_actions #=> Array
resp.scheduled_actions[0].id #=> String
resp.scheduled_actions[0].type #=> String, one of "SERVICE_SOFTWARE_UPDATE", "JVM_HEAP_SIZE_TUNING", "JVM_YOUNG_GEN_TUNING"
resp.scheduled_actions[0].severity #=> String, one of "HIGH", "MEDIUM", "LOW"
resp.scheduled_actions[0].scheduled_time #=> Integer
resp.scheduled_actions[0].description #=> String
resp.scheduled_actions[0].scheduled_by #=> String, one of "CUSTOMER", "SYSTEM"
resp.scheduled_actions[0].status #=> String, one of "PENDING_UPDATE", "IN_PROGRESS", "FAILED", "COMPLETED", "NOT_ELIGIBLE", "ELIGIBLE"
resp.scheduled_actions[0].mandatory #=> Boolean
resp.scheduled_actions[0].cancellable #=> Boolean
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListScheduledActions operation returns a nextToken, you can include the returned nextToken in subsequent ListScheduledActions operations, which returns results in the next page.

Returns:

See Also:



3620
3621
3622
3623
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3620

def list_scheduled_actions(params = {}, options = {})
  req = build_request(:list_scheduled_actions, params)
  req.send_request(options)
end

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

Returns all resource tags for an Amazon OpenSearch Service domain. For more information, see Tagging Amazon OpenSearch Service domains.

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

Parameters:

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

    ({})

Options Hash (params):

  • :arn (required, String)

    Amazon Resource Name (ARN) for the domain to view tags for.

Returns:

See Also:



3655
3656
3657
3658
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3655

def list_tags(params = {}, options = {})
  req = build_request(:list_tags, params)
  req.send_request(options)
end

#list_versions(params = {}) ⇒ Types::ListVersionsResponse

Lists all versions of OpenSearch and Elasticsearch that Amazon OpenSearch Service supports.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :max_results (Integer)

    An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

  • :next_token (String)

    If your initial ListVersions operation returns a nextToken, you can include the returned nextToken in subsequent ListVersions operations, which returns results in the next page.

Returns:

See Also:



3696
3697
3698
3699
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3696

def list_versions(params = {}, options = {})
  req = build_request(:list_versions, params)
  req.send_request(options)
end

#list_vpc_endpoint_access(params = {}) ⇒ Types::ListVpcEndpointAccessResponse

Retrieves information about each Amazon Web Services principal that is allowed to access a given Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

Examples:

Request syntax with placeholder values


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

Response structure


resp.authorized_principal_list #=> Array
resp.authorized_principal_list[0].principal_type #=> String, one of "AWS_ACCOUNT", "AWS_SERVICE"
resp.authorized_principal_list[0].principal #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the OpenSearch Service domain to retrieve access information for.

  • :next_token (String)

    If your initial ListVpcEndpointAccess operation returns a nextToken, you can include the returned nextToken in subsequent ListVpcEndpointAccess operations, which returns results in the next page.

Returns:

See Also:



3738
3739
3740
3741
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3738

def list_vpc_endpoint_access(params = {}, options = {})
  req = build_request(:list_vpc_endpoint_access, params)
  req.send_request(options)
end

#list_vpc_endpoints(params = {}) ⇒ Types::ListVpcEndpointsResponse

Retrieves all Amazon OpenSearch Service-managed VPC endpoints in the current Amazon Web Services account and Region.

Examples:

Request syntax with placeholder values


resp = client.list_vpc_endpoints({
  next_token: "NextToken",
})

Response structure


resp.vpc_endpoint_summary_list #=> Array
resp.vpc_endpoint_summary_list[0].vpc_endpoint_id #=> String
resp.vpc_endpoint_summary_list[0].vpc_endpoint_owner #=> String
resp.vpc_endpoint_summary_list[0].domain_arn #=> String
resp.vpc_endpoint_summary_list[0].status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    If your initial ListVpcEndpoints operation returns a nextToken, you can include the returned nextToken in subsequent ListVpcEndpoints operations, which returns results in the next page.

Returns:

See Also:



3775
3776
3777
3778
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3775

def list_vpc_endpoints(params = {}, options = {})
  req = build_request(:list_vpc_endpoints, params)
  req.send_request(options)
end

#list_vpc_endpoints_for_domain(params = {}) ⇒ Types::ListVpcEndpointsForDomainResponse

Retrieves all Amazon OpenSearch Service-managed VPC endpoints associated with a particular domain.

Examples:

Request syntax with placeholder values


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

Response structure


resp.vpc_endpoint_summary_list #=> Array
resp.vpc_endpoint_summary_list[0].vpc_endpoint_id #=> String
resp.vpc_endpoint_summary_list[0].vpc_endpoint_owner #=> String
resp.vpc_endpoint_summary_list[0].domain_arn #=> String
resp.vpc_endpoint_summary_list[0].status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain to list associated VPC endpoints for.

  • :next_token (String)

    If your initial ListEndpointsForDomain operation returns a nextToken, you can include the returned nextToken in subsequent ListEndpointsForDomain operations, which returns results in the next page.

Returns:

See Also:



3817
3818
3819
3820
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3817

def list_vpc_endpoints_for_domain(params = {}, options = {})
  req = build_request(:list_vpc_endpoints_for_domain, params)
  req.send_request(options)
end

#purchase_reserved_instance_offering(params = {}) ⇒ Types::PurchaseReservedInstanceOfferingResponse

Allows you to purchase Amazon OpenSearch Service Reserved Instances.

Examples:

Request syntax with placeholder values


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

Response structure


resp.reserved_instance_id #=> String
resp.reservation_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :reserved_instance_offering_id (required, String)

    The ID of the Reserved Instance offering to purchase.

  • :reservation_name (required, String)

    A customer-specified identifier to track this reservation.

  • :instance_count (Integer)

    The number of OpenSearch instances to reserve.

Returns:

See Also:



3855
3856
3857
3858
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3855

def purchase_reserved_instance_offering(params = {}, options = {})
  req = build_request(:purchase_reserved_instance_offering, params)
  req.send_request(options)
end

#reject_inbound_connection(params = {}) ⇒ Types::RejectInboundConnectionResponse

Allows the remote Amazon OpenSearch Service domain owner to reject an inbound cross-cluster connection request.

Examples:

Request syntax with placeholder values


resp = client.reject_inbound_connection({
  connection_id: "ConnectionId", # required
})

Response structure


resp.connection.local_domain_info.aws_domain_information.owner_id #=> String
resp.connection.local_domain_info.aws_domain_information.domain_name #=> String
resp.connection.local_domain_info.aws_domain_information.region #=> String
resp.connection.remote_domain_info.aws_domain_information.owner_id #=> String
resp.connection.remote_domain_info.aws_domain_information.domain_name #=> String
resp.connection.remote_domain_info.aws_domain_information.region #=> String
resp.connection.connection_id #=> String
resp.connection.connection_status.status_code #=> String, one of "PENDING_ACCEPTANCE", "APPROVED", "PROVISIONING", "ACTIVE", "REJECTING", "REJECTED", "DELETING", "DELETED"
resp.connection.connection_status.message #=> String
resp.connection.connection_mode #=> String, one of "DIRECT", "VPC_ENDPOINT"

Parameters:

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

    ({})

Options Hash (params):

  • :connection_id (required, String)

    The unique identifier of the inbound connection to reject.

Returns:

See Also:



3893
3894
3895
3896
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3893

def reject_inbound_connection(params = {}, options = {})
  req = build_request(:reject_inbound_connection, params)
  req.send_request(options)
end

#remove_tags(params = {}) ⇒ Struct

Removes the specified set of tags from an Amazon OpenSearch Service domain. For more information, see Tagging Amazon OpenSearch Service domains.

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :arn (required, String)

    The Amazon Resource Name (ARN) of the domain from which you want to delete the specified tags.

  • :tag_keys (required, Array<String>)

    The list of tag keys to remove from the domain.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3926
3927
3928
3929
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3926

def remove_tags(params = {}, options = {})
  req = build_request(:remove_tags, params)
  req.send_request(options)
end

#revoke_vpc_endpoint_access(params = {}) ⇒ Struct

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.revoke_vpc_endpoint_access({
  domain_name: "DomainName", # required
  account: "AWSAccount", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the OpenSearch Service domain.

  • :account (required, String)

    The account ID to revoke access from.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3953
3954
3955
3956
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3953

def revoke_vpc_endpoint_access(params = {}, options = {})
  req = build_request(:revoke_vpc_endpoint_access, params)
  req.send_request(options)
end

#start_domain_maintenance(params = {}) ⇒ Types::StartDomainMaintenanceResponse

Starts the node maintenance process on the data node. These processes can include a node reboot, an Opensearch or Elasticsearch process restart, or a Dashboard or Kibana restart.

Examples:

Request syntax with placeholder values


resp = client.start_domain_maintenance({
  domain_name: "DomainName", # required
  action: "REBOOT_NODE", # required, accepts REBOOT_NODE, RESTART_SEARCH_PROCESS, RESTART_DASHBOARD
  node_id: "NodeId",
})

Response structure


resp.maintenance_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :action (required, String)

    The name of the action.

  • :node_id (String)

    The ID of the data node.

Returns:

See Also:



3991
3992
3993
3994
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 3991

def start_domain_maintenance(params = {}, options = {})
  req = build_request(:start_domain_maintenance, params)
  req.send_request(options)
end

#start_service_software_update(params = {}) ⇒ Types::StartServiceSoftwareUpdateResponse

Schedules a service software update for an Amazon OpenSearch Service domain. For more information, see Service software updates in Amazon OpenSearch Service.

Examples:

Request syntax with placeholder values


resp = client.start_service_software_update({
  domain_name: "DomainName", # required
  schedule_at: "NOW", # accepts NOW, TIMESTAMP, OFF_PEAK_WINDOW
  desired_start_time: 1,
})

Response structure


resp.service_software_options.current_version #=> String
resp.service_software_options.new_version #=> String
resp.service_software_options.update_available #=> Boolean
resp.service_software_options.cancellable #=> Boolean
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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

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

  • :schedule_at (String)

    When to start the service software update.

    • NOW - Immediately schedules the update to happen in the current hour if there's capacity available.

    • TIMESTAMP - Lets you specify a custom date and time to apply the update. If you specify this value, you must also provide a value for DesiredStartTime.

    • OFF_PEAK_WINDOW - Marks the update to be picked up during an upcoming off-peak window. There's no guarantee that the update will happen during the next immediate window. Depending on capacity, it might happen in subsequent days.

    Default: NOW if you don't specify a value for DesiredStartTime, and TIMESTAMP if you do.

  • :desired_start_time (Integer)

    The Epoch timestamp when you want the service software update to start. You only need to specify this parameter if you set ScheduleAt to TIMESTAMP.

Returns:

See Also:



4058
4059
4060
4061
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 4058

def start_service_software_update(params = {}, options = {})
  req = build_request(:start_service_software_update, params)
  req.send_request(options)
end

#update_data_source(params = {}) ⇒ Types::UpdateDataSourceResponse

Updates a direct-query data source. For more information, see Working with Amazon OpenSearch Service data source integrations with Amazon S3.

Examples:

Request syntax with placeholder values


resp = client.update_data_source({
  domain_name: "DomainName", # required
  name: "DataSourceName", # required
  data_source_type: { # required
    s3_glue_data_catalog: {
      role_arn: "RoleArn",
    },
  },
  description: "DataSourceDescription",
  status: "ACTIVE", # accepts ACTIVE, DISABLED
})

Response structure


resp.message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :domain_name (required, String)

    The name of the domain.

  • :name (required, String)

    The name of the data source to modify.

  • :data_source_type (required, Types::DataSourceType)

    The type of data source.

  • :description (String)

    A new description of the data source.

  • :status (String)

    The status of the data source update.

Returns:

See Also:



4112
4113
4114
4115
# File 'gems/aws-sdk-opensearchservice/lib/aws-sdk-opensearchservice/client.rb', line 4112

def update_data_source(params = {}, options = {})
  req = build_request(:update_data_source, params)
  req.send_request(options)
end

#update_domain_config(params = {}) ⇒ Types::UpdateDomainConfigResponse

Modifies the cluster configuration of the specified Amazon OpenSearch Service domain.

Examples:

Request syntax with placeholder values


resp = client.update_domain_config({
  domain_name: "DomainName", # required
  cluster_config: {
    instance_type: "m3.medium.search", # accepts m3.medium.search, m3.large.search, m3.xlarge.search, m3.2xlarge.search, m4.large.search, m4.xlarge.search, m4.2xlarge.search, m4.4xlarge.search, m4.10xlarge.search, m5.large.search, m5.xlarge.search, m5.2xlarge.search, m5.4xlarge.search, m5.12xlarge.search, m5.24xlarge.search, r5.large.search, r5.xlarge.search, r5.2xlarge.search, r5.4xlarge.search, r5.12xlarge.search, r5.24xlarge.search, c5.large.search, c5.xlarge.search, c5.2xlarge.search, c5.4xlarge.search, c5.9xlarge.search, c5.18xlarge.search, t3.nano.search, t3.micro.search, t3.small.search, t3.medium.search, t3.large.search, t3.xlarge.search, t3.2xlarge.search, or1.medium.search, or1.large.search, or1.xlarge.search, or1.2xlarge.search, or1.4xlarge.search, or1.8xlarge.search, or1.12xlarge.search, or1.16xlarge.search, ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search, t2.micro.search, t2.small.search, t2.medium.search, r3.large.search, r3.xlarge.search, r3.2xlarge.search, r3.4xlarge.search, r3.8xlarge.search, i2.xlarge.search, i2.2xlarge.search, d2.xlarge.search, d2.2xlarge.search, d2.4xlarge.search, d2.8xlarge.search, c4.large.search, c4.xlarge.search, c4.2xlarge.search, c4.4xlarge.search, c4.8xlarge.search, r4.large.search, r4.xlarge.search, r4.2xlarge.search, r4.4xlarge.search, r4.8xlarge.search, r4.16xlarge.search, i3.large.search, i3.xlarge.search, i3.2xlarge.search, i3.4xlarge.search, i3.8xlarge.search, i3.16xlarge.search, r6g.large.search, r6g.xlarge.search, r6g.2xlarge.search, r6g.4xlarge.search, r6g.8xlarge.search, r6g.12xlarge.search, m6g.large.search, m6g.xlarge.search, m6g.2xlarge.search, m6g.4xlarge.search, m6g.8xlarge.search, m6g.12xlarge.search, c6g.large.search, c6g.xlarge.search, c6g.2xlarge.search, c6g.4xlarge.search, c6g.8xlarge.search, c6g.12xlarge.search, r6gd.large.search, r6gd.xlarge.search, r6gd.2xlarge.search, r6gd.4xlarge.search, r6gd.8xlarge.search, r6gd.12xlarge.search, r6gd.16xlarge.search, t4g.small.search, t4g.medium.search
    instance_count: 1,
    dedicated_master_enabled: false,
    zone_awareness_enabled: false,
    zone_awareness_config: {
      availability_zone_count: 1,
    },
    dedicated_master_type: "m3.medium.search", # accepts m3.medium.search, m3.large.search, m3.xlarge.search, m3.2xlarge.search, m4.large.search, m4.xlarge.search, m4.2xlarge.search, m4.4xlarge.search, m4.10xlarge.search, m5.large.search, m5.xlarge.search, m5.2xlarge.search, m5.4xlarge.search, m5.12xlarge.search, m5.24xlarge.search, r5.large.search, r5.xlarge.search, r5.2xlarge.search, r5.4xlarge.search, r5.12xlarge.search, r5.24xlarge.search, c5.large.search, c5.xlarge.search, c5.2xlarge.search, c5.4xlarge.search, c5.9xlarge.search, c5.18xlarge.search, t3.nano.search, t3.micro.search, t3.small.search, t3.medium.search, t3.large.search, t3.xlarge.search, t3.2xlarge.search, or1.medium.search, or1.large.search, or1.xlarge.search, or1.2xlarge.search, or1.4xlarge.search, or1.8xlarge.search, or1.12xlarge.search, or1.16xlarge.search, ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search, t2.micro.search, t2.small.search, t2.medium.search, r3.large.search, r3.xlarge.search, r3.2xlarge.search, r3.4xlarge.search, r3.8xlarge.search, i2.xlarge.search, i2.2xlarge.search, d2.xlarge.search, d2.2xlarge.search, d2.4xlarge.search, d2.8xlarge.search, c4.large.search, c4.xlarge.search, c4.2xlarge.search, c4.4xlarge.search, c4.8xlarge.search, r4.large.search, r4.xlarge.search, r4.2xlarge.search, r4.4xlarge.search, r4.8xlarge.search, r4.16xlarge.search, i3.large.search, i3.xlarge.search, i3.2xlarge.search, i3.4xlarge.search, i3.8xlarge.search, i3.16xlarge.search, r6g.large.search, r6g.xlarge.search, r6g.2xlarge.search, r6g.4xlarge.search, r6g.8xlarge.search, r6g.12xlarge.search, m6g.large.search, m6g.xlarge.search, m6g.2xlarge.search, m6g.4xlarge.search, m6g.8xlarge.search, m6g.12xlarge.search, c6g.large.search, c6g.xlarge.search, c6g.2xlarge.search, c6g.4xlarge.search, c6g.8xlarge.search, c6g.12xlarge.search, r6gd.large.search, r6gd.xlarge.search, r6gd.2xlarge.search, r6gd.4xlarge.search, r6gd.8xlarge.search, r6gd.12xlarge.search, r6gd.16xlarge.search, t4g.small.search, t4g.medium.search
    dedicated_master_count: 1,
    warm_enabled: false,
    warm_type: "ultrawarm1.medium.search", # accepts ultrawarm1.medium.search, ultrawarm1.large.search, ultrawarm1.xlarge.search
    warm_count: 1,
    cold_storage_options: {
      enabled: false, # required
    },
    multi_az_with_standby_enabled: false,
  },
  ebs_options: {
    ebs_enabled: false,
    volume_type: "standard", # accepts standard, gp2, io1, gp3
    volume_size: 1,
    iops: 1,
    throughput: 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",
  ip_address_type: "ipv4", # accepts ipv4, dualstack
  log_publishing_options: {
    "INDEX_SLOW_LOGS" => {
      cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn",
      enabled: false,
    },
  },
  encryption_at_rest_options: {
    enabled: false,
    kms_key_id: "KmsKeyId",
  },
  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, Policy-Min-TLS-1-2-PFS-2023-10
    custom_endpoint_enabled: false,
    custom_endpoint: "DomainNameFqdn",
    custom_endpoint_certificate_arn: "ARN",
  },
  node_to_node_encryption_options: {
    enabled: false,
  },
  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,
    },
    jwt_options: {
      enabled: false,
      subject_key: "SubjectKey",
      roles_key: "RolesKey",
      public_key: "String",
    },
    anonymous_auth_enabled: false,
  },
  auto_tune_options: {
    desired_state: "ENABLED", # accepts ENABLED, DISABLED
    rollback_on_disable: "NO_ROLLBACK", # accepts NO_ROLLBACK, DEFAULT_ROLLBACK
    maintenance_schedules: [
      {
        start_at: Time.now,
        duration: {
          value: 1,
          unit: "HOURS", # accepts HOURS
        },
        cron_expression_for_recurrence: "String",
      },
    ],
    use_off_peak_window: