DomainArgs

data class DomainArgs(val accessPolicies: Output<Any>? = null, val advancedOptions: Output<Map<String, String>>? = null, val advancedSecurityOptions: Output<DomainAdvancedSecurityOptionsInputArgs>? = null, val clusterConfig: Output<DomainClusterConfigArgs>? = null, val cognitoOptions: Output<DomainCognitoOptionsArgs>? = null, val domainEndpointOptions: Output<DomainEndpointOptionsArgs>? = null, val domainName: Output<String>? = null, val ebsOptions: Output<DomainEbsOptionsArgs>? = null, val encryptionAtRestOptions: Output<DomainEncryptionAtRestOptionsArgs>? = null, val engineVersion: Output<String>? = null, val ipAddressType: Output<String>? = null, val logPublishingOptions: Output<Map<String, DomainLogPublishingOptionArgs>>? = null, val nodeToNodeEncryptionOptions: Output<DomainNodeToNodeEncryptionOptionsArgs>? = null, val offPeakWindowOptions: Output<DomainOffPeakWindowOptionsArgs>? = null, val skipShardMigrationWait: Output<Boolean>? = null, val snapshotOptions: Output<DomainSnapshotOptionsArgs>? = null, val softwareUpdateOptions: Output<DomainSoftwareUpdateOptionsArgs>? = null, val tags: Output<List<TagArgs>>? = null, val vpcOptions: Output<DomainVpcOptionsArgs>? = null) : ConvertibleToJava<DomainArgs>

An example resource schema demonstrating some basic constructs and validation rules.

Constructors

Link copied to clipboard
constructor(accessPolicies: Output<Any>? = null, advancedOptions: Output<Map<String, String>>? = null, advancedSecurityOptions: Output<DomainAdvancedSecurityOptionsInputArgs>? = null, clusterConfig: Output<DomainClusterConfigArgs>? = null, cognitoOptions: Output<DomainCognitoOptionsArgs>? = null, domainEndpointOptions: Output<DomainEndpointOptionsArgs>? = null, domainName: Output<String>? = null, ebsOptions: Output<DomainEbsOptionsArgs>? = null, encryptionAtRestOptions: Output<DomainEncryptionAtRestOptionsArgs>? = null, engineVersion: Output<String>? = null, ipAddressType: Output<String>? = null, logPublishingOptions: Output<Map<String, DomainLogPublishingOptionArgs>>? = null, nodeToNodeEncryptionOptions: Output<DomainNodeToNodeEncryptionOptionsArgs>? = null, offPeakWindowOptions: Output<DomainOffPeakWindowOptionsArgs>? = null, skipShardMigrationWait: Output<Boolean>? = null, snapshotOptions: Output<DomainSnapshotOptionsArgs>? = null, softwareUpdateOptions: Output<DomainSoftwareUpdateOptionsArgs>? = null, tags: Output<List<TagArgs>>? = null, vpcOptions: Output<DomainVpcOptionsArgs>? = null)

Properties

Link copied to clipboard
val accessPolicies: Output<Any>? = null

An AWS Identity and Access Management ( IAM ) policy document that specifies who can access the OpenSearch Service domain and their permissions. For more information, see Configuring access policies in the Amazon OpenSearch Service Developer Guide . Search the CloudFormation User Guide for AWS::OpenSearchService::Domain for more information about the expected schema for this property.

Link copied to clipboard
val advancedOptions: Output<Map<String, String>>? = null

Additional options to specify for the OpenSearch Service domain. For more information, see AdvancedOptions in the OpenSearch Service API reference.

Link copied to clipboard

Specifies options for fine-grained access control and SAML authentication. If you specify advanced security options, you must also enable node-to-node encryption ( NodeToNodeEncryptionOptions ) and encryption at rest ( EncryptionAtRestOptions ). You must also enable EnforceHTTPS within DomainEndpointOptions , which requires HTTPS for all traffic to the domain.

Link copied to clipboard

Container for the cluster configuration of a domain.

Link copied to clipboard

Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.

Link copied to clipboard

Specifies additional options for the domain endpoint, such as whether to require HTTPS for all traffic or whether to use a custom endpoint rather than the default endpoint.

Link copied to clipboard
val domainName: Output<String>? = null

A name for the OpenSearch Service domain. The name must have a minimum length of 3 and a maximum length of 28. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the domain name. For more information, see Name Type . Required when creating a new domain.

Link copied to clipboard
val ebsOptions: Output<DomainEbsOptionsArgs>? = null

The configurations of Amazon Elastic Block Store (Amazon EBS) volumes that are attached to data nodes in the OpenSearch Service domain. For more information, see EBS volume size limits in the Amazon OpenSearch Service Developer Guide .

Link copied to clipboard

Whether the domain should encrypt data at rest, and if so, the AWS KMS key to use. See Encryption of data at rest for Amazon OpenSearch Service . If no encryption at rest options were initially specified in the template, updating this property by adding it causes no interruption. However, if you change this property after it's already been set within a template, the domain is deleted and recreated in order to modify the property.

Link copied to clipboard
val engineVersion: Output<String>? = null

The version of OpenSearch to use. The value must be in the format OpenSearch_X.Y or Elasticsearch_X.Y . If not specified, the latest version of OpenSearch is used. For information about the versions that OpenSearch Service supports, see Supported versions of OpenSearch and Elasticsearch in the Amazon OpenSearch Service Developer Guide . If you set the EnableVersionUpgrade update policy to true , you can update EngineVersion without interruption. When EnableVersionUpgrade is set to false , or is not specified, updating EngineVersion results in replacement .

Link copied to clipboard
val ipAddressType: Output<String>? = null

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

Link copied to clipboard

An object with one or more of the following keys: SEARCH_SLOW_LOGS , ES_APPLICATION_LOGS , INDEX_SLOW_LOGS , AUDIT_LOGS , depending on the types of logs you want to publish. Each key needs a valid LogPublishingOption value. For the full syntax, see the examples .

Link copied to clipboard

Specifies whether node-to-node encryption is enabled. See Node-to-node encryption for Amazon OpenSearch Service .

Link copied to clipboard

Options for a domain's off-peak window, during which OpenSearch Service can perform mandatory configuration changes on the domain.

Link copied to clipboard
val skipShardMigrationWait: Output<Boolean>? = null
Link copied to clipboard

DEPRECATED . The automated snapshot configuration for the OpenSearch Service domain indexes.

Link copied to clipboard

Service software update options for the domain.

Link copied to clipboard
val tags: Output<List<TagArgs>>? = null

An arbitrary set of tags (key-value pairs) for this Domain.

Link copied to clipboard
val vpcOptions: Output<DomainVpcOptionsArgs>? = null

The virtual private cloud (VPC) configuration for the OpenSearch Service domain. For more information, see Launching your Amazon OpenSearch Service domains within a VPC in the Amazon OpenSearch Service Developer Guide . If you remove this entity altogether, along with its associated properties, it causes a replacement. You might encounter this scenario if you're updating your security configuration from a VPC to a public endpoint.

Functions

Link copied to clipboard
open override fun toJava(): DomainArgs