This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.

elasticsearch

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

class pulumi_aws.elasticsearch.AwaitableGetDomainResult(access_policies=None, advanced_options=None, arn=None, cluster_configs=None, cognito_options=None, created=None, deleted=None, domain_id=None, domain_name=None, ebs_options=None, elasticsearch_version=None, encryption_at_rests=None, endpoint=None, id=None, kibana_endpoint=None, log_publishing_options=None, node_to_node_encryptions=None, processing=None, snapshot_options=None, tags=None, vpc_options=None)
class pulumi_aws.elasticsearch.Domain(resource_name, opts=None, access_policies=None, advanced_options=None, cluster_config=None, cognito_options=None, domain_endpoint_options=None, domain_name=None, ebs_options=None, elasticsearch_version=None, encrypt_at_rest=None, log_publishing_options=None, node_to_node_encryption=None, snapshot_options=None, tags=None, vpc_options=None, __props__=None, __name__=None, __opts__=None)

Manages an AWS Elasticsearch Domain.

import pulumi
import pulumi_aws as aws

example = aws.elasticsearch.Domain("example",
    cluster_config={
        "cluster_config": "r4.large.elasticsearch",
    },
    elasticsearch_version="1.5",
    snapshot_options={
        "snapshot_options": 23,
    },
    tags={
        "Domain": "TestDomain",
    })
import pulumi
import pulumi_aws as aws

config = pulumi.Config()
domain = config.get("domain")
if domain is None:
    domain = "tf-test"
current_region = aws.get_region()
current_caller_identity = aws.get_caller_identity()
example = aws.elasticsearch.Domain("example", access_policies=f"""{{
  "Version": "2012-10-17",
  "Statement": [
    {{
      "Action": "es:*",
      "Principal": "*",
      "Effect": "Allow",
      "Resource": "arn:aws:es:{current_region.name}:{current_caller_identity.account_id}:domain/{domain}/*",
      "Condition": {{
        "IpAddress": {{"aws:SourceIp": ["66.193.100.22/32"]}}
      }}
    }}
  ]
}}

""")
import pulumi
import pulumi_aws as aws

example_log_group = aws.cloudwatch.LogGroup("exampleLogGroup")
example_log_resource_policy = aws.cloudwatch.LogResourcePolicy("exampleLogResourcePolicy",
    policy_document="""{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "es.amazonaws.com"
      },
      "Action": [
        "logs:PutLogEvents",
        "logs:PutLogEventsBatch",
        "logs:CreateLogStream"
      ],
      "Resource": "arn:aws:logs:*"
    }
  ]
}

""",
    policy_name="example")
example_domain = aws.elasticsearch.Domain("exampleDomain", log_publishing_options=[{
    "cloudwatch_log_group_arn": example_log_group.arn,
    "logType": "INDEX_SLOW_LOGS",
}])
import pulumi
import pulumi_aws as aws

config = pulumi.Config()
vpc = config.require_object("vpc")
domain = config.get("domain")
if domain is None:
    domain = "tf-test"
selected_vpc = aws.ec2.get_vpc(tags={
    "Name": vpc,
})
selected_subnet_ids = aws.ec2.get_subnet_ids(tags={
        "Tier": "private",
    },
    vpc_id=selected_vpc.id)
current_region = aws.get_region()
current_caller_identity = aws.get_caller_identity()
es_security_group = aws.ec2.SecurityGroup("esSecurityGroup",
    description="Managed by Pulumi",
    ingress=[{
        "cidr_blocks": [selected_vpc.cidr_block],
        "from_port": 443,
        "protocol": "tcp",
        "to_port": 443,
    }],
    vpc_id=selected_vpc.id)
es_service_linked_role = aws.iam.ServiceLinkedRole("esServiceLinkedRole", aws_service_name="es.amazonaws.com")
es_domain = aws.elasticsearch.Domain("esDomain",
    access_policies=f"""{{
        "Version": "2012-10-17",
        "Statement": [
                {{
                        "Action": "es:*",
                        "Principal": "*",
                        "Effect": "Allow",
                        "Resource": "arn:aws:es:{current_region.name}:{current_caller_identity.account_id}:domain/{domain}/*"
                }}
        ]
}}

""",
    advanced_options={
        "rest.action.multi.allow_explicit_index": "true",
    },
    cluster_config={
        "cluster_config": "m4.large.elasticsearch",
    },
    elasticsearch_version="6.3",
    snapshot_options={
        "snapshot_options": 23,
    },
    tags={
        "Domain": "TestDomain",
    },
    vpc_options={
        "security_group_ids": [es_security_group.id],
        "subnet_ids": [
            selected_subnet_ids.ids[0],
            selected_subnet_ids.ids[1],
        ],
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_policies (pulumi.Input[dict]) – IAM policy document specifying the access policies for the domain

  • advanced_options (pulumi.Input[dict]) – Key-value string pairs to specify advanced configuration options. Note that the values for these configuration options must be strings (wrapped in quotes) or they may be wrong and cause a perpetual diff, causing this provider to want to recreate your Elasticsearch domain on every apply.

  • cluster_config (pulumi.Input[dict]) – Cluster configuration of the domain, see below.

  • domain_endpoint_options (pulumi.Input[dict]) – Domain endpoint HTTP(S) related options. See below.

  • domain_name (pulumi.Input[str]) – Name of the domain.

  • ebs_options (pulumi.Input[dict]) – EBS related options, may be required based on chosen instance size. See below.

  • elasticsearch_version (pulumi.Input[str]) – The version of Elasticsearch to deploy. Defaults to 1.5

  • encrypt_at_rest (pulumi.Input[dict]) – Encrypt at rest options. Only available for certain instance types. See below.

  • log_publishing_options (pulumi.Input[list]) – Options for publishing slow logs to CloudWatch Logs.

  • node_to_node_encryption (pulumi.Input[dict]) – Node-to-node encryption options. See below.

  • snapshot_options (pulumi.Input[dict]) – Snapshot related options, see below.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource

  • vpc_options (pulumi.Input[dict]) – VPC related options, see below. Adding or removing this configuration forces a new resource (documentation).

The cluster_config object supports the following:

  • dedicatedMasterCount (pulumi.Input[float]) - Number of dedicated master nodes in the cluster

  • dedicatedMasterEnabled (pulumi.Input[bool]) - Indicates whether dedicated master nodes are enabled for the cluster.

  • dedicatedMasterType (pulumi.Input[str]) - Instance type of the dedicated master nodes in the cluster.

  • instance_count (pulumi.Input[float]) - Number of instances in the cluster.

  • instance_type (pulumi.Input[str]) - Instance type of data nodes in the cluster.

  • warmCount (pulumi.Input[float]) - The number of warm nodes in the cluster. Valid values are between 2 and 150. warm_count can be only and must be set when warm_enabled is set to true.

  • warmEnabled (pulumi.Input[bool]) - Indicates whether to enable warm storage.

  • warmType (pulumi.Input[str]) - The instance type for the Elasticsearch cluster’s warm nodes. Valid values are ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch and ultrawarm1.xlarge.elasticsearch. warm_type can be only and must be set when warm_enabled is set to true.

  • zoneAwarenessConfig (pulumi.Input[dict]) - Configuration block containing zone awareness settings. Documented below.

    • availabilityZoneCount (pulumi.Input[float]) - Number of Availability Zones for the domain to use with zone_awareness_enabled. Defaults to 2. Valid values: 2 or 3.

  • zoneAwarenessEnabled (pulumi.Input[bool]) - Indicates whether zone awareness is enabled, set to true for multi-az deployment. To enable awareness with three Availability Zones, the availability_zone_count within the zone_awareness_config must be set to 3.

The cognito_options object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • identity_pool_id (pulumi.Input[str]) - ID of the Cognito Identity Pool to use

  • role_arn (pulumi.Input[str]) - ARN of the IAM role that has the AmazonESCognitoAccess policy attached

  • user_pool_id (pulumi.Input[str]) - ID of the Cognito User Pool to use

The domain_endpoint_options object supports the following:

  • enforceHttps (pulumi.Input[bool]) - Whether or not to require HTTPS

  • tlsSecurityPolicy (pulumi.Input[str]) - The name of the TLS security policy that needs to be applied to the HTTPS endpoint. Valid values: Policy-Min-TLS-1-0-2019-07 and Policy-Min-TLS-1-2-2019-07. This provider will only perform drift detection if a configuration value is provided.

The ebs_options object supports the following:

  • ebsEnabled (pulumi.Input[bool]) - Whether EBS volumes are attached to data nodes in the domain.

  • iops (pulumi.Input[float]) - The baseline input/output (I/O) performance of EBS volumes attached to data nodes. Applicable only for the Provisioned IOPS EBS volume type.

  • volume_size (pulumi.Input[float]) - The size of EBS volumes attached to data nodes (in GB). Required if ebs_enabled is set to true.

  • volumeType (pulumi.Input[str]) - The type of EBS volumes attached to data nodes.

The encrypt_at_rest object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • kms_key_id (pulumi.Input[str]) - The KMS key id to encrypt the Elasticsearch domain with. If not specified then it defaults to using the aws/es service KMS key.

The log_publishing_options object supports the following:

  • cloudwatch_log_group_arn (pulumi.Input[str]) - ARN of the Cloudwatch log group to which log needs to be published.

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • logType (pulumi.Input[str]) - A type of Elasticsearch log. Valid values: INDEX_SLOW_LOGS, SEARCH_SLOW_LOGS, ES_APPLICATION_LOGS

The node_to_node_encryption object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

The snapshot_options object supports the following:

  • automatedSnapshotStartHour (pulumi.Input[float]) - Hour during which the service takes an automated daily snapshot of the indices in the domain.

The vpc_options object supports the following:

  • availability_zones (pulumi.Input[list])

  • security_group_ids (pulumi.Input[list]) - List of VPC Security Group IDs to be applied to the Elasticsearch domain endpoints. If omitted, the default Security Group for the VPC will be used.

  • subnet_ids (pulumi.Input[list]) - List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in.

  • vpc_id (pulumi.Input[str])

access_policies: pulumi.Output[str] = None

IAM policy document specifying the access policies for the domain

advanced_options: pulumi.Output[dict] = None

Key-value string pairs to specify advanced configuration options. Note that the values for these configuration options must be strings (wrapped in quotes) or they may be wrong and cause a perpetual diff, causing this provider to want to recreate your Elasticsearch domain on every apply.

arn: pulumi.Output[str] = None

Amazon Resource Name (ARN) of the domain.

cluster_config: pulumi.Output[dict] = None

Cluster configuration of the domain, see below.

  • dedicatedMasterCount (float) - Number of dedicated master nodes in the cluster

  • dedicatedMasterEnabled (bool) - Indicates whether dedicated master nodes are enabled for the cluster.

  • dedicatedMasterType (str) - Instance type of the dedicated master nodes in the cluster.

  • instance_count (float) - Number of instances in the cluster.

  • instance_type (str) - Instance type of data nodes in the cluster.

  • warmCount (float) - The number of warm nodes in the cluster. Valid values are between 2 and 150. warm_count can be only and must be set when warm_enabled is set to true.

  • warmEnabled (bool) - Indicates whether to enable warm storage.

  • warmType (str) - The instance type for the Elasticsearch cluster’s warm nodes. Valid values are ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch and ultrawarm1.xlarge.elasticsearch. warm_type can be only and must be set when warm_enabled is set to true.

  • zoneAwarenessConfig (dict) - Configuration block containing zone awareness settings. Documented below.

    • availabilityZoneCount (float) - Number of Availability Zones for the domain to use with zone_awareness_enabled. Defaults to 2. Valid values: 2 or 3.

  • zoneAwarenessEnabled (bool) - Indicates whether zone awareness is enabled, set to true for multi-az deployment. To enable awareness with three Availability Zones, the availability_zone_count within the zone_awareness_config must be set to 3.

domain_endpoint_options: pulumi.Output[dict] = None

Domain endpoint HTTP(S) related options. See below.

  • enforceHttps (bool) - Whether or not to require HTTPS

  • tlsSecurityPolicy (str) - The name of the TLS security policy that needs to be applied to the HTTPS endpoint. Valid values: Policy-Min-TLS-1-0-2019-07 and Policy-Min-TLS-1-2-2019-07. This provider will only perform drift detection if a configuration value is provided.

domain_id: pulumi.Output[str] = None

Unique identifier for the domain.

domain_name: pulumi.Output[str] = None

Name of the domain.

ebs_options: pulumi.Output[dict] = None

EBS related options, may be required based on chosen instance size. See below.

  • ebsEnabled (bool) - Whether EBS volumes are attached to data nodes in the domain.

  • iops (float) - The baseline input/output (I/O) performance of EBS volumes attached to data nodes. Applicable only for the Provisioned IOPS EBS volume type.

  • volume_size (float) - The size of EBS volumes attached to data nodes (in GB). Required if ebs_enabled is set to true.

  • volumeType (str) - The type of EBS volumes attached to data nodes.

elasticsearch_version: pulumi.Output[str] = None

The version of Elasticsearch to deploy. Defaults to 1.5

encrypt_at_rest: pulumi.Output[dict] = None

Encrypt at rest options. Only available for certain instance types. See below.

  • enabled (bool) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • kms_key_id (str) - The KMS key id to encrypt the Elasticsearch domain with. If not specified then it defaults to using the aws/es service KMS key.

endpoint: pulumi.Output[str] = None

Domain-specific endpoint used to submit index, search, and data upload requests.

kibana_endpoint: pulumi.Output[str] = None

Domain-specific endpoint for kibana without https scheme.

  • vpc_options.0.availability_zones - If the domain was created inside a VPC, the names of the availability zones the configured subnet_ids were created inside.

  • vpc_options.0.vpc_id - If the domain was created inside a VPC, the ID of the VPC.

log_publishing_options: pulumi.Output[list] = None

Options for publishing slow logs to CloudWatch Logs.

  • cloudwatch_log_group_arn (str) - ARN of the Cloudwatch log group to which log needs to be published.

  • enabled (bool) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • logType (str) - A type of Elasticsearch log. Valid values: INDEX_SLOW_LOGS, SEARCH_SLOW_LOGS, ES_APPLICATION_LOGS

node_to_node_encryption: pulumi.Output[dict] = None

Node-to-node encryption options. See below.

  • enabled (bool) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

snapshot_options: pulumi.Output[dict] = None

Snapshot related options, see below.

  • automatedSnapshotStartHour (float) - Hour during which the service takes an automated daily snapshot of the indices in the domain.

tags: pulumi.Output[dict] = None

A map of tags to assign to the resource

vpc_options: pulumi.Output[dict] = None

VPC related options, see below. Adding or removing this configuration forces a new resource (documentation).

  • availability_zones (list)

  • security_group_ids (list) - List of VPC Security Group IDs to be applied to the Elasticsearch domain endpoints. If omitted, the default Security Group for the VPC will be used.

  • subnet_ids (list) - List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in.

  • vpc_id (str)

static get(resource_name, id, opts=None, access_policies=None, advanced_options=None, arn=None, cluster_config=None, cognito_options=None, domain_endpoint_options=None, domain_id=None, domain_name=None, ebs_options=None, elasticsearch_version=None, encrypt_at_rest=None, endpoint=None, kibana_endpoint=None, log_publishing_options=None, node_to_node_encryption=None, snapshot_options=None, tags=None, vpc_options=None)

Get an existing Domain resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_policies (pulumi.Input[dict]) – IAM policy document specifying the access policies for the domain

  • advanced_options (pulumi.Input[dict]) – Key-value string pairs to specify advanced configuration options. Note that the values for these configuration options must be strings (wrapped in quotes) or they may be wrong and cause a perpetual diff, causing this provider to want to recreate your Elasticsearch domain on every apply.

  • arn (pulumi.Input[str]) – Amazon Resource Name (ARN) of the domain.

  • cluster_config (pulumi.Input[dict]) – Cluster configuration of the domain, see below.

  • domain_endpoint_options (pulumi.Input[dict]) – Domain endpoint HTTP(S) related options. See below.

  • domain_id (pulumi.Input[str]) – Unique identifier for the domain.

  • domain_name (pulumi.Input[str]) – Name of the domain.

  • ebs_options (pulumi.Input[dict]) –

    EBS related options, may be required based on chosen instance size. See below.

  • elasticsearch_version (pulumi.Input[str]) – The version of Elasticsearch to deploy. Defaults to 1.5

  • encrypt_at_rest (pulumi.Input[dict]) –

    Encrypt at rest options. Only available for certain instance types. See below.

  • endpoint (pulumi.Input[str]) – Domain-specific endpoint used to submit index, search, and data upload requests.

  • kibana_endpoint (pulumi.Input[str]) – Domain-specific endpoint for kibana without https scheme.

* `vpc_options.0.availability_zones` - If the domain was created inside a VPC, the names of the availability zones the configured `subnet_ids` were created inside.
* `vpc_options.0.vpc_id` - If the domain was created inside a VPC, the ID of the VPC.
Parameters
  • log_publishing_options (pulumi.Input[list]) – Options for publishing slow logs to CloudWatch Logs.

  • node_to_node_encryption (pulumi.Input[dict]) – Node-to-node encryption options. See below.

  • snapshot_options (pulumi.Input[dict]) – Snapshot related options, see below.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource

  • vpc_options (pulumi.Input[dict]) –

    VPC related options, see below. Adding or removing this configuration forces a new resource (documentation).

The cluster_config object supports the following:

  • dedicatedMasterCount (pulumi.Input[float]) - Number of dedicated master nodes in the cluster

  • dedicatedMasterEnabled (pulumi.Input[bool]) - Indicates whether dedicated master nodes are enabled for the cluster.

  • dedicatedMasterType (pulumi.Input[str]) - Instance type of the dedicated master nodes in the cluster.

  • instance_count (pulumi.Input[float]) - Number of instances in the cluster.

  • instance_type (pulumi.Input[str]) - Instance type of data nodes in the cluster.

  • warmCount (pulumi.Input[float]) - The number of warm nodes in the cluster. Valid values are between 2 and 150. warm_count can be only and must be set when warm_enabled is set to true.

  • warmEnabled (pulumi.Input[bool]) - Indicates whether to enable warm storage.

  • warmType (pulumi.Input[str]) - The instance type for the Elasticsearch cluster’s warm nodes. Valid values are ultrawarm1.medium.elasticsearch, ultrawarm1.large.elasticsearch and ultrawarm1.xlarge.elasticsearch. warm_type can be only and must be set when warm_enabled is set to true.

  • zoneAwarenessConfig (pulumi.Input[dict]) - Configuration block containing zone awareness settings. Documented below.

    • availabilityZoneCount (pulumi.Input[float]) - Number of Availability Zones for the domain to use with zone_awareness_enabled. Defaults to 2. Valid values: 2 or 3.

  • zoneAwarenessEnabled (pulumi.Input[bool]) - Indicates whether zone awareness is enabled, set to true for multi-az deployment. To enable awareness with three Availability Zones, the availability_zone_count within the zone_awareness_config must be set to 3.

The cognito_options object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • identity_pool_id (pulumi.Input[str]) - ID of the Cognito Identity Pool to use

  • role_arn (pulumi.Input[str]) - ARN of the IAM role that has the AmazonESCognitoAccess policy attached

  • user_pool_id (pulumi.Input[str]) - ID of the Cognito User Pool to use

The domain_endpoint_options object supports the following:

  • enforceHttps (pulumi.Input[bool]) - Whether or not to require HTTPS

  • tlsSecurityPolicy (pulumi.Input[str]) - The name of the TLS security policy that needs to be applied to the HTTPS endpoint. Valid values: Policy-Min-TLS-1-0-2019-07 and Policy-Min-TLS-1-2-2019-07. This provider will only perform drift detection if a configuration value is provided.

The ebs_options object supports the following:

  • ebsEnabled (pulumi.Input[bool]) - Whether EBS volumes are attached to data nodes in the domain.

  • iops (pulumi.Input[float]) - The baseline input/output (I/O) performance of EBS volumes attached to data nodes. Applicable only for the Provisioned IOPS EBS volume type.

  • volume_size (pulumi.Input[float]) - The size of EBS volumes attached to data nodes (in GB). Required if ebs_enabled is set to true.

  • volumeType (pulumi.Input[str]) - The type of EBS volumes attached to data nodes.

The encrypt_at_rest object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • kms_key_id (pulumi.Input[str]) - The KMS key id to encrypt the Elasticsearch domain with. If not specified then it defaults to using the aws/es service KMS key.

The log_publishing_options object supports the following:

  • cloudwatch_log_group_arn (pulumi.Input[str]) - ARN of the Cloudwatch log group to which log needs to be published.

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

  • logType (pulumi.Input[str]) - A type of Elasticsearch log. Valid values: INDEX_SLOW_LOGS, SEARCH_SLOW_LOGS, ES_APPLICATION_LOGS

The node_to_node_encryption object supports the following:

  • enabled (pulumi.Input[bool]) - Specifies whether Amazon Cognito authentication with Kibana is enabled or not

The snapshot_options object supports the following:

  • automatedSnapshotStartHour (pulumi.Input[float]) - Hour during which the service takes an automated daily snapshot of the indices in the domain.

The vpc_options object supports the following:

  • availability_zones (pulumi.Input[list])

  • security_group_ids (pulumi.Input[list]) - List of VPC Security Group IDs to be applied to the Elasticsearch domain endpoints. If omitted, the default Security Group for the VPC will be used.

  • subnet_ids (pulumi.Input[list]) - List of VPC Subnet IDs for the Elasticsearch domain endpoints to be created in.

  • vpc_id (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.elasticsearch.DomainPolicy(resource_name, opts=None, access_policies=None, domain_name=None, __props__=None, __name__=None, __opts__=None)

Allows setting policy to an Elasticsearch domain while referencing domain attributes (e.g. ARN)

import pulumi
import pulumi_aws as aws

example = aws.elasticsearch.Domain("example", elasticsearch_version="2.3")
main = aws.elasticsearch.DomainPolicy("main",
    access_policies=example.arn.apply(lambda arn: f"""{{
    "Version": "2012-10-17",
    "Statement": [
        {{
            "Action": "es:*",
            "Principal": "*",
            "Effect": "Allow",
            "Condition": {{
                "IpAddress": {{"aws:SourceIp": "127.0.0.1/32"}}
            }},
            "Resource": "{arn}/*"
        }}
    ]
}}

"""),
    domain_name=example.domain_name)
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_policies (pulumi.Input[dict]) – IAM policy document specifying the access policies for the domain

  • domain_name (pulumi.Input[str]) – Name of the domain.

access_policies: pulumi.Output[str] = None

IAM policy document specifying the access policies for the domain

domain_name: pulumi.Output[str] = None

Name of the domain.

static get(resource_name, id, opts=None, access_policies=None, domain_name=None)

Get an existing DomainPolicy resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • access_policies (pulumi.Input[dict]) – IAM policy document specifying the access policies for the domain

  • domain_name (pulumi.Input[str]) – Name of the domain.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.elasticsearch.GetDomainResult(access_policies=None, advanced_options=None, arn=None, cluster_configs=None, cognito_options=None, created=None, deleted=None, domain_id=None, domain_name=None, ebs_options=None, elasticsearch_version=None, encryption_at_rests=None, endpoint=None, id=None, kibana_endpoint=None, log_publishing_options=None, node_to_node_encryptions=None, processing=None, snapshot_options=None, tags=None, vpc_options=None)

A collection of values returned by getDomain.

access_policies = None

The policy document attached to the domain.

advanced_options = None

Key-value string pairs to specify advanced configuration options.

arn = None

The Amazon Resource Name (ARN) of the domain.

cluster_configs = None

Cluster configuration of the domain.

cognito_options = None

Domain Amazon Cognito Authentication options for Kibana.

created = None

Status of the creation of the domain.

deleted = None

Status of the deletion of the domain.

domain_id = None

Unique identifier for the domain.

ebs_options = None

EBS Options for the instances in the domain.

elasticsearch_version = None

ElasticSearch version for the domain.

encryption_at_rests = None

Domain encryption at rest related options.

endpoint = None

Domain-specific endpoint used to submit index, search, and data upload requests.

id = None

The provider-assigned unique ID for this managed resource.

kibana_endpoint = None

Domain-specific endpoint used to access the Kibana application.

log_publishing_options = None

Domain log publishing related options.

node_to_node_encryptions = None

Domain in transit encryption related options.

processing = None

Status of a configuration change in the domain.

  • snapshot_options – Domain snapshot related options.

tags = None

The tags assigned to the domain.

vpc_options = None

VPC Options for private Elasticsearch domains.

pulumi_aws.elasticsearch.get_domain(domain_name=None, tags=None, opts=None)

Use this data source to get information about an Elasticsearch Domain

import pulumi
import pulumi_aws as aws

my_domain = aws.elasticsearch.get_domain(domain_name="my-domain-name")
Parameters
  • domain_name (str) – Name of the domain.

  • tags (dict) – The tags assigned to the domain.