# WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::ElasticsearchService module Types # The configured access rules for the domain's document and search # endpoints, and the current status of those rules. # # @!attribute [rw] options # The access policy configured for the Elasticsearch domain. Access # policies may be resource-based, IP-based, or IAM-based. See [ # Configuring Access Policies][1]for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-access-policies # @return [String] # # @!attribute [rw] status # The status of the access policy for the Elasticsearch domain. See # `OptionStatus` for the status information that's included. # @return [Types::OptionStatus] # class AccessPoliciesStatus < Struct.new( :options, :status) include Aws::Structure end # Container for the parameters to the `AddTags` operation. Specify the # tags that you want to attach to the Elasticsearch domain. # # @note When making an API call, you may pass AddTagsRequest # data as a hash: # # { # arn: "ARN", # required # tag_list: [ # required # { # key: "TagKey", # required # value: "TagValue", # required # }, # ], # } # # @!attribute [rw] arn # Specify the `ARN` for which you want to add the tags. # @return [String] # # @!attribute [rw] tag_list # List of `Tag` that need to be added for the Elasticsearch domain. # @return [Array] # class AddTagsRequest < Struct.new( :arn, :tag_list) include Aws::Structure end # List of limits that are specific to a given InstanceType and for each # of it's ` InstanceRole ` . # # @!attribute [rw] limit_name # Name of Additional Limit is specific to a given InstanceType and for # each of it's ` InstanceRole ` etc. # Attributes and their details: # * MaximumNumberOfDataNodesSupported # ` ESPartitionInstanceType `* # MaximumNumberOfDataNodesWithoutMasterNode # ` ESPartitionInstanceType ` # @return [String] # # @!attribute [rw] limit_values # Value for given ` AdditionalLimit$LimitName ` . # @return [Array] # class AdditionalLimit < Struct.new( :limit_name, :limit_values) include Aws::Structure end # Status of the advanced options for the specified Elasticsearch domain. # Currently, the following advanced options are available: # # * Option to allow references to indices in an HTTP request body. Must # be `false` when configuring access to individual sub-resources. By # default, the value is `true`. See [Configuration Advanced # Options][1] for more information. # * Option to specify the percentage of heap space that is allocated to # field data. By default, this setting is unbounded. # # For more information, see [Configuring Advanced Options][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options # # @!attribute [rw] options # Specifies the status of advanced options for the specified # Elasticsearch domain. # @return [Hash] # # @!attribute [rw] status # Specifies the status of `OptionStatus` for advanced options for the # specified Elasticsearch domain. # @return [Types::OptionStatus] # class AdvancedOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # Options to specify the Cognito user and identity pools for Kibana # authentication. For more information, see [Amazon Cognito # Authentication for Kibana][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html # # @note When making an API call, you may pass CognitoOptions # data as a hash: # # { # enabled: false, # user_pool_id: "UserPoolId", # identity_pool_id: "IdentityPoolId", # role_arn: "RoleArn", # } # # @!attribute [rw] enabled # Specifies the option to enable Cognito for Kibana authentication. # @return [Boolean] # # @!attribute [rw] user_pool_id # Specifies the Cognito user pool ID for Kibana authentication. # @return [String] # # @!attribute [rw] identity_pool_id # Specifies the Cognito identity pool ID for Kibana authentication. # @return [String] # # @!attribute [rw] role_arn # Specifies the role ARN that provides Elasticsearch permissions for # accessing Cognito resources. # @return [String] # class CognitoOptions < Struct.new( :enabled, :user_pool_id, :identity_pool_id, :role_arn) include Aws::Structure end # Status of the Cognito options for the specified Elasticsearch domain. # # @!attribute [rw] options # Specifies the Cognito options for the specified Elasticsearch # domain. # @return [Types::CognitoOptions] # # @!attribute [rw] status # Specifies the status of the Cognito options for the specified # Elasticsearch domain. # @return [Types::OptionStatus] # class CognitoOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # A map from an ` ElasticsearchVersion ` to a list of compatible ` # ElasticsearchVersion ` s to which the domain can be upgraded. # # @!attribute [rw] source_version # The current version of Elasticsearch on which a domain is. # @return [String] # # @!attribute [rw] target_versions # List of supported elastic search versions. # @return [Array] # class CompatibleVersionsMap < Struct.new( :source_version, :target_versions) include Aws::Structure end # @note When making an API call, you may pass CreateElasticsearchDomainRequest # data as a hash: # # { # domain_name: "DomainName", # required # elasticsearch_version: "ElasticsearchVersionString", # elasticsearch_cluster_config: { # instance_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # instance_count: 1, # dedicated_master_enabled: false, # zone_awareness_enabled: false, # dedicated_master_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # dedicated_master_count: 1, # }, # ebs_options: { # ebs_enabled: false, # volume_type: "standard", # accepts standard, gp2, io1 # volume_size: 1, # iops: 1, # }, # access_policies: "PolicyDocument", # snapshot_options: { # automated_snapshot_start_hour: 1, # }, # vpc_options: { # subnet_ids: ["String"], # security_group_ids: ["String"], # }, # cognito_options: { # enabled: false, # user_pool_id: "UserPoolId", # identity_pool_id: "IdentityPoolId", # role_arn: "RoleArn", # }, # encryption_at_rest_options: { # enabled: false, # kms_key_id: "KmsKeyId", # }, # advanced_options: { # "String" => "String", # }, # log_publishing_options: { # "INDEX_SLOW_LOGS" => { # cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn", # enabled: false, # }, # }, # } # # @!attribute [rw] domain_name # The name of the Elasticsearch domain that you are creating. Domain # names are unique across the domains owned by an account within an # AWS region. Domain names must start with a letter or number and can # contain the following characters: a-z (lowercase), 0-9, and - # (hyphen). # @return [String] # # @!attribute [rw] elasticsearch_version # String of format X.Y to specify version for the Elasticsearch domain # eg. "1.5" or "2.3". For more information, see [Creating # Elasticsearch Domains][1] in the *Amazon Elasticsearch Service # Developer Guide*. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains # @return [String] # # @!attribute [rw] elasticsearch_cluster_config # Configuration options for an Elasticsearch domain. Specifies the # instance type and number of instances in the domain cluster. # @return [Types::ElasticsearchClusterConfig] # # @!attribute [rw] ebs_options # Options to enable, disable and specify the type and size of EBS # storage volumes. # @return [Types::EBSOptions] # # @!attribute [rw] access_policies # IAM access policy as a JSON-formatted string. # @return [String] # # @!attribute [rw] snapshot_options # Option to set time, in UTC format, of the daily automated snapshot. # Default value is 0 hours. # @return [Types::SnapshotOptions] # # @!attribute [rw] vpc_options # Options to specify the subnets and security groups for VPC endpoint. # For more information, see [Creating a VPC][1] in *VPC Endpoints for # Amazon Elasticsearch Service Domains* # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html#es-creating-vpc # @return [Types::VPCOptions] # # @!attribute [rw] cognito_options # Options to specify the Cognito user and identity pools for Kibana # authentication. For more information, see [Amazon Cognito # Authentication for Kibana][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html # @return [Types::CognitoOptions] # # @!attribute [rw] encryption_at_rest_options # Specifies the Encryption At Rest Options. # @return [Types::EncryptionAtRestOptions] # # @!attribute [rw] advanced_options # Option to allow references to indices in an HTTP request body. Must # be `false` when configuring access to individual sub-resources. By # default, the value is `true`. See [Configuration Advanced # Options][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options # @return [Hash] # # @!attribute [rw] log_publishing_options # Map of `LogType` and `LogPublishingOption`, each containing options # to publish a given type of Elasticsearch log. # @return [Hash] # class CreateElasticsearchDomainRequest < Struct.new( :domain_name, :elasticsearch_version, :elasticsearch_cluster_config, :ebs_options, :access_policies, :snapshot_options, :vpc_options, :cognito_options, :encryption_at_rest_options, :advanced_options, :log_publishing_options) include Aws::Structure end # The result of a `CreateElasticsearchDomain` operation. Contains the # status of the newly created Elasticsearch domain. # # @!attribute [rw] domain_status # The status of the newly created Elasticsearch domain. # @return [Types::ElasticsearchDomainStatus] # class CreateElasticsearchDomainResponse < Struct.new( :domain_status) include Aws::Structure end # Container for the parameters to the `DeleteElasticsearchDomain` # operation. Specifies the name of the Elasticsearch domain that you # want to delete. # # @note When making an API call, you may pass DeleteElasticsearchDomainRequest # data as a hash: # # { # domain_name: "DomainName", # required # } # # @!attribute [rw] domain_name # The name of the Elasticsearch domain that you want to permanently # delete. # @return [String] # class DeleteElasticsearchDomainRequest < Struct.new( :domain_name) include Aws::Structure end # The result of a `DeleteElasticsearchDomain` request. Contains the # status of the pending deletion, or no status if the domain and all of # its resources have been deleted. # # @!attribute [rw] domain_status # The status of the Elasticsearch domain being deleted. # @return [Types::ElasticsearchDomainStatus] # class DeleteElasticsearchDomainResponse < Struct.new( :domain_status) include Aws::Structure end # Container for the parameters to the # `DescribeElasticsearchDomainConfig` operation. Specifies the domain # name for which you want configuration information. # # @note When making an API call, you may pass DescribeElasticsearchDomainConfigRequest # data as a hash: # # { # domain_name: "DomainName", # required # } # # @!attribute [rw] domain_name # The Elasticsearch domain that you want to get information about. # @return [String] # class DescribeElasticsearchDomainConfigRequest < Struct.new( :domain_name) include Aws::Structure end # The result of a `DescribeElasticsearchDomainConfig` request. Contains # the configuration information of the requested domain. # # @!attribute [rw] domain_config # The configuration information of the domain requested in the # `DescribeElasticsearchDomainConfig` request. # @return [Types::ElasticsearchDomainConfig] # class DescribeElasticsearchDomainConfigResponse < Struct.new( :domain_config) include Aws::Structure end # Container for the parameters to the `DescribeElasticsearchDomain` # operation. # # @note When making an API call, you may pass DescribeElasticsearchDomainRequest # data as a hash: # # { # domain_name: "DomainName", # required # } # # @!attribute [rw] domain_name # The name of the Elasticsearch domain for which you want information. # @return [String] # class DescribeElasticsearchDomainRequest < Struct.new( :domain_name) include Aws::Structure end # The result of a `DescribeElasticsearchDomain` request. Contains the # status of the domain specified in the request. # # @!attribute [rw] domain_status # The current status of the Elasticsearch domain. # @return [Types::ElasticsearchDomainStatus] # class DescribeElasticsearchDomainResponse < Struct.new( :domain_status) include Aws::Structure end # Container for the parameters to the `DescribeElasticsearchDomains` # operation. By default, the API returns the status of all Elasticsearch # domains. # # @note When making an API call, you may pass DescribeElasticsearchDomainsRequest # data as a hash: # # { # domain_names: ["DomainName"], # required # } # # @!attribute [rw] domain_names # The Elasticsearch domains for which you want information. # @return [Array] # class DescribeElasticsearchDomainsRequest < Struct.new( :domain_names) include Aws::Structure end # The result of a `DescribeElasticsearchDomains` request. Contains the # status of the specified domains or all domains owned by the account. # # @!attribute [rw] domain_status_list # The status of the domains requested in the # `DescribeElasticsearchDomains` request. # @return [Array] # class DescribeElasticsearchDomainsResponse < Struct.new( :domain_status_list) include Aws::Structure end # Container for the parameters to ` # DescribeElasticsearchInstanceTypeLimits ` operation. # # @note When making an API call, you may pass DescribeElasticsearchInstanceTypeLimitsRequest # data as a hash: # # { # domain_name: "DomainName", # instance_type: "m3.medium.elasticsearch", # required, accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # elasticsearch_version: "ElasticsearchVersionString", # required # } # # @!attribute [rw] domain_name # DomainName represents the name of the Domain that we are trying to # modify. This should be present only if we are querying for # Elasticsearch ` Limits ` for existing domain. # @return [String] # # @!attribute [rw] instance_type # The instance type for an Elasticsearch cluster for which # Elasticsearch ` Limits ` are needed. # @return [String] # # @!attribute [rw] elasticsearch_version # Version of Elasticsearch for which ` Limits ` are needed. # @return [String] # class DescribeElasticsearchInstanceTypeLimitsRequest < Struct.new( :domain_name, :instance_type, :elasticsearch_version) include Aws::Structure end # Container for the parameters received from ` # DescribeElasticsearchInstanceTypeLimits ` operation. # # @!attribute [rw] limits_by_role # Map of Role of the Instance and Limits that are applicable. Role # performed by given Instance in Elasticsearch can be one of the # following: * Data: If the given InstanceType is used as Data node # * Master: If the given InstanceType is used as Master node # @return [Hash] # class DescribeElasticsearchInstanceTypeLimitsResponse < Struct.new( :limits_by_role) include Aws::Structure end # Container for parameters to # `DescribeReservedElasticsearchInstanceOfferings` # # @note When making an API call, you may pass DescribeReservedElasticsearchInstanceOfferingsRequest # data as a hash: # # { # reserved_elasticsearch_instance_offering_id: "GUID", # max_results: 1, # next_token: "NextToken", # } # # @!attribute [rw] reserved_elasticsearch_instance_offering_id # The offering identifier filter value. Use this parameter to show # only the available offering that matches the specified reservation # identifier. # @return [String] # # @!attribute [rw] max_results # Set this value to limit the number of results returned. If not # specified, defaults to 100. # @return [Integer] # # @!attribute [rw] next_token # NextToken should be sent in case if earlier API call produced result # containing NextToken. It is used for pagination. # @return [String] # class DescribeReservedElasticsearchInstanceOfferingsRequest < Struct.new( :reserved_elasticsearch_instance_offering_id, :max_results, :next_token) include Aws::Structure end # Container for results from # `DescribeReservedElasticsearchInstanceOfferings` # # @!attribute [rw] next_token # Provides an identifier to allow retrieval of paginated results. # @return [String] # # @!attribute [rw] reserved_elasticsearch_instance_offerings # List of reserved Elasticsearch instance offerings # @return [Array] # class DescribeReservedElasticsearchInstanceOfferingsResponse < Struct.new( :next_token, :reserved_elasticsearch_instance_offerings) include Aws::Structure end # Container for parameters to `DescribeReservedElasticsearchInstances` # # @note When making an API call, you may pass DescribeReservedElasticsearchInstancesRequest # data as a hash: # # { # reserved_elasticsearch_instance_id: "GUID", # max_results: 1, # next_token: "NextToken", # } # # @!attribute [rw] reserved_elasticsearch_instance_id # The reserved instance identifier filter value. Use this parameter to # show only the reservation that matches the specified reserved # Elasticsearch instance ID. # @return [String] # # @!attribute [rw] max_results # Set this value to limit the number of results returned. If not # specified, defaults to 100. # @return [Integer] # # @!attribute [rw] next_token # NextToken should be sent in case if earlier API call produced result # containing NextToken. It is used for pagination. # @return [String] # class DescribeReservedElasticsearchInstancesRequest < Struct.new( :reserved_elasticsearch_instance_id, :max_results, :next_token) include Aws::Structure end # Container for results from `DescribeReservedElasticsearchInstances` # # @!attribute [rw] next_token # Provides an identifier to allow retrieval of paginated results. # @return [String] # # @!attribute [rw] reserved_elasticsearch_instances # List of reserved Elasticsearch instances. # @return [Array] # class DescribeReservedElasticsearchInstancesResponse < Struct.new( :next_token, :reserved_elasticsearch_instances) include Aws::Structure end # @!attribute [rw] domain_name # Specifies the `DomainName`. # @return [String] # class DomainInfo < Struct.new( :domain_name) include Aws::Structure end # Options to enable, disable, and specify the properties of EBS storage # volumes. For more information, see [ Configuring EBS-based # Storage][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs # # @note When making an API call, you may pass EBSOptions # data as a hash: # # { # ebs_enabled: false, # volume_type: "standard", # accepts standard, gp2, io1 # volume_size: 1, # iops: 1, # } # # @!attribute [rw] ebs_enabled # Specifies whether EBS-based storage is enabled. # @return [Boolean] # # @!attribute [rw] volume_type # Specifies the volume type for EBS-based storage. # @return [String] # # @!attribute [rw] volume_size # Integer to specify the size of an EBS volume. # @return [Integer] # # @!attribute [rw] iops # Specifies the IOPD for a Provisioned IOPS EBS volume (SSD). # @return [Integer] # class EBSOptions < Struct.new( :ebs_enabled, :volume_type, :volume_size, :iops) include Aws::Structure end # Status of the EBS options for the specified Elasticsearch domain. # # @!attribute [rw] options # Specifies the EBS options for the specified Elasticsearch domain. # @return [Types::EBSOptions] # # @!attribute [rw] status # Specifies the status of the EBS options for the specified # Elasticsearch domain. # @return [Types::OptionStatus] # class EBSOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # Specifies the configuration for the domain cluster, such as the type # and number of instances. # # @note When making an API call, you may pass ElasticsearchClusterConfig # data as a hash: # # { # instance_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # instance_count: 1, # dedicated_master_enabled: false, # zone_awareness_enabled: false, # dedicated_master_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # dedicated_master_count: 1, # } # # @!attribute [rw] instance_type # The instance type for an Elasticsearch cluster. # @return [String] # # @!attribute [rw] instance_count # The number of instances in the specified domain cluster. # @return [Integer] # # @!attribute [rw] dedicated_master_enabled # A boolean value to indicate whether a dedicated master node is # enabled. See [About Dedicated Master Nodes][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-dedicatedmasternodes # @return [Boolean] # # @!attribute [rw] zone_awareness_enabled # A boolean value to indicate whether zone awareness is enabled. See # [About Zone Awareness][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-zoneawareness # @return [Boolean] # # @!attribute [rw] dedicated_master_type # The instance type for a dedicated master node. # @return [String] # # @!attribute [rw] dedicated_master_count # Total number of dedicated master nodes, active and on standby, for # the cluster. # @return [Integer] # class ElasticsearchClusterConfig < Struct.new( :instance_type, :instance_count, :dedicated_master_enabled, :zone_awareness_enabled, :dedicated_master_type, :dedicated_master_count) include Aws::Structure end # Specifies the configuration status for the specified Elasticsearch # domain. # # @!attribute [rw] options # Specifies the cluster configuration for the specified Elasticsearch # domain. # @return [Types::ElasticsearchClusterConfig] # # @!attribute [rw] status # Specifies the status of the configuration for the specified # Elasticsearch domain. # @return [Types::OptionStatus] # class ElasticsearchClusterConfigStatus < Struct.new( :options, :status) include Aws::Structure end # The configuration of an Elasticsearch domain. # # @!attribute [rw] elasticsearch_version # String of format X.Y to specify version for the Elasticsearch # domain. # @return [Types::ElasticsearchVersionStatus] # # @!attribute [rw] elasticsearch_cluster_config # Specifies the `ElasticsearchClusterConfig` for the Elasticsearch # domain. # @return [Types::ElasticsearchClusterConfigStatus] # # @!attribute [rw] ebs_options # Specifies the `EBSOptions` for the Elasticsearch domain. # @return [Types::EBSOptionsStatus] # # @!attribute [rw] access_policies # IAM access policy as a JSON-formatted string. # @return [Types::AccessPoliciesStatus] # # @!attribute [rw] snapshot_options # Specifies the `SnapshotOptions` for the Elasticsearch domain. # @return [Types::SnapshotOptionsStatus] # # @!attribute [rw] vpc_options # The `VPCOptions` for the specified domain. For more information, see # [VPC Endpoints for Amazon Elasticsearch Service Domains][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html # @return [Types::VPCDerivedInfoStatus] # # @!attribute [rw] cognito_options # The `CognitoOptions` for the specified domain. For more information, # see [Amazon Cognito Authentication for Kibana][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html # @return [Types::CognitoOptionsStatus] # # @!attribute [rw] encryption_at_rest_options # Specifies the `EncryptionAtRestOptions` for the Elasticsearch # domain. # @return [Types::EncryptionAtRestOptionsStatus] # # @!attribute [rw] advanced_options # Specifies the `AdvancedOptions` for the domain. See [Configuring # Advanced Options][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options # @return [Types::AdvancedOptionsStatus] # # @!attribute [rw] log_publishing_options # Log publishing options for the given domain. # @return [Types::LogPublishingOptionsStatus] # class ElasticsearchDomainConfig < Struct.new( :elasticsearch_version, :elasticsearch_cluster_config, :ebs_options, :access_policies, :snapshot_options, :vpc_options, :cognito_options, :encryption_at_rest_options, :advanced_options, :log_publishing_options) include Aws::Structure end # The current status of an Elasticsearch domain. # # @!attribute [rw] domain_id # The unique identifier for the specified Elasticsearch domain. # @return [String] # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # # @!attribute [rw] arn # The Amazon resource name (ARN) of an Elasticsearch domain. See # [Identifiers for IAM Entities][1] in *Using AWS Identity and Access # Management* for more information. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html # @return [String] # # @!attribute [rw] created # The domain creation status. `True` if the creation of an # Elasticsearch domain is complete. `False` if domain creation is # still in progress. # @return [Boolean] # # @!attribute [rw] deleted # The domain deletion status. `True` if a delete request has been # received for the domain but resource cleanup is still in progress. # `False` if the domain has not been deleted. Once domain deletion is # complete, the status of the domain is no longer returned. # @return [Boolean] # # @!attribute [rw] endpoint # The Elasticsearch domain endpoint that you use to submit index and # search requests. # @return [String] # # @!attribute [rw] endpoints # Map containing the Elasticsearch domain endpoints used to submit # index and search requests. Example `key, value`\: # `'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'`. # @return [Hash] # # @!attribute [rw] processing # The status of the Elasticsearch domain configuration. `True` if # Amazon Elasticsearch Service is processing configuration changes. # `False` if the configuration is active. # @return [Boolean] # # @!attribute [rw] upgrade_processing # The status of an Elasticsearch domain version upgrade. `True` if # Amazon Elasticsearch Service is undergoing a version upgrade. # `False` if the configuration is active. # @return [Boolean] # # @!attribute [rw] elasticsearch_version # @return [String] # # @!attribute [rw] elasticsearch_cluster_config # The type and number of instances in the domain cluster. # @return [Types::ElasticsearchClusterConfig] # # @!attribute [rw] ebs_options # The `EBSOptions` for the specified domain. See [Configuring # EBS-based Storage][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs # @return [Types::EBSOptions] # # @!attribute [rw] access_policies # IAM access policy as a JSON-formatted string. # @return [String] # # @!attribute [rw] snapshot_options # Specifies the status of the `SnapshotOptions` # @return [Types::SnapshotOptions] # # @!attribute [rw] vpc_options # The `VPCOptions` for the specified domain. For more information, see # [VPC Endpoints for Amazon Elasticsearch Service Domains][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html # @return [Types::VPCDerivedInfo] # # @!attribute [rw] cognito_options # The `CognitoOptions` for the specified domain. For more information, # see [Amazon Cognito Authentication for Kibana][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html # @return [Types::CognitoOptions] # # @!attribute [rw] encryption_at_rest_options # Specifies the status of the `EncryptionAtRestOptions`. # @return [Types::EncryptionAtRestOptions] # # @!attribute [rw] advanced_options # Specifies the status of the `AdvancedOptions` # @return [Hash] # # @!attribute [rw] log_publishing_options # Log publishing options for the given domain. # @return [Hash] # class ElasticsearchDomainStatus < Struct.new( :domain_id, :domain_name, :arn, :created, :deleted, :endpoint, :endpoints, :processing, :upgrade_processing, :elasticsearch_version, :elasticsearch_cluster_config, :ebs_options, :access_policies, :snapshot_options, :vpc_options, :cognito_options, :encryption_at_rest_options, :advanced_options, :log_publishing_options) include Aws::Structure end # Status of the Elasticsearch version options for the specified # Elasticsearch domain. # # @!attribute [rw] options # Specifies the Elasticsearch version for the specified Elasticsearch # domain. # @return [String] # # @!attribute [rw] status # Specifies the status of the Elasticsearch version options for the # specified Elasticsearch domain. # @return [Types::OptionStatus] # class ElasticsearchVersionStatus < Struct.new( :options, :status) include Aws::Structure end # Specifies the Encryption At Rest Options. # # @note When making an API call, you may pass EncryptionAtRestOptions # data as a hash: # # { # enabled: false, # kms_key_id: "KmsKeyId", # } # # @!attribute [rw] enabled # Specifies the option to enable Encryption At Rest. # @return [Boolean] # # @!attribute [rw] kms_key_id # Specifies the KMS Key ID for Encryption At Rest options. # @return [String] # class EncryptionAtRestOptions < Struct.new( :enabled, :kms_key_id) include Aws::Structure end # Status of the Encryption At Rest options for the specified # Elasticsearch domain. # # @!attribute [rw] options # Specifies the Encryption At Rest options for the specified # Elasticsearch domain. # @return [Types::EncryptionAtRestOptions] # # @!attribute [rw] status # Specifies the status of the Encryption At Rest options for the # specified Elasticsearch domain. # @return [Types::OptionStatus] # class EncryptionAtRestOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # Container for request parameters to ` # GetCompatibleElasticsearchVersions ` operation. # # @note When making an API call, you may pass GetCompatibleElasticsearchVersionsRequest # data as a hash: # # { # domain_name: "DomainName", # } # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # class GetCompatibleElasticsearchVersionsRequest < Struct.new( :domain_name) include Aws::Structure end # Container for response returned by ` # GetCompatibleElasticsearchVersions ` operation. # # @!attribute [rw] compatible_elasticsearch_versions # A map of compatible Elasticsearch versions returned as part of the ` # GetCompatibleElasticsearchVersions ` operation. # @return [Array] # class GetCompatibleElasticsearchVersionsResponse < Struct.new( :compatible_elasticsearch_versions) include Aws::Structure end # Container for request parameters to ` GetUpgradeHistory ` operation. # # @note When making an API call, you may pass GetUpgradeHistoryRequest # data as a hash: # # { # domain_name: "DomainName", # required # max_results: 1, # next_token: "NextToken", # } # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # # @!attribute [rw] max_results # Set this value to limit the number of results returned. # @return [Integer] # # @!attribute [rw] next_token # Paginated APIs accepts NextToken input to returns next page results # and provides a NextToken output in the response which can be used by # the client to retrieve more results. # @return [String] # class GetUpgradeHistoryRequest < Struct.new( :domain_name, :max_results, :next_token) include Aws::Structure end # Container for response returned by ` GetUpgradeHistory ` operation. # # @!attribute [rw] upgrade_histories # A list of ` UpgradeHistory ` objects corresponding to each Upgrade # or Upgrade Eligibility Check performed on a domain returned as part # of ` GetUpgradeHistoryResponse ` object. # @return [Array] # # @!attribute [rw] next_token # Pagination token that needs to be supplied to the next call to get # the next page of results # @return [String] # class GetUpgradeHistoryResponse < Struct.new( :upgrade_histories, :next_token) include Aws::Structure end # Container for request parameters to ` GetUpgradeStatus ` operation. # # @note When making an API call, you may pass GetUpgradeStatusRequest # data as a hash: # # { # domain_name: "DomainName", # required # } # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # class GetUpgradeStatusRequest < Struct.new( :domain_name) include Aws::Structure end # Container for response returned by ` GetUpgradeStatus ` operation. # # @!attribute [rw] upgrade_step # Represents one of 3 steps that an Upgrade or Upgrade Eligibility # Check does through: * PreUpgradeCheck # * Snapshot # * Upgrade # @return [String] # # @!attribute [rw] step_status # One of 4 statuses that a step can go through returned as part of the # ` GetUpgradeStatusResponse ` object. The status can take one of the # following values: * In Progress # * Succeeded # * Succeeded with Issues # * Failed # @return [String] # # @!attribute [rw] upgrade_name # A string that describes the update briefly # @return [String] # class GetUpgradeStatusResponse < Struct.new( :upgrade_step, :step_status, :upgrade_name) include Aws::Structure end # InstanceCountLimits represents the limits on number of instances that # be created in Amazon Elasticsearch for given InstanceType. # # @!attribute [rw] minimum_instance_count # Minimum number of Instances that can be instantiated for given # InstanceType. # @return [Integer] # # @!attribute [rw] maximum_instance_count # Maximum number of Instances that can be instantiated for given # InstanceType. # @return [Integer] # class InstanceCountLimits < Struct.new( :minimum_instance_count, :maximum_instance_count) include Aws::Structure end # InstanceLimits represents the list of instance related attributes that # are available for given InstanceType. # # @!attribute [rw] instance_count_limits # InstanceCountLimits represents the limits on number of instances # that be created in Amazon Elasticsearch for given InstanceType. # @return [Types::InstanceCountLimits] # class InstanceLimits < Struct.new( :instance_count_limits) include Aws::Structure end # Limits for given InstanceType and for each of it's role. # Limits contains following ` StorageTypes, ` ` InstanceLimits ` and ` # AdditionalLimits ` # # @!attribute [rw] storage_types # StorageType represents the list of storage related types and # attributes that are available for given InstanceType. # @return [Array] # # @!attribute [rw] instance_limits # InstanceLimits represents the list of instance related attributes # that are available for given InstanceType. # @return [Types::InstanceLimits] # # @!attribute [rw] additional_limits # List of additional limits that are specific to a given InstanceType # and for each of it's ` InstanceRole ` . # @return [Array] # class Limits < Struct.new( :storage_types, :instance_limits, :additional_limits) include Aws::Structure end # The result of a `ListDomainNames` operation. Contains the names of all # Elasticsearch domains owned by this account. # # @!attribute [rw] domain_names # List of Elasticsearch domain names. # @return [Array] # class ListDomainNamesResponse < Struct.new( :domain_names) include Aws::Structure end # Container for the parameters to the ` ListElasticsearchInstanceTypes ` # operation. # # @note When making an API call, you may pass ListElasticsearchInstanceTypesRequest # data as a hash: # # { # elasticsearch_version: "ElasticsearchVersionString", # required # domain_name: "DomainName", # max_results: 1, # next_token: "NextToken", # } # # @!attribute [rw] elasticsearch_version # Version of Elasticsearch for which list of supported elasticsearch # instance types are needed. # @return [String] # # @!attribute [rw] domain_name # DomainName represents the name of the Domain that we are trying to # modify. This should be present only if we are querying for list of # available Elasticsearch instance types when modifying existing # domain. # @return [String] # # @!attribute [rw] max_results # Set this value to limit the number of results returned. Value # provided must be greater than 30 else it wont be honored. # @return [Integer] # # @!attribute [rw] next_token # NextToken should be sent in case if earlier API call produced result # containing NextToken. It is used for pagination. # @return [String] # class ListElasticsearchInstanceTypesRequest < Struct.new( :elasticsearch_version, :domain_name, :max_results, :next_token) include Aws::Structure end # Container for the parameters returned by ` # ListElasticsearchInstanceTypes ` operation. # # @!attribute [rw] elasticsearch_instance_types # List of instance types supported by Amazon Elasticsearch service for # given ` ElasticsearchVersion ` # @return [Array] # # @!attribute [rw] next_token # In case if there are more results available NextToken would be # present, make further request to the same API with received # NextToken to paginate remaining results. # @return [String] # class ListElasticsearchInstanceTypesResponse < Struct.new( :elasticsearch_instance_types, :next_token) include Aws::Structure end # Container for the parameters to the ` ListElasticsearchVersions ` # operation. Use ` MaxResults ` to control the maximum number of results # to # retrieve in a single call. # # Use ` NextToken ` in response to retrieve more results. If the # received response does not contain a NextToken, then there are no more # results to retrieve. # # @note When making an API call, you may pass ListElasticsearchVersionsRequest # data as a hash: # # { # max_results: 1, # next_token: "NextToken", # } # # @!attribute [rw] max_results # Set this value to limit the number of results returned. Value # provided must be greater than 10 else it wont be honored. # @return [Integer] # # @!attribute [rw] next_token # Paginated APIs accepts NextToken input to returns next page results # and provides a NextToken output in the response which can be used by # the client to retrieve more results. # @return [String] # class ListElasticsearchVersionsRequest < Struct.new( :max_results, :next_token) include Aws::Structure end # Container for the parameters for response received from ` # ListElasticsearchVersions ` operation. # # @!attribute [rw] elasticsearch_versions # List of supported elastic search versions. # @return [Array] # # @!attribute [rw] next_token # Paginated APIs accepts NextToken input to returns next page results # and provides a NextToken output in the response which can be used by # the client to retrieve more results. # @return [String] # class ListElasticsearchVersionsResponse < Struct.new( :elasticsearch_versions, :next_token) include Aws::Structure end # Container for the parameters to the `ListTags` operation. Specify the # `ARN` for the Elasticsearch domain to which the tags are attached that # you want to view are attached. # # @note When making an API call, you may pass ListTagsRequest # data as a hash: # # { # arn: "ARN", # required # } # # @!attribute [rw] arn # Specify the `ARN` for the Elasticsearch domain to which the tags are # attached that you want to view. # @return [String] # class ListTagsRequest < Struct.new( :arn) include Aws::Structure end # The result of a `ListTags` operation. Contains tags for all requested # Elasticsearch domains. # # @!attribute [rw] tag_list # List of `Tag` for the requested Elasticsearch domain. # @return [Array] # class ListTagsResponse < Struct.new( :tag_list) include Aws::Structure end # Log Publishing option that is set for given domain. # Attributes and their details: * CloudWatchLogsLogGroupArn: ARN of the # Cloudwatch log group to which # log needs to be published. # * Enabled: Whether the log publishing for given log type is enabled or # not # # @note When making an API call, you may pass LogPublishingOption # data as a hash: # # { # cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn", # enabled: false, # } # # @!attribute [rw] cloud_watch_logs_log_group_arn # ARN of the Cloudwatch log group to which log needs to be published. # @return [String] # # @!attribute [rw] enabled # Specifies whether given log publishing option is enabled or not. # @return [Boolean] # class LogPublishingOption < Struct.new( :cloud_watch_logs_log_group_arn, :enabled) include Aws::Structure end # The configured log publishing options for the domain and their current # status. # # @!attribute [rw] options # The log publishing options configured for the Elasticsearch domain. # @return [Hash] # # @!attribute [rw] status # The status of the log publishing options for the Elasticsearch # domain. See `OptionStatus` for the status information that's # included. # @return [Types::OptionStatus] # class LogPublishingOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # Provides the current status of the entity. # # @!attribute [rw] creation_date # Timestamp which tells the creation date for the entity. # @return [Time] # # @!attribute [rw] update_date # Timestamp which tells the last updated time for the entity. # @return [Time] # # @!attribute [rw] update_version # Specifies the latest version for the entity. # @return [Integer] # # @!attribute [rw] state # Provides the `OptionState` for the Elasticsearch domain. # @return [String] # # @!attribute [rw] pending_deletion # Indicates whether the Elasticsearch domain is being deleted. # @return [Boolean] # class OptionStatus < Struct.new( :creation_date, :update_date, :update_version, :state, :pending_deletion) include Aws::Structure end # Container for parameters to # `PurchaseReservedElasticsearchInstanceOffering` # # @note When making an API call, you may pass PurchaseReservedElasticsearchInstanceOfferingRequest # data as a hash: # # { # reserved_elasticsearch_instance_offering_id: "GUID", # required # reservation_name: "ReservationToken", # required # instance_count: 1, # } # # @!attribute [rw] reserved_elasticsearch_instance_offering_id # The ID of the reserved Elasticsearch instance offering to purchase. # @return [String] # # @!attribute [rw] reservation_name # A customer-specified identifier to track this reservation. # @return [String] # # @!attribute [rw] instance_count # The number of Elasticsearch instances to reserve. # @return [Integer] # class PurchaseReservedElasticsearchInstanceOfferingRequest < Struct.new( :reserved_elasticsearch_instance_offering_id, :reservation_name, :instance_count) include Aws::Structure end # Represents the output of a # `PurchaseReservedElasticsearchInstanceOffering` operation. # # @!attribute [rw] reserved_elasticsearch_instance_id # Details of the reserved Elasticsearch instance which was purchased. # @return [String] # # @!attribute [rw] reservation_name # The customer-specified identifier used to track this reservation. # @return [String] # class PurchaseReservedElasticsearchInstanceOfferingResponse < Struct.new( :reserved_elasticsearch_instance_id, :reservation_name) include Aws::Structure end # Contains the specific price and frequency of a recurring charges for a # reserved Elasticsearch instance, or for a reserved Elasticsearch # instance offering. # # @!attribute [rw] recurring_charge_amount # The monetary amount of the recurring charge. # @return [Float] # # @!attribute [rw] recurring_charge_frequency # The frequency of the recurring charge. # @return [String] # class RecurringCharge < Struct.new( :recurring_charge_amount, :recurring_charge_frequency) include Aws::Structure end # Container for the parameters to the `RemoveTags` operation. Specify # the `ARN` for the Elasticsearch domain from which you want to remove # the specified `TagKey`. # # @note When making an API call, you may pass RemoveTagsRequest # data as a hash: # # { # arn: "ARN", # required # tag_keys: ["String"], # required # } # # @!attribute [rw] arn # Specifies the `ARN` for the Elasticsearch domain from which you want # to delete the specified tags. # @return [String] # # @!attribute [rw] tag_keys # Specifies the `TagKey` list which you want to remove from the # Elasticsearch domain. # @return [Array] # class RemoveTagsRequest < Struct.new( :arn, :tag_keys) include Aws::Structure end # Details of a reserved Elasticsearch instance. # # @!attribute [rw] reservation_name # The customer-specified identifier to track this reservation. # @return [String] # # @!attribute [rw] reserved_elasticsearch_instance_id # The unique identifier for the reservation. # @return [String] # # @!attribute [rw] reserved_elasticsearch_instance_offering_id # The offering identifier. # @return [String] # # @!attribute [rw] elasticsearch_instance_type # The Elasticsearch instance type offered by the reserved instance # offering. # @return [String] # # @!attribute [rw] start_time # The time the reservation started. # @return [Time] # # @!attribute [rw] duration # The duration, in seconds, for which the Elasticsearch instance is # reserved. # @return [Integer] # # @!attribute [rw] fixed_price # The upfront fixed charge you will paid to purchase the specific # reserved Elasticsearch instance offering. # @return [Float] # # @!attribute [rw] usage_price # The rate you are charged for each hour for the domain that is using # this reserved instance. # @return [Float] # # @!attribute [rw] currency_code # The currency code for the reserved Elasticsearch instance offering. # @return [String] # # @!attribute [rw] elasticsearch_instance_count # The number of Elasticsearch instances that have been reserved. # @return [Integer] # # @!attribute [rw] state # The state of the reserved Elasticsearch instance. # @return [String] # # @!attribute [rw] payment_option # The payment option as defined in the reserved Elasticsearch instance # offering. # @return [String] # # @!attribute [rw] recurring_charges # The charge to your account regardless of whether you are creating # any domains using the instance offering. # @return [Array] # class ReservedElasticsearchInstance < Struct.new( :reservation_name, :reserved_elasticsearch_instance_id, :reserved_elasticsearch_instance_offering_id, :elasticsearch_instance_type, :start_time, :duration, :fixed_price, :usage_price, :currency_code, :elasticsearch_instance_count, :state, :payment_option, :recurring_charges) include Aws::Structure end # Details of a reserved Elasticsearch instance offering. # # @!attribute [rw] reserved_elasticsearch_instance_offering_id # The Elasticsearch reserved instance offering identifier. # @return [String] # # @!attribute [rw] elasticsearch_instance_type # The Elasticsearch instance type offered by the reserved instance # offering. # @return [String] # # @!attribute [rw] duration # The duration, in seconds, for which the offering will reserve the # Elasticsearch instance. # @return [Integer] # # @!attribute [rw] fixed_price # The upfront fixed charge you will pay to purchase the specific # reserved Elasticsearch instance offering. # @return [Float] # # @!attribute [rw] usage_price # The rate you are charged for each hour the domain that is using the # offering is running. # @return [Float] # # @!attribute [rw] currency_code # The currency code for the reserved Elasticsearch instance offering. # @return [String] # # @!attribute [rw] payment_option # Payment option for the reserved Elasticsearch instance offering # @return [String] # # @!attribute [rw] recurring_charges # The charge to your account regardless of whether you are creating # any domains using the instance offering. # @return [Array] # class ReservedElasticsearchInstanceOffering < Struct.new( :reserved_elasticsearch_instance_offering_id, :elasticsearch_instance_type, :duration, :fixed_price, :usage_price, :currency_code, :payment_option, :recurring_charges) include Aws::Structure end # Specifies the time, in UTC format, when the service takes a daily # automated snapshot of the specified Elasticsearch domain. Default # value is `0` hours. # # @note When making an API call, you may pass SnapshotOptions # data as a hash: # # { # automated_snapshot_start_hour: 1, # } # # @!attribute [rw] automated_snapshot_start_hour # Specifies the time, in UTC format, when the service takes a daily # automated snapshot of the specified Elasticsearch domain. Default # value is `0` hours. # @return [Integer] # class SnapshotOptions < Struct.new( :automated_snapshot_start_hour) include Aws::Structure end # Status of a daily automated snapshot. # # @!attribute [rw] options # Specifies the daily snapshot options specified for the Elasticsearch # domain. # @return [Types::SnapshotOptions] # # @!attribute [rw] status # Specifies the status of a daily automated snapshot. # @return [Types::OptionStatus] # class SnapshotOptionsStatus < Struct.new( :options, :status) include Aws::Structure end # StorageTypes represents the list of storage related types and their # attributes that are available for given InstanceType. # # @!attribute [rw] storage_type_name # Type of the storage. List of available storage options: 1. instance # 2. ebs # @return [String] # # @!attribute [rw] storage_sub_type_name # SubType of the given storage type. List of available sub-storage # options: For "instance" storageType we wont have any # storageSubType, in case of "ebs" storageType we will have # following valid storageSubTypes 1. standard # 2. gp2 # 3. io1 # # Refer `VolumeType` for more information regarding above EBS storage # options. # @return [String] # # @!attribute [rw] storage_type_limits # List of limits that are applicable for given storage type. # @return [Array] # class StorageType < Struct.new( :storage_type_name, :storage_sub_type_name, :storage_type_limits) include Aws::Structure end # Limits that are applicable for given storage type. # # @!attribute [rw] limit_name # Name of storage limits that are applicable for given storage type. # If ` StorageType ` is ebs, following storage options are applicable # 1. MinimumVolumeSize # 2. MaximumVolumeSize # 3. MaximumIops # 4. MinimumIops # @return [String] # # @!attribute [rw] limit_values # Values for the ` StorageTypeLimit$LimitName ` . # @return [Array] # class StorageTypeLimit < Struct.new( :limit_name, :limit_values) include Aws::Structure end # Specifies a key value pair for a resource tag. # # @note When making an API call, you may pass Tag # data as a hash: # # { # key: "TagKey", # required # value: "TagValue", # required # } # # @!attribute [rw] key # Specifies the `TagKey`, the name of the tag. Tag keys must be unique # for the Elasticsearch domain to which they are attached. # @return [String] # # @!attribute [rw] value # Specifies the `TagValue`, the value assigned to the corresponding # tag key. Tag values can be null and do not have to be unique in a # tag set. For example, you can have a key value pair in a tag set of # `project : Trinity` and `cost-center : Trinity` # @return [String] # class Tag < Struct.new( :key, :value) include Aws::Structure end # Container for the parameters to the `UpdateElasticsearchDomain` # operation. Specifies the type and number of instances in the domain # cluster. # # @note When making an API call, you may pass UpdateElasticsearchDomainConfigRequest # data as a hash: # # { # domain_name: "DomainName", # required # elasticsearch_cluster_config: { # instance_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # instance_count: 1, # dedicated_master_enabled: false, # zone_awareness_enabled: false, # dedicated_master_type: "m3.medium.elasticsearch", # accepts m3.medium.elasticsearch, m3.large.elasticsearch, m3.xlarge.elasticsearch, m3.2xlarge.elasticsearch, m4.large.elasticsearch, m4.xlarge.elasticsearch, m4.2xlarge.elasticsearch, m4.4xlarge.elasticsearch, m4.10xlarge.elasticsearch, t2.micro.elasticsearch, t2.small.elasticsearch, t2.medium.elasticsearch, r3.large.elasticsearch, r3.xlarge.elasticsearch, r3.2xlarge.elasticsearch, r3.4xlarge.elasticsearch, r3.8xlarge.elasticsearch, i2.xlarge.elasticsearch, i2.2xlarge.elasticsearch, d2.xlarge.elasticsearch, d2.2xlarge.elasticsearch, d2.4xlarge.elasticsearch, d2.8xlarge.elasticsearch, c4.large.elasticsearch, c4.xlarge.elasticsearch, c4.2xlarge.elasticsearch, c4.4xlarge.elasticsearch, c4.8xlarge.elasticsearch, r4.large.elasticsearch, r4.xlarge.elasticsearch, r4.2xlarge.elasticsearch, r4.4xlarge.elasticsearch, r4.8xlarge.elasticsearch, r4.16xlarge.elasticsearch, i3.large.elasticsearch, i3.xlarge.elasticsearch, i3.2xlarge.elasticsearch, i3.4xlarge.elasticsearch, i3.8xlarge.elasticsearch, i3.16xlarge.elasticsearch # dedicated_master_count: 1, # }, # ebs_options: { # ebs_enabled: false, # volume_type: "standard", # accepts standard, gp2, io1 # volume_size: 1, # iops: 1, # }, # snapshot_options: { # automated_snapshot_start_hour: 1, # }, # vpc_options: { # subnet_ids: ["String"], # security_group_ids: ["String"], # }, # cognito_options: { # enabled: false, # user_pool_id: "UserPoolId", # identity_pool_id: "IdentityPoolId", # role_arn: "RoleArn", # }, # advanced_options: { # "String" => "String", # }, # access_policies: "PolicyDocument", # log_publishing_options: { # "INDEX_SLOW_LOGS" => { # cloud_watch_logs_log_group_arn: "CloudWatchLogsLogGroupArn", # enabled: false, # }, # }, # } # # @!attribute [rw] domain_name # The name of the Elasticsearch domain that you are updating. # @return [String] # # @!attribute [rw] elasticsearch_cluster_config # The type and number of instances to instantiate for the domain # cluster. # @return [Types::ElasticsearchClusterConfig] # # @!attribute [rw] ebs_options # Specify the type and size of the EBS volume that you want to use. # @return [Types::EBSOptions] # # @!attribute [rw] snapshot_options # Option to set the time, in UTC format, for the daily automated # snapshot. Default value is `0` hours. # @return [Types::SnapshotOptions] # # @!attribute [rw] vpc_options # Options to specify the subnets and security groups for VPC endpoint. # For more information, see [Creating a VPC][1] in *VPC Endpoints for # Amazon Elasticsearch Service Domains* # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html#es-creating-vpc # @return [Types::VPCOptions] # # @!attribute [rw] cognito_options # Options to specify the Cognito user and identity pools for Kibana # authentication. For more information, see [Amazon Cognito # Authentication for Kibana][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html # @return [Types::CognitoOptions] # # @!attribute [rw] advanced_options # Modifies the advanced option to allow references to indices in an # HTTP request body. Must be `false` when configuring access to # individual sub-resources. By default, the value is `true`. See # [Configuration Advanced Options][1] for more information. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options # @return [Hash] # # @!attribute [rw] access_policies # IAM access policy as a JSON-formatted string. # @return [String] # # @!attribute [rw] log_publishing_options # Map of `LogType` and `LogPublishingOption`, each containing options # to publish a given type of Elasticsearch log. # @return [Hash] # class UpdateElasticsearchDomainConfigRequest < Struct.new( :domain_name, :elasticsearch_cluster_config, :ebs_options, :snapshot_options, :vpc_options, :cognito_options, :advanced_options, :access_policies, :log_publishing_options) include Aws::Structure end # The result of an `UpdateElasticsearchDomain` request. Contains the # status of the Elasticsearch domain being updated. # # @!attribute [rw] domain_config # The status of the updated Elasticsearch domain. # @return [Types::ElasticsearchDomainConfig] # class UpdateElasticsearchDomainConfigResponse < Struct.new( :domain_config) include Aws::Structure end # Container for request parameters to ` UpgradeElasticsearchDomain ` # operation. # # @note When making an API call, you may pass UpgradeElasticsearchDomainRequest # data as a hash: # # { # domain_name: "DomainName", # required # target_version: "ElasticsearchVersionString", # required # perform_check_only: false, # } # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # # @!attribute [rw] target_version # The version of Elasticsearch that you intend to upgrade the domain # to. # @return [String] # # @!attribute [rw] perform_check_only # This flag, when set to True, indicates that an Upgrade Eligibility # Check needs to be performed. This will not actually perform the # Upgrade. # @return [Boolean] # class UpgradeElasticsearchDomainRequest < Struct.new( :domain_name, :target_version, :perform_check_only) include Aws::Structure end # Container for response returned by ` UpgradeElasticsearchDomain ` # operation. # # @!attribute [rw] domain_name # The name of an Elasticsearch domain. Domain names are unique across # the domains owned by an account within an AWS region. Domain names # start with a letter or number and can contain the following # characters: a-z (lowercase), 0-9, and - (hyphen). # @return [String] # # @!attribute [rw] target_version # The version of Elasticsearch that you intend to upgrade the domain # to. # @return [String] # # @!attribute [rw] perform_check_only # This flag, when set to True, indicates that an Upgrade Eligibility # Check needs to be performed. This will not actually perform the # Upgrade. # @return [Boolean] # class UpgradeElasticsearchDomainResponse < Struct.new( :domain_name, :target_version, :perform_check_only) include Aws::Structure end # History of the last 10 Upgrades and Upgrade Eligibility Checks. # # @!attribute [rw] upgrade_name # A string that describes the update briefly # @return [String] # # @!attribute [rw] start_timestamp # UTC Timestamp at which the Upgrade API call was made in # "yyyy-MM-ddTHH:mm:ssZ" format. # @return [Time] # # @!attribute [rw] upgrade_status # The overall status of the update. The status can take one of the # following values: * In Progress # * Succeeded # * Succeeded with Issues # * Failed # @return [String] # # @!attribute [rw] steps_list # A list of ` UpgradeStepItem ` s representing information about each # step performed as pard of a specific Upgrade or Upgrade Eligibility # Check. # @return [Array] # class UpgradeHistory < Struct.new( :upgrade_name, :start_timestamp, :upgrade_status, :steps_list) include Aws::Structure end # Represents a single step of the Upgrade or Upgrade Eligibility Check # workflow. # # @!attribute [rw] upgrade_step # Represents one of 3 steps that an Upgrade or Upgrade Eligibility # Check does through: * PreUpgradeCheck # * Snapshot # * Upgrade # @return [String] # # @!attribute [rw] upgrade_step_status # The status of a particular step during an upgrade. The status can # take one of the following values: * In Progress # * Succeeded # * Succeeded with Issues # * Failed # @return [String] # # @!attribute [rw] issues # A list of strings containing detailed information about the errors # encountered in a particular step. # @return [Array] # # @!attribute [rw] progress_percent # The Floating point value representing progress percentage of a # particular step. # @return [Float] # class UpgradeStepItem < Struct.new( :upgrade_step, :upgrade_step_status, :issues, :progress_percent) include Aws::Structure end # Options to specify the subnets and security groups for VPC endpoint. # For more information, see [ VPC Endpoints for Amazon Elasticsearch # Service Domains][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html # # @!attribute [rw] vpc_id # The VPC Id for the Elasticsearch domain. Exists only if the domain # was created with VPCOptions. # @return [String] # # @!attribute [rw] subnet_ids # Specifies the subnets for VPC endpoint. # @return [Array] # # @!attribute [rw] availability_zones # The availability zones for the Elasticsearch domain. Exists only if # the domain was created with VPCOptions. # @return [Array] # # @!attribute [rw] security_group_ids # Specifies the security groups for VPC endpoint. # @return [Array] # class VPCDerivedInfo < Struct.new( :vpc_id, :subnet_ids, :availability_zones, :security_group_ids) include Aws::Structure end # Status of the VPC options for the specified Elasticsearch domain. # # @!attribute [rw] options # Specifies the VPC options for the specified Elasticsearch domain. # @return [Types::VPCDerivedInfo] # # @!attribute [rw] status # Specifies the status of the VPC options for the specified # Elasticsearch domain. # @return [Types::OptionStatus] # class VPCDerivedInfoStatus < Struct.new( :options, :status) include Aws::Structure end # Options to specify the subnets and security groups for VPC endpoint. # For more information, see [ VPC Endpoints for Amazon Elasticsearch # Service Domains][1]. # # # # [1]: http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-vpc.html # # @note When making an API call, you may pass VPCOptions # data as a hash: # # { # subnet_ids: ["String"], # security_group_ids: ["String"], # } # # @!attribute [rw] subnet_ids # Specifies the subnets for VPC endpoint. # @return [Array] # # @!attribute [rw] security_group_ids # Specifies the security groups for VPC endpoint. # @return [Array] # class VPCOptions < Struct.new( :subnet_ids, :security_group_ids) include Aws::Structure end end end