Class: Aws::ElasticsearchService::Types::CreateElasticsearchDomainRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb

Overview

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

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#access_policiesString

IAM access policy as a JSON-formatted string.

Returns:

  • (String)


921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#advanced_optionsHash<String,String>

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

Returns:

  • (Hash<String,String>)


921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#advanced_security_optionsTypes::AdvancedSecurityOptionsInput

Specifies advanced security options.



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#auto_tune_optionsTypes::AutoTuneOptionsInput

Specifies Auto-Tune options.



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#cognito_optionsTypes::CognitoOptions

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



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#domain_endpoint_optionsTypes::DomainEndpointOptions

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



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#domain_nameString

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

Returns:

  • (String)


921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#ebs_optionsTypes::EBSOptions

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

Returns:



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#elasticsearch_cluster_configTypes::ElasticsearchClusterConfig

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



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#elasticsearch_versionString

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 in the Amazon Elasticsearch Service Developer Guide.

Returns:

  • (String)


921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#encryption_at_rest_optionsTypes::EncryptionAtRestOptions

Specifies the Encryption At Rest Options.



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#log_publishing_optionsHash<String,Types::LogPublishingOption>

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

Returns:



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#node_to_node_encryption_optionsTypes::NodeToNodeEncryptionOptions

Specifies the NodeToNodeEncryptionOptions.



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#snapshot_optionsTypes::SnapshotOptions

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



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#tag_listArray<Types::Tag>

A list of Tag added during domain creation.

Returns:



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end

#vpc_optionsTypes::VPCOptions

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

Returns:



921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
# File 'gems/aws-sdk-elasticsearchservice/lib/aws-sdk-elasticsearchservice/types.rb', line 921

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,
  :node_to_node_encryption_options,
  :advanced_options,
  :log_publishing_options,
  :domain_endpoint_options,
  :advanced_security_options,
  :auto_tune_options,
  :tag_list)
  SENSITIVE = []
  include Aws::Structure
end