Package com.pulumi.aws.opensearch
Class Domain
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.opensearch.Domain
-
public class Domain extends com.pulumi.resources.CustomResourceManages an Amazon OpenSearch Domain. Amazon OpenSearch Service is the successor to Amazon Elasticsearch Service and supports OpenSearch and legacy Elasticsearch OSS (up to 7.10, the final open source version of the software). Notable differences from Elasticsearch: OpenSearch uses `engineVersion` (vs `elasticsearchVersion`), versions are specified as `Elasticsearch_7.10` (vs `7.10`), `instanceType` values end in `search` (vs `elasticsearch`), and the service-linked role is `AWSServiceRoleForAmazonOpenSearchService`. Similarities: ARNs use `arn:aws:es:`, assume role policies reference `es.amazonaws.com`, and IAM policy actions are prefixed with `es:`. ## Example Usage ### Basic Usage
### Access Policy > See also: `aws.opensearch.DomainPolicy` resourcepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import com.pulumi.aws.opensearch.inputs.DomainClusterConfigArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Domain("example", DomainArgs.builder() .clusterConfig(DomainClusterConfigArgs.builder() .instanceType("r4.large.search") .build()) .domainName("example") .engineVersion("Elasticsearch_7.10") .tags(Map.of("Domain", "TestDomain")) .build()); } }
### Log publishing to CloudWatch Logspackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.AwsFunctions; import com.pulumi.aws.inputs.GetRegionArgs; import com.pulumi.aws.inputs.GetCallerIdentityArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementConditionArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { final var config = ctx.config(); final var domain = config.get("domain").orElse("tf-test"); final var current = AwsFunctions.getRegion(GetRegionArgs.builder() .build()); final var currentGetCallerIdentity = AwsFunctions.getCallerIdentity(GetCallerIdentityArgs.builder() .build()); final var example = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .conditions(GetPolicyDocumentStatementConditionArgs.builder() .test("IpAddress") .variable("aws:SourceIp") .values("66.193.100.22/32") .build()) .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("*") .identifiers("*") .build()) .effect("Allow") .actions("es:*") .resources(String.format("arn:aws:es:%s:%s:domain/%s/*", current.region(),currentGetCallerIdentity.accountId(),domain)) .build()) .build()); var exampleDomain = new Domain("exampleDomain", DomainArgs.builder() .domainName(domain) .accessPolicies(example.json()) .build()); } }
### VPC based OpenSearchpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.cloudwatch.LogGroup; import com.pulumi.aws.cloudwatch.LogGroupArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.cloudwatch.LogResourcePolicy; import com.pulumi.aws.cloudwatch.LogResourcePolicyArgs; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import com.pulumi.aws.opensearch.inputs.DomainLogPublishingOptionArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var exampleLogGroup = new LogGroup("exampleLogGroup", LogGroupArgs.builder() .name("example") .build()); final var example = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("Service") .identifiers("es.amazonaws.com") .build()) .effect("Allow") .actions( "logs:PutLogEvents", "logs:PutLogEventsBatch", "logs:CreateLogStream") .resources("arn:aws:logs:*") .build()) .build()); var exampleLogResourcePolicy = new LogResourcePolicy("exampleLogResourcePolicy", LogResourcePolicyArgs.builder() .policyName("example") .policyDocument(example.json()) .build()); var exampleDomain = new Domain("exampleDomain", DomainArgs.builder() .logPublishingOptions(DomainLogPublishingOptionArgs.builder() .cloudwatchLogGroupArn(exampleLogGroup.arn()) .logType("INDEX_SLOW_LOGS") .build()) .build()); } }
### Enabling fine-grained access control on an existing domain This example shows two configurations: one to create a domain without fine-grained access control and the second to modify the domain to enable fine-grained access control. For more information, see [Enabling fine-grained access control](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html). ### First applypackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.ec2.Ec2Functions; import com.pulumi.aws.ec2.inputs.GetVpcArgs; import com.pulumi.aws.ec2.inputs.GetSubnetsArgs; import com.pulumi.aws.ec2.inputs.GetSubnetsFilterArgs; import com.pulumi.aws.AwsFunctions; import com.pulumi.aws.inputs.GetRegionArgs; import com.pulumi.aws.inputs.GetCallerIdentityArgs; import com.pulumi.aws.ec2.SecurityGroup; import com.pulumi.aws.ec2.SecurityGroupArgs; import com.pulumi.aws.ec2.inputs.SecurityGroupIngressArgs; import com.pulumi.aws.iam.ServiceLinkedRole; import com.pulumi.aws.iam.ServiceLinkedRoleArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import com.pulumi.aws.opensearch.inputs.DomainClusterConfigArgs; import com.pulumi.aws.opensearch.inputs.DomainVpcOptionsArgs; import com.pulumi.resources.CustomResourceOptions; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { final var config = ctx.config(); final var vpc = config.require("vpc"); final var domain = config.get("domain").orElse("tf-test"); final var example = Ec2Functions.getVpc(GetVpcArgs.builder() .tags(Map.of("Name", vpc)) .build()); final var exampleGetSubnets = Ec2Functions.getSubnets(GetSubnetsArgs.builder() .filters(GetSubnetsFilterArgs.builder() .name("vpc-id") .values(example.id()) .build()) .tags(Map.of("Tier", "private")) .build()); final var current = AwsFunctions.getRegion(GetRegionArgs.builder() .build()); final var currentGetCallerIdentity = AwsFunctions.getCallerIdentity(GetCallerIdentityArgs.builder() .build()); var exampleSecurityGroup = new SecurityGroup("exampleSecurityGroup", SecurityGroupArgs.builder() .ingress(SecurityGroupIngressArgs.builder() .fromPort(443) .toPort(443) .protocol("tcp") .cidrBlocks(example.cidrBlock()) .build()) .name(String.format("%s-opensearch-%s", vpc,domain)) .description("Managed by Pulumi") .vpcId(example.id()) .build()); var exampleServiceLinkedRole = new ServiceLinkedRole("exampleServiceLinkedRole", ServiceLinkedRoleArgs.builder() .awsServiceName("opensearchservice.amazonaws.com") .build()); final var exampleGetPolicyDocument = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("*") .identifiers("*") .build()) .effect("Allow") .actions("es:*") .resources(String.format("arn:aws:es:%s:%s:domain/%s/*", current.region(),currentGetCallerIdentity.accountId(),domain)) .build()) .build()); var exampleDomain = new Domain("exampleDomain", DomainArgs.builder() .clusterConfig(DomainClusterConfigArgs.builder() .instanceType("m4.large.search") .zoneAwarenessEnabled(true) .build()) .vpcOptions(DomainVpcOptionsArgs.builder() .subnetIds( exampleGetSubnets.ids()[0], exampleGetSubnets.ids()[1]) .securityGroupIds(exampleSecurityGroup.id()) .build()) .domainName(domain) .engineVersion("OpenSearch_1.0") .advancedOptions(Map.of("rest.action.multi.allow_explicit_index", "true")) .accessPolicies(exampleGetPolicyDocument.json()) .tags(Map.of("Domain", "TestDomain")) .build(), CustomResourceOptions.builder() .dependsOn(exampleServiceLinkedRole) .build()); } }
### Second apply Notice that the only change is `advanced_security_options.0.enabled` is now set to `true`.package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import com.pulumi.aws.opensearch.inputs.DomainClusterConfigArgs; import com.pulumi.aws.opensearch.inputs.DomainAdvancedSecurityOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainAdvancedSecurityOptionsMasterUserOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainEncryptAtRestArgs; import com.pulumi.aws.opensearch.inputs.DomainDomainEndpointOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainNodeToNodeEncryptionArgs; import com.pulumi.aws.opensearch.inputs.DomainEbsOptionsArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Domain("example", DomainArgs.builder() .clusterConfig(DomainClusterConfigArgs.builder() .instanceType("r5.large.search") .build()) .advancedSecurityOptions(DomainAdvancedSecurityOptionsArgs.builder() .masterUserOptions(DomainAdvancedSecurityOptionsMasterUserOptionsArgs.builder() .masterUserName("example") .masterUserPassword("Barbarbarbar1!") .build()) .enabled(false) .anonymousAuthEnabled(true) .internalUserDatabaseEnabled(true) .build()) .encryptAtRest(DomainEncryptAtRestArgs.builder() .enabled(true) .build()) .domainEndpointOptions(DomainDomainEndpointOptionsArgs.builder() .enforceHttps(true) .tlsSecurityPolicy("Policy-Min-TLS-1-2-2019-07") .build()) .nodeToNodeEncryption(DomainNodeToNodeEncryptionArgs.builder() .enabled(true) .build()) .ebsOptions(DomainEbsOptionsArgs.builder() .ebsEnabled(true) .volumeSize(10) .build()) .domainName("ggkitty") .engineVersion("Elasticsearch_7.1") .build()); } }
## Import Using `pulumi import`, import OpenSearch domains using the `domainName`. For example: ```sh $ pulumi import aws:opensearch/domain:Domain example domain_name ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.opensearch.Domain; import com.pulumi.aws.opensearch.DomainArgs; import com.pulumi.aws.opensearch.inputs.DomainClusterConfigArgs; import com.pulumi.aws.opensearch.inputs.DomainAdvancedSecurityOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainAdvancedSecurityOptionsMasterUserOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainEncryptAtRestArgs; import com.pulumi.aws.opensearch.inputs.DomainDomainEndpointOptionsArgs; import com.pulumi.aws.opensearch.inputs.DomainNodeToNodeEncryptionArgs; import com.pulumi.aws.opensearch.inputs.DomainEbsOptionsArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Domain("example", DomainArgs.builder() .clusterConfig(DomainClusterConfigArgs.builder() .instanceType("r5.large.search") .build()) .advancedSecurityOptions(DomainAdvancedSecurityOptionsArgs.builder() .masterUserOptions(DomainAdvancedSecurityOptionsMasterUserOptionsArgs.builder() .masterUserName("example") .masterUserPassword("Barbarbarbar1!") .build()) .enabled(true) .anonymousAuthEnabled(true) .internalUserDatabaseEnabled(true) .build()) .encryptAtRest(DomainEncryptAtRestArgs.builder() .enabled(true) .build()) .domainEndpointOptions(DomainDomainEndpointOptionsArgs.builder() .enforceHttps(true) .tlsSecurityPolicy("Policy-Min-TLS-1-2-2019-07") .build()) .nodeToNodeEncryption(DomainNodeToNodeEncryptionArgs.builder() .enabled(true) .build()) .ebsOptions(DomainEbsOptionsArgs.builder() .ebsEnabled(true) .volumeSize(10) .build()) .domainName("ggkitty") .engineVersion("Elasticsearch_7.1") .build()); } }
-
-
Constructor Summary
Constructors Constructor Description Domain(java.lang.String name)Domain(java.lang.String name, DomainArgs args)Domain(java.lang.String name, DomainArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>accessPolicies()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>advancedOptions()com.pulumi.core.Output<DomainAdvancedSecurityOptions>advancedSecurityOptions()com.pulumi.core.Output<DomainAimlOptions>aimlOptions()com.pulumi.core.Output<java.lang.String>arn()com.pulumi.core.Output<DomainAutoTuneOptions>autoTuneOptions()com.pulumi.core.Output<DomainClusterConfig>clusterConfig()com.pulumi.core.Output<java.util.Optional<DomainCognitoOptions>>cognitoOptions()com.pulumi.core.Output<java.lang.String>dashboardEndpoint()com.pulumi.core.Output<java.lang.String>dashboardEndpointV2()com.pulumi.core.Output<DomainDeploymentStrategyOptions>deploymentStrategyOptions()com.pulumi.core.Output<DomainDomainEndpointOptions>domainEndpointOptions()com.pulumi.core.Output<java.lang.String>domainEndpointV2HostedZoneId()com.pulumi.core.Output<java.lang.String>domainId()com.pulumi.core.Output<java.lang.String>domainName()com.pulumi.core.Output<DomainEbsOptions>ebsOptions()com.pulumi.core.Output<DomainEncryptAtRest>encryptAtRest()com.pulumi.core.Output<java.lang.String>endpoint()com.pulumi.core.Output<java.lang.String>endpointV2()com.pulumi.core.Output<java.lang.String>engineVersion()static Domainget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, DomainState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.Optional<DomainIdentityCenterOptions>>identityCenterOptions()com.pulumi.core.Output<java.lang.String>ipAddressType()com.pulumi.core.Output<java.util.Optional<java.util.List<DomainLogPublishingOption>>>logPublishingOptions()com.pulumi.core.Output<DomainNodeToNodeEncryption>nodeToNodeEncryption()com.pulumi.core.Output<DomainOffPeakWindowOptions>offPeakWindowOptions()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.util.Optional<DomainSnapshotOptions>>snapshotOptions()com.pulumi.core.Output<DomainSoftwareUpdateOptions>softwareUpdateOptions()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>tags()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>tagsAll()com.pulumi.core.Output<java.util.Optional<DomainVpcOptions>>vpcOptions()
-
-
-
Constructor Detail
-
Domain
public Domain(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
Domain
public Domain(java.lang.String name, @Nullable DomainArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
Domain
public Domain(java.lang.String name, @Nullable DomainArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
accessPolicies
public com.pulumi.core.Output<java.lang.String> accessPolicies()
- Returns:
- IAM policy document specifying the access policies for the domain.
-
advancedOptions
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> advancedOptions()
- Returns:
- 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 the provider to want to recreate your OpenSearch domain on every apply.
-
advancedSecurityOptions
public com.pulumi.core.Output<DomainAdvancedSecurityOptions> advancedSecurityOptions()
- Returns:
- Configuration block for [fine-grained access control](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html). Detailed below.
-
aimlOptions
public com.pulumi.core.Output<DomainAimlOptions> aimlOptions()
- Returns:
- Configuration block for parameters required to enable all machine learning features. Detailed below.
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- ARN of the domain.
-
autoTuneOptions
public com.pulumi.core.Output<DomainAutoTuneOptions> autoTuneOptions()
- Returns:
- Configuration block for the Auto-Tune options of the domain. Detailed below.
-
clusterConfig
public com.pulumi.core.Output<DomainClusterConfig> clusterConfig()
- Returns:
- Configuration block for the cluster of the domain. Detailed below.
-
cognitoOptions
public com.pulumi.core.Output<java.util.Optional<DomainCognitoOptions>> cognitoOptions()
- Returns:
- Configuration block for authenticating dashboard with Cognito. Detailed below.
-
dashboardEndpoint
public com.pulumi.core.Output<java.lang.String> dashboardEndpoint()
- Returns:
- Domain-specific endpoint for Dashboard without HTTPS scheme.
-
dashboardEndpointV2
public com.pulumi.core.Output<java.lang.String> dashboardEndpointV2()
- Returns:
- V2 domain endpoint for Dashboard that works with both IPv4 and IPv6 addresses, without HTTPS scheme.
-
deploymentStrategyOptions
public com.pulumi.core.Output<DomainDeploymentStrategyOptions> deploymentStrategyOptions()
- Returns:
- Configuration block for the deployment strategy options of the domain. Detailed below.
-
domainEndpointOptions
public com.pulumi.core.Output<DomainDomainEndpointOptions> domainEndpointOptions()
- Returns:
- Configuration block for domain endpoint HTTP(S) related options. Detailed below.
-
domainEndpointV2HostedZoneId
public com.pulumi.core.Output<java.lang.String> domainEndpointV2HostedZoneId()
- Returns:
- Dual stack hosted zone ID for the domain.
-
domainId
public com.pulumi.core.Output<java.lang.String> domainId()
- Returns:
- Unique identifier for the domain.
-
domainName
public com.pulumi.core.Output<java.lang.String> domainName()
- Returns:
- Name of the domain. The following arguments are optional:
-
ebsOptions
public com.pulumi.core.Output<DomainEbsOptions> ebsOptions()
- Returns:
- Configuration block for EBS related options, may be required based on chosen [instance size](https://aws.amazon.com/opensearch-service/pricing/). Detailed below.
-
encryptAtRest
public com.pulumi.core.Output<DomainEncryptAtRest> encryptAtRest()
- Returns:
- Configuration block for encrypt at rest options. Only available for [certain instance types](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html). Detailed below.
-
endpoint
public com.pulumi.core.Output<java.lang.String> endpoint()
- Returns:
- Domain-specific endpoint used to submit index, search, and data upload requests.
-
endpointV2
public com.pulumi.core.Output<java.lang.String> endpointV2()
- Returns:
- V2 domain endpoint that works with both IPv4 and IPv6 addresses, used to submit index, search, and data upload requests.
-
engineVersion
public com.pulumi.core.Output<java.lang.String> engineVersion()
- Returns:
- Either `Elasticsearch_X.Y` or `OpenSearch_X.Y` to specify the engine version for the Amazon OpenSearch Service domain. For example, `OpenSearch_1.0` or `Elasticsearch_7.9`. See [Creating and managing Amazon OpenSearch Service domains](http://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomains). Defaults to the lastest version of OpenSearch.
-
identityCenterOptions
public com.pulumi.core.Output<java.util.Optional<DomainIdentityCenterOptions>> identityCenterOptions()
- Returns:
- Configuration block for enabling and managing IAM Identity Center integration within a domain. Detailed below.
-
ipAddressType
public com.pulumi.core.Output<java.lang.String> ipAddressType()
- Returns:
- The IP address type for the endpoint. Valid values are `ipv4` and `dualstack`.
-
logPublishingOptions
public com.pulumi.core.Output<java.util.Optional<java.util.List<DomainLogPublishingOption>>> logPublishingOptions()
- Returns:
- Configuration block for publishing slow and application logs to CloudWatch Logs. This block can be declared multiple times, for each log_type, within the same resource. Detailed below.
-
nodeToNodeEncryption
public com.pulumi.core.Output<DomainNodeToNodeEncryption> nodeToNodeEncryption()
- Returns:
- Configuration block for node-to-node encryption options. Detailed below.
-
offPeakWindowOptions
public com.pulumi.core.Output<DomainOffPeakWindowOptions> offPeakWindowOptions()
- Returns:
- Configuration to add Off Peak update options. ([documentation](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html)). Detailed below.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
snapshotOptions
public com.pulumi.core.Output<java.util.Optional<DomainSnapshotOptions>> snapshotOptions()
- Returns:
- Configuration block for snapshot related options. Detailed below. DEPRECATED. For domains running OpenSearch 5.3 and later, Amazon OpenSearch takes hourly automated snapshots, making this setting irrelevant. For domains running earlier versions, OpenSearch takes daily automated snapshots.
-
softwareUpdateOptions
public com.pulumi.core.Output<DomainSoftwareUpdateOptions> softwareUpdateOptions()
- Returns:
- Software update options for the domain. Detailed below.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
-
vpcOptions
public com.pulumi.core.Output<java.util.Optional<DomainVpcOptions>> vpcOptions()
- Returns:
- Configuration block for VPC related options. Adding or removing this configuration forces a new resource ([documentation](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html)). Detailed below.
-
get
public static Domain get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable DomainState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-