CfnDomain¶
-
class
aws_cdk.aws_opensearchservice.
CfnDomain
(scope, id, *, access_policies=None, advanced_options=None, advanced_security_options=None, cluster_config=None, cognito_options=None, domain_endpoint_options=None, domain_name=None, ebs_options=None, encryption_at_rest_options=None, engine_version=None, log_publishing_options=None, node_to_node_encryption_options=None, snapshot_options=None, tags=None, vpc_options=None)¶ Bases:
aws_cdk.core.CfnResource
A CloudFormation
AWS::OpenSearchService::Domain
.The AWS::OpenSearchService::Domain resource creates an Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) domain. .. epigraph:
The ``AWS::OpenSearchService::Domain`` resource replaces the legacy `AWS::Elasticsearch::Domain <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html>`_ resource. While the Elasticsearch resource and options are still supported, we recommend modifying your existing Cloudformation templates to use the new OpenSearch Service resource, which supports both OpenSearch and legacy Elasticsearch engines. For instructions to upgrade domains defined within CloudFormation from Elasticsearch to OpenSearch, see `Remarks <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-domain.html#aws-resource-opensearchservice-domain--remarks>`_ .
- CloudformationResource
AWS::OpenSearchService::Domain
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice # access_policies: Any cfn_domain = opensearchservice.CfnDomain(self, "MyCfnDomain", access_policies=access_policies, advanced_options={ "advanced_options_key": "advancedOptions" }, advanced_security_options=opensearchservice.CfnDomain.AdvancedSecurityOptionsInputProperty( enabled=False, internal_user_database_enabled=False, master_user_options=opensearchservice.CfnDomain.MasterUserOptionsProperty( master_user_arn="masterUserArn", master_user_name="masterUserName", master_user_password="masterUserPassword" ) ), cluster_config=opensearchservice.CfnDomain.ClusterConfigProperty( dedicated_master_count=123, dedicated_master_enabled=False, dedicated_master_type="dedicatedMasterType", instance_count=123, instance_type="instanceType", warm_count=123, warm_enabled=False, warm_type="warmType", zone_awareness_config=opensearchservice.CfnDomain.ZoneAwarenessConfigProperty( availability_zone_count=123 ), zone_awareness_enabled=False ), cognito_options=opensearchservice.CfnDomain.CognitoOptionsProperty( enabled=False, identity_pool_id="identityPoolId", role_arn="roleArn", user_pool_id="userPoolId" ), domain_endpoint_options=opensearchservice.CfnDomain.DomainEndpointOptionsProperty( custom_endpoint="customEndpoint", custom_endpoint_certificate_arn="customEndpointCertificateArn", custom_endpoint_enabled=False, enforce_https=False, tls_security_policy="tlsSecurityPolicy" ), domain_name="domainName", ebs_options=opensearchservice.CfnDomain.EBSOptionsProperty( ebs_enabled=False, iops=123, volume_size=123, volume_type="volumeType" ), encryption_at_rest_options=opensearchservice.CfnDomain.EncryptionAtRestOptionsProperty( enabled=False, kms_key_id="kmsKeyId" ), engine_version="engineVersion", log_publishing_options={ "log_publishing_options_key": opensearchservice.CfnDomain.LogPublishingOptionProperty( cloud_watch_logs_log_group_arn="cloudWatchLogsLogGroupArn", enabled=False ) }, node_to_node_encryption_options=opensearchservice.CfnDomain.NodeToNodeEncryptionOptionsProperty( enabled=False ), snapshot_options=opensearchservice.CfnDomain.SnapshotOptionsProperty( automated_snapshot_start_hour=123 ), tags=[CfnTag( key="key", value="value" )], vpc_options=opensearchservice.CfnDomain.VPCOptionsProperty( security_group_ids=["securityGroupIds"], subnet_ids=["subnetIds"] ) )
Create a new
AWS::OpenSearchService::Domain
.- Parameters
scope (
Construct
) –scope in which this resource is defined.
id (
str
) –scoped id of the resource.
access_policies (
Optional
[Any
]) – 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 .advanced_options (
Union
[IResolvable
,Mapping
[str
,str
],None
]) – Additional options to specify for the OpenSearch Service domain. For more information, see AdvancedOptions in the OpenSearch Service configuration API reference.advanced_security_options (
Union
[IResolvable
,AdvancedSecurityOptionsInputProperty
,None
]) – Specifies options for fine-grained access control.cluster_config (
Union
[IResolvable
,ClusterConfigProperty
,None
]) –ClusterConfig
is a property of the AWS::OpenSearchService::Domain resource that configures an Amazon OpenSearch Service cluster.cognito_options (
Union
[IResolvable
,CognitoOptionsProperty
,None
]) – Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.domain_endpoint_options (
Union
[IResolvable
,DomainEndpointOptionsProperty
,None
]) – 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.domain_name (
Optional
[str
]) – A name for the OpenSearch Service domain. For valid values, see the DomainName data type in the Amazon OpenSearch Service Developer Guide . 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. .. epigraph:: If you specify a name, you can’t perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.ebs_options (
Union
[IResolvable
,EBSOptionsProperty
,None
]) – 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 .encryption_at_rest_options (
Union
[IResolvable
,EncryptionAtRestOptionsProperty
,None
]) – 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 .engine_version (
Optional
[str
]) – The version of OpenSearch to use. The value must be in the formatOpenSearch_X.Y
orElasticsearch_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 totrue
, you can updateEngineVersion
without interruption. WhenEnableVersionUpgrade
is set tofalse
, or is not specified, updatingEngineVersion
results in replacement .log_publishing_options (
Union
[IResolvable
,Mapping
[str
,Union
[IResolvable
,LogPublishingOptionProperty
]],None
]) – 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 validLogPublishingOption
value. For the full syntax, see the examples .node_to_node_encryption_options (
Union
[IResolvable
,NodeToNodeEncryptionOptionsProperty
,None
]) – Specifies whether node-to-node encryption is enabled. See Node-to-node encryption for Amazon OpenSearch Service .snapshot_options (
Union
[IResolvable
,SnapshotOptionsProperty
,None
]) – DEPRECATED . The automated snapshot configuration for the OpenSearch Service domain indices.tags (
Optional
[Sequence
[CfnTag
]]) – An arbitrary set of tags (key–value pairs) to associate with the OpenSearch Service domain.vpc_options (
Union
[IResolvable
,VPCOptionsProperty
,None
]) – 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 .
Methods
-
add_deletion_override
(path)¶ Syntactic sugar for
addOverride(path, undefined)
.- Parameters
path (
str
) – The path of the value to delete.- Return type
None
-
add_depends_on
(target)¶ Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.
- Parameters
target (
CfnResource
) –- Return type
None
-
add_metadata
(key, value)¶ Add a value to the CloudFormation Resource Metadata.
- Parameters
key (
str
) –value (
Any
) –
- See
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.
- Return type
None
-
add_override
(path, value)¶ Adds an override to the synthesized CloudFormation resource.
To add a property override, either use
addPropertyOverride
or prefixpath
with “Properties.” (i.e.Properties.TopicName
).If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.
To include a literal
.
in the property name, prefix with a\
. In most programming languages you will need to write this as"\\."
because the\
itself will need to be escaped.For example:
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"]) cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")
would add the overrides Example:
"Properties": { "GlobalSecondaryIndexes": [ { "Projection": { "NonKeyAttributes": [ "myattribute" ] ... } ... }, { "ProjectionType": "INCLUDE" ... }, ] ... }
The
value
argument toaddOverride
will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.- Parameters
path (
str
) –The path of the property, you can use dot notation to override values in complex types. Any intermdediate keys will be created as needed.
value (
Any
) –The value. Could be primitive or complex.
- Return type
None
-
add_property_deletion_override
(property_path)¶ Adds an override that deletes the value of a property from the resource definition.
- Parameters
property_path (
str
) – The path to the property.- Return type
None
-
add_property_override
(property_path, value)¶ Adds an override to a resource property.
Syntactic sugar for
addOverride("Properties.<...>", value)
.- Parameters
property_path (
str
) – The path of the property.value (
Any
) – The value.
- Return type
None
-
apply_removal_policy
(policy=None, *, apply_to_update_replace_policy=None, default=None)¶ Sets the deletion policy of the resource based on the removal policy specified.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.
The resource can be deleted (
RemovalPolicy.DESTROY
), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN
).- Parameters
policy (
Optional
[RemovalPolicy
]) –apply_to_update_replace_policy (
Optional
[bool
]) – Apply the same deletion policy to the resource’s “UpdateReplacePolicy”. Default: truedefault (
Optional
[RemovalPolicy
]) – The default policy to apply in case the removal policy is not defined. Default: - Default value is resource specific. To determine the default value for a resoure, please consult that specific resource’s documentation.
- Return type
None
-
get_att
(attribute_name)¶ Returns a token for an runtime attribute of this resource.
Ideally, use generated attribute accessors (e.g.
resource.arn
), but this can be used for future compatibility in case there is no generated attribute.- Parameters
attribute_name (
str
) – The name of the attribute.- Return type
-
get_metadata
(key)¶ Retrieve a value value from the CloudFormation Resource Metadata.
- Parameters
key (
str
) –- See
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.
- Return type
Any
-
inspect
(inspector)¶ Examines the CloudFormation resource and discloses attributes.
- Parameters
inspector (
TreeInspector
) –tree inspector to collect and process attributes.
- Return type
None
-
override_logical_id
(new_logical_id)¶ Overrides the auto-generated logical ID with a specific ID.
- Parameters
new_logical_id (
str
) – The new logical ID to use for this stack element.- Return type
None
-
to_string
()¶ Returns a string representation of this construct.
- Return type
str
- Returns
a string representation of this resource
Attributes
-
CFN_RESOURCE_TYPE_NAME
= 'AWS::OpenSearchService::Domain'¶
-
access_policies
¶ 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 .
-
advanced_options
¶ Additional options to specify for the OpenSearch Service domain.
For more information, see AdvancedOptions in the OpenSearch Service configuration API reference.
- Link
- Return type
Union
[IResolvable
,Mapping
[str
,str
],None
]
-
advanced_security_options
¶ Specifies options for fine-grained access control.
-
attr_arn
¶ The Amazon Resource Name (ARN) of the domain, such as
arn:aws:es:us-west-2:123456789012:domain/mystack-1ab2cdefghij
.- CloudformationAttribute
Arn
- Return type
str
-
attr_domain_endpoint
¶ The domain-specific endpoint used for requests to the OpenSearch APIs, such as
search-mystack-1ab2cdefghij-ab1c2deckoyb3hofw7wpqa3cm.us-west-1.es.amazonaws.com
.- CloudformationAttribute
DomainEndpoint
- Return type
str
-
attr_id
¶ The resource ID.
For example,
123456789012/my-domain
.- CloudformationAttribute
Id
- Return type
str
-
cfn_options
¶ Options for this resource, such as condition, update policy etc.
- Return type
-
cfn_resource_type
¶ AWS resource type.
- Return type
str
-
cluster_config
¶ ClusterConfig
is a property of the AWS::OpenSearchService::Domain resource that configures an Amazon OpenSearch Service cluster.
-
cognito_options
¶ Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.
-
creation_stack
¶ return:
the stack trace of the point where this Resource was created from, sourced from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most node +internal+ entries filtered.
- Return type
List
[str
]
-
domain_endpoint_options
¶ 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.
-
domain_name
¶ A name for the OpenSearch Service domain.
For valid values, see the DomainName data type in the Amazon OpenSearch Service Developer Guide . 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. .. epigraph:
If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
-
ebs_options
¶ 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 .
-
encryption_at_rest_options
¶ 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 .
-
engine_version
¶ The version of OpenSearch to use.
The value must be in the format
OpenSearch_X.Y
orElasticsearch_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 updateEngineVersion
without interruption. WhenEnableVersionUpgrade
is set tofalse
, or is not specified, updatingEngineVersion
results in replacement .
-
log_publishing_options
¶ 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
- Type
An object with one or more of the following keys
- Return type
Union
[IResolvable
,Mapping
[str
,Union
[IResolvable
,LogPublishingOptionProperty
]],None
]
-
logical_id
¶ The logical ID for this CloudFormation stack element.
The logical ID of the element is calculated from the path of the resource node in the construct tree.
To override this value, use
overrideLogicalId(newLogicalId)
.- Return type
str
- Returns
the logical ID as a stringified token. This value will only get resolved during synthesis.
-
node
¶ The construct tree node associated with this construct.
- Return type
-
node_to_node_encryption_options
¶ Specifies whether node-to-node encryption is enabled.
-
ref
¶ Return a string that will be resolved to a CloudFormation
{ Ref }
for this element.If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through
Lazy.any({ produce: resource.ref })
.- Return type
str
-
snapshot_options
¶ DEPRECATED .
The automated snapshot configuration for the OpenSearch Service domain indices.
-
stack
¶ The stack in which this element is defined.
CfnElements must be defined within a stack scope (directly or indirectly).
- Return type
An arbitrary set of tags (key–value pairs) to associate with the OpenSearch Service domain.
-
vpc_options
¶ 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 .
Static Methods
-
classmethod
is_cfn_element
(x)¶ Returns
true
if a construct is a stack element (i.e. part of the synthesized cloudformation template).Uses duck-typing instead of
instanceof
to allow stack elements from different versions of this library to be included in the same stack.- Parameters
x (
Any
) –- Return type
bool
- Returns
The construct as a stack element or undefined if it is not a stack element.
-
classmethod
is_cfn_resource
(construct)¶ Check whether the given construct is a CfnResource.
- Parameters
construct (
IConstruct
) –- Return type
bool
-
classmethod
is_construct
(x)¶ Return whether the given object is a Construct.
- Parameters
x (
Any
) –- Return type
bool
AdvancedSecurityOptionsInputProperty¶
-
class
CfnDomain.
AdvancedSecurityOptionsInputProperty
(*, enabled=None, internal_user_database_enabled=None, master_user_options=None)¶ Bases:
object
Specifies options for fine-grained access control.
- Parameters
enabled (
Union
[bool
,IResolvable
,None
]) – True to enable fine-grained access control. You must also enable encryption of data at rest and node-to-node encryption. See Fine-grained access control in Amazon OpenSearch Service .internal_user_database_enabled (
Union
[bool
,IResolvable
,None
]) – True to enable the internal user database.master_user_options (
Union
[IResolvable
,MasterUserOptionsProperty
,None
]) – Specifies information about the master user.
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice advanced_security_options_input_property = opensearchservice.CfnDomain.AdvancedSecurityOptionsInputProperty( enabled=False, internal_user_database_enabled=False, master_user_options=opensearchservice.CfnDomain.MasterUserOptionsProperty( master_user_arn="masterUserArn", master_user_name="masterUserName", master_user_password="masterUserPassword" ) )
Attributes
-
enabled
¶ True to enable fine-grained access control.
You must also enable encryption of data at rest and node-to-node encryption. See Fine-grained access control in Amazon OpenSearch Service .
-
internal_user_database_enabled
¶ True to enable the internal user database.
-
master_user_options
¶ Specifies information about the master user.
ClusterConfigProperty¶
-
class
CfnDomain.
ClusterConfigProperty
(*, dedicated_master_count=None, dedicated_master_enabled=None, dedicated_master_type=None, instance_count=None, instance_type=None, warm_count=None, warm_enabled=None, warm_type=None, zone_awareness_config=None, zone_awareness_enabled=None)¶ Bases:
object
The cluster configuration for the OpenSearch Service domain.
You can specify options such as the instance type and the number of instances. For more information, see Creating and managing Amazon OpenSearch Service domains in the Amazon OpenSearch Service Developer Guide .
- Parameters
dedicated_master_count (
Union
[int
,float
,None
]) – The number of instances to use for the master node. If you specify this property, you must specifytrue
for theDedicatedMasterEnabled
property.dedicated_master_enabled (
Union
[bool
,IResolvable
,None
]) – Indicates whether to use a dedicated master node for the OpenSearch Service domain. A dedicated master node is a cluster node that performs cluster management tasks, but doesn’t hold data or respond to data upload requests. Dedicated master nodes offload cluster management tasks to increase the stability of your search clusters. See Dedicated master nodes in Amazon OpenSearch Service .dedicated_master_type (
Optional
[str
]) – The hardware configuration of the computer that hosts the dedicated master node, such asm3.medium.search
. If you specify this property, you must specifytrue
for theDedicatedMasterEnabled
property. For valid values, see Supported instance types in Amazon OpenSearch Service .instance_count (
Union
[int
,float
,None
]) – The number of data nodes (instances) to use in the OpenSearch Service domain.instance_type (
Optional
[str
]) –The instance type for your data nodes, such as
m3.medium.search
. For valid values, see Supported instance types in Amazon OpenSearch Service .warm_count (
Union
[int
,float
,None
]) – The number of warm nodes in the cluster.warm_enabled (
Union
[bool
,IResolvable
,None
]) – Whether to enable UltraWarm storage for the cluster. See UltraWarm storage for Amazon OpenSearch Service .warm_type (
Optional
[str
]) – The instance type for the cluster’s warm nodes.zone_awareness_config (
Union
[IResolvable
,ZoneAwarenessConfigProperty
,None
]) – Specifies zone awareness configuration options. Only use ifZoneAwarenessEnabled
istrue
.zone_awareness_enabled (
Union
[bool
,IResolvable
,None
]) – Indicates whether to enable zone awareness for the OpenSearch Service domain. When you enable zone awareness, OpenSearch Service allocates the nodes and replica index shards that belong to a cluster across two Availability Zones (AZs) in the same region to prevent data loss and minimize downtime in the event of node or data center failure. Don’t enable zone awareness if your cluster has no replica index shards or is a single-node cluster. For more information, see Configuring a multi-AZ domain in Amazon OpenSearch Service .
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice cluster_config_property = opensearchservice.CfnDomain.ClusterConfigProperty( dedicated_master_count=123, dedicated_master_enabled=False, dedicated_master_type="dedicatedMasterType", instance_count=123, instance_type="instanceType", warm_count=123, warm_enabled=False, warm_type="warmType", zone_awareness_config=opensearchservice.CfnDomain.ZoneAwarenessConfigProperty( availability_zone_count=123 ), zone_awareness_enabled=False )
Attributes
-
dedicated_master_count
¶ The number of instances to use for the master node.
If you specify this property, you must specify
true
for theDedicatedMasterEnabled
property.
-
dedicated_master_enabled
¶ Indicates whether to use a dedicated master node for the OpenSearch Service domain.
A dedicated master node is a cluster node that performs cluster management tasks, but doesn’t hold data or respond to data upload requests. Dedicated master nodes offload cluster management tasks to increase the stability of your search clusters. See Dedicated master nodes in Amazon OpenSearch Service .
-
dedicated_master_type
¶ //docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html>`_ .
- Link
- Type
The hardware configuration of the computer that hosts the dedicated master node, such as
m3.medium.search
. If you specify this property, you must specifytrue
for theDedicatedMasterEnabled
property. For valid values, see `Supported instance types in Amazon OpenSearch Service <https- Return type
Optional
[str
]
-
instance_count
¶ The number of data nodes (instances) to use in the OpenSearch Service domain.
-
instance_type
¶ //docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html>`_ .
- Link
- Type
The instance type for your data nodes, such as
m3.medium.search
. For valid values, see `Supported instance types in Amazon OpenSearch Service <https- Return type
Optional
[str
]
-
warm_count
¶ The number of warm nodes in the cluster.
-
warm_enabled
¶ Whether to enable UltraWarm storage for the cluster.
-
warm_type
¶ The instance type for the cluster’s warm nodes.
-
zone_awareness_config
¶ Specifies zone awareness configuration options.
Only use if
ZoneAwarenessEnabled
istrue
.
-
zone_awareness_enabled
¶ Indicates whether to enable zone awareness for the OpenSearch Service domain.
When you enable zone awareness, OpenSearch Service allocates the nodes and replica index shards that belong to a cluster across two Availability Zones (AZs) in the same region to prevent data loss and minimize downtime in the event of node or data center failure. Don’t enable zone awareness if your cluster has no replica index shards or is a single-node cluster. For more information, see Configuring a multi-AZ domain in Amazon OpenSearch Service .
CognitoOptionsProperty¶
-
class
CfnDomain.
CognitoOptionsProperty
(*, enabled=None, identity_pool_id=None, role_arn=None, user_pool_id=None)¶ Bases:
object
Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.
- Parameters
enabled (
Union
[bool
,IResolvable
,None
]) – Whether to enable or disable Amazon Cognito authentication for OpenSearch Dashboards. See Amazon Cognito authentication for OpenSearch Dashboards .identity_pool_id (
Optional
[str
]) – The Amazon Cognito identity pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication. Required if you enabled Cognito Authentication for OpenSearch Dashboards.role_arn (
Optional
[str
]) – TheAmazonOpenSearchServiceCognitoAccess
role that allows OpenSearch Service to configure your user pool and identity pool. Required if you enabled Cognito Authentication for OpenSearch Dashboards.user_pool_id (
Optional
[str
]) – The Amazon Cognito user pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication. Required if you enabled Cognito Authentication for OpenSearch Dashboards.
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice cognito_options_property = opensearchservice.CfnDomain.CognitoOptionsProperty( enabled=False, identity_pool_id="identityPoolId", role_arn="roleArn", user_pool_id="userPoolId" )
Attributes
-
enabled
¶ Whether to enable or disable Amazon Cognito authentication for OpenSearch Dashboards.
See Amazon Cognito authentication for OpenSearch Dashboards .
-
identity_pool_id
¶ The Amazon Cognito identity pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.
Required if you enabled Cognito Authentication for OpenSearch Dashboards.
-
role_arn
¶ The
AmazonOpenSearchServiceCognitoAccess
role that allows OpenSearch Service to configure your user pool and identity pool.Required if you enabled Cognito Authentication for OpenSearch Dashboards.
-
user_pool_id
¶ The Amazon Cognito user pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.
Required if you enabled Cognito Authentication for OpenSearch Dashboards.
DomainEndpointOptionsProperty¶
-
class
CfnDomain.
DomainEndpointOptionsProperty
(*, custom_endpoint=None, custom_endpoint_certificate_arn=None, custom_endpoint_enabled=None, enforce_https=None, tls_security_policy=None)¶ Bases:
object
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.
- Parameters
custom_endpoint (
Optional
[str
]) – The fully qualified URL for your custom endpoint. Required if you enabled a custom endpoint for the domain.custom_endpoint_certificate_arn (
Optional
[str
]) – The AWS Certificate Manager ARN for your domain’s SSL/TLS certificate. Required if you enabled a custom endpoint for the domain.custom_endpoint_enabled (
Union
[bool
,IResolvable
,None
]) – True to enable a custom endpoint for the domain. If enabled, you must also provide values forCustomEndpoint
andCustomEndpointCertificateArn
.enforce_https (
Union
[bool
,IResolvable
,None
]) – True to require that all traffic to the domain arrive over HTTPS.tls_security_policy (
Optional
[str
]) – The minimum TLS version required for traffic to the domain. Valid values are TLS 1.0 (default) or 1.2:. -Policy-Min-TLS-1-0-2019-07
-Policy-Min-TLS-1-2-2019-07
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice domain_endpoint_options_property = opensearchservice.CfnDomain.DomainEndpointOptionsProperty( custom_endpoint="customEndpoint", custom_endpoint_certificate_arn="customEndpointCertificateArn", custom_endpoint_enabled=False, enforce_https=False, tls_security_policy="tlsSecurityPolicy" )
Attributes
-
custom_endpoint
¶ The fully qualified URL for your custom endpoint.
Required if you enabled a custom endpoint for the domain.
-
custom_endpoint_certificate_arn
¶ The AWS Certificate Manager ARN for your domain’s SSL/TLS certificate.
Required if you enabled a custom endpoint for the domain.
-
custom_endpoint_enabled
¶ True to enable a custom endpoint for the domain.
If enabled, you must also provide values for
CustomEndpoint
andCustomEndpointCertificateArn
.
-
enforce_https
¶ True to require that all traffic to the domain arrive over HTTPS.
-
tls_security_policy
¶ .
Policy-Min-TLS-1-0-2019-07
Policy-Min-TLS-1-2-2019-07
- Link
- Type
The minimum TLS version required for traffic to the domain. Valid values are TLS 1.0 (default) or 1.2
- Return type
Optional
[str
]
EBSOptionsProperty¶
-
class
CfnDomain.
EBSOptionsProperty
(*, ebs_enabled=None, iops=None, volume_size=None, volume_type=None)¶ Bases:
object
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 .
- Parameters
ebs_enabled (
Union
[bool
,IResolvable
,None
]) – Specifies whether Amazon EBS volumes are attached to data nodes in the OpenSearch Service domain.iops (
Union
[int
,float
,None
]) – The number of I/O operations per second (IOPS) that the volume supports. This property applies only to the Provisioned IOPS (SSD) EBS volume type.volume_size (
Union
[int
,float
,None
]) –The size (in GiB) of the EBS volume for each data node. The minimum and maximum size of an EBS volume depends on the EBS volume type and the instance type to which it is attached. For more information, see EBS volume size limits in the Amazon OpenSearch Service Developer Guide .
volume_type (
Optional
[str
]) – The EBS volume type to use with the OpenSearch Service domain, such as standard, gp2, or io1. For more information about each type, see Amazon EBS volume types in the Amazon EC2 User Guide for Linux Instances .
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice e_bSOptions_property = opensearchservice.CfnDomain.EBSOptionsProperty( ebs_enabled=False, iops=123, volume_size=123, volume_type="volumeType" )
Attributes
-
ebs_enabled
¶ Specifies whether Amazon EBS volumes are attached to data nodes in the OpenSearch Service domain.
-
iops
¶ The number of I/O operations per second (IOPS) that the volume supports.
This property applies only to the Provisioned IOPS (SSD) EBS volume type.
- Link
- Return type
Union
[int
,float
,None
]
-
volume_size
¶ The size (in GiB) of the EBS volume for each data node.
The minimum and maximum size of an EBS volume depends on the EBS volume type and the instance type to which it is attached. For more information, see EBS volume size limits in the Amazon OpenSearch Service Developer Guide .
-
volume_type
¶ The EBS volume type to use with the OpenSearch Service domain, such as standard, gp2, or io1.
For more information about each type, see Amazon EBS volume types in the Amazon EC2 User Guide for Linux Instances .
EncryptionAtRestOptionsProperty¶
-
class
CfnDomain.
EncryptionAtRestOptionsProperty
(*, enabled=None, kms_key_id=None)¶ Bases:
object
Whether the domain should encrypt data at rest, and if so, the AWS Key Management Service key to use.
- Parameters
enabled (
Union
[bool
,IResolvable
,None
]) – Specifytrue
to enable encryption at rest.kms_key_id (
Optional
[str
]) – The KMS key ID. Takes the form1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a
. Required if you enable encryption at rest.
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice encryption_at_rest_options_property = opensearchservice.CfnDomain.EncryptionAtRestOptionsProperty( enabled=False, kms_key_id="kmsKeyId" )
Attributes
-
enabled
¶ Specify
true
to enable encryption at rest.
-
kms_key_id
¶ The KMS key ID.
Takes the form
1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a
. Required if you enable encryption at rest.
LogPublishingOptionProperty¶
-
class
CfnDomain.
LogPublishingOptionProperty
(*, cloud_watch_logs_log_group_arn=None, enabled=None)¶ Bases:
object
Specifies whether the OpenSearch Service domain publishes application, search slow logs, or index slow logs to Amazon CloudWatch.
Each option must be an object of name
SEARCH_SLOW_LOGS
,ES_APPLICATION_LOGS
,INDEX_SLOW_LOGS
, orAUDIT_LOGS
depending on the type of logs you want to publish. For the full syntax, see the examples .Before you enable log publishing, you need to create a CloudWatch log group and provide OpenSearch Service the correct permissions to write to it. To learn more, see Enabling log publishing ( AWS CloudFormation) .
- Parameters
cloud_watch_logs_log_group_arn (
Optional
[str
]) – Specifies the CloudWatch log group to publish to. Required if you enable log publishing.enabled (
Union
[bool
,IResolvable
,None
]) – Iftrue
, enables the publishing of logs to CloudWatch. Default:false
.
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice log_publishing_option_property = opensearchservice.CfnDomain.LogPublishingOptionProperty( cloud_watch_logs_log_group_arn="cloudWatchLogsLogGroupArn", enabled=False )
Attributes
-
cloud_watch_logs_log_group_arn
¶ Specifies the CloudWatch log group to publish to.
Required if you enable log publishing.
-
enabled
¶ If
true
, enables the publishing of logs to CloudWatch.Default:
false
.
MasterUserOptionsProperty¶
-
class
CfnDomain.
MasterUserOptionsProperty
(*, master_user_arn=None, master_user_name=None, master_user_password=None)¶ Bases:
object
Specifies information about the master user.
Required if if
InternalUserDatabaseEnabled
is true inAdvancedSecurityOptions
.- Parameters
master_user_arn (
Optional
[str
]) – ARN for the master user. Only specify ifInternalUserDatabaseEnabled
is false inAdvancedSecurityOptions
.master_user_name (
Optional
[str
]) – Username for the master user. Only specify ifInternalUserDatabaseEnabled
is true inAdvancedSecurityOptions
. If you don’t want to specify this value directly within the template, you can use a dynamic reference instead.master_user_password (
Optional
[str
]) –Password for the master user. Only specify if
InternalUserDatabaseEnabled
is true inAdvancedSecurityOptions
. If you don’t want to specify this value directly within the template, you can use a dynamic reference instead.
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice master_user_options_property = opensearchservice.CfnDomain.MasterUserOptionsProperty( master_user_arn="masterUserArn", master_user_name="masterUserName", master_user_password="masterUserPassword" )
Attributes
-
master_user_arn
¶ ARN for the master user.
Only specify if
InternalUserDatabaseEnabled
is false inAdvancedSecurityOptions
.
-
master_user_name
¶ Username for the master user.
Only specify if
InternalUserDatabaseEnabled
is true inAdvancedSecurityOptions
. If you don’t want to specify this value directly within the template, you can use a dynamic reference instead.
-
master_user_password
¶ Password for the master user.
Only specify if
InternalUserDatabaseEnabled
is true inAdvancedSecurityOptions
. If you don’t want to specify this value directly within the template, you can use a dynamic reference instead.
NodeToNodeEncryptionOptionsProperty¶
-
class
CfnDomain.
NodeToNodeEncryptionOptionsProperty
(*, enabled=None)¶ Bases:
object
Specifies options for node-to-node encryption.
- Parameters
enabled (
Union
[bool
,IResolvable
,None
]) – Specifies to enable or disable node-to-node encryption on the domain.- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice node_to_node_encryption_options_property = opensearchservice.CfnDomain.NodeToNodeEncryptionOptionsProperty( enabled=False )
Attributes
-
enabled
¶ Specifies to enable or disable node-to-node encryption on the domain.
SnapshotOptionsProperty¶
-
class
CfnDomain.
SnapshotOptionsProperty
(*, automated_snapshot_start_hour=None)¶ Bases:
object
DEPRECATED .
This setting is only relevant to domains running legacy Elasticsearch OSS versions earlier than 5.3. It does not apply to OpenSearch domains.
The automated snapshot configuration for the OpenSearch Service domain indices.
- Parameters
automated_snapshot_start_hour (
Union
[int
,float
,None
]) – The hour in UTC during which the service takes an automated daily snapshot of the indices in the OpenSearch Service domain. For example, if you specify 0, OpenSearch Service takes an automated snapshot everyday between midnight and 1 am. You can specify a value between 0 and 23.- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice snapshot_options_property = opensearchservice.CfnDomain.SnapshotOptionsProperty( automated_snapshot_start_hour=123 )
Attributes
-
automated_snapshot_start_hour
¶ The hour in UTC during which the service takes an automated daily snapshot of the indices in the OpenSearch Service domain.
For example, if you specify 0, OpenSearch Service takes an automated snapshot everyday between midnight and 1 am. You can specify a value between 0 and 23.
VPCOptionsProperty¶
-
class
CfnDomain.
VPCOptionsProperty
(*, security_group_ids=None, subnet_ids=None)¶ Bases:
object
The virtual private cloud (VPC) configuration for the OpenSearch Service domain.
For more information, see Launching your Amazon OpenSearch Service domains using a VPC in the Amazon OpenSearch Service Developer Guide .
- Parameters
security_group_ids (
Optional
[Sequence
[str
]]) – The list of security group IDs that are associated with the VPC endpoints for the domain. If you don’t provide a security group ID, OpenSearch Service uses the default security group for the VPC. To learn more, see Security groups for your VPC in the Amazon VPC User Guide .subnet_ids (
Optional
[Sequence
[str
]]) – Provide one subnet ID for each Availability Zone that your domain uses. For example, you must specify three subnet IDs for a three Availability Zone domain. To learn more, see VPCs and subnets in the Amazon VPC User Guide .
- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice v_pCOptions_property = opensearchservice.CfnDomain.VPCOptionsProperty( security_group_ids=["securityGroupIds"], subnet_ids=["subnetIds"] )
Attributes
-
security_group_ids
¶ The list of security group IDs that are associated with the VPC endpoints for the domain.
If you don’t provide a security group ID, OpenSearch Service uses the default security group for the VPC. To learn more, see Security groups for your VPC in the Amazon VPC User Guide .
-
subnet_ids
¶ Provide one subnet ID for each Availability Zone that your domain uses.
For example, you must specify three subnet IDs for a three Availability Zone domain. To learn more, see VPCs and subnets in the Amazon VPC User Guide .
ZoneAwarenessConfigProperty¶
-
class
CfnDomain.
ZoneAwarenessConfigProperty
(*, availability_zone_count=None)¶ Bases:
object
Specifies zone awareness configuration options.
Only use if
ZoneAwarenessEnabled
istrue
.- Parameters
availability_zone_count (
Union
[int
,float
,None
]) – If you enabled multiple Availability Zones (AZs), the number of AZs that you want the domain to use. Valid values are2
and3
. Default is 2.- Link
- ExampleMetadata
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. import aws_cdk.aws_opensearchservice as opensearchservice zone_awareness_config_property = opensearchservice.CfnDomain.ZoneAwarenessConfigProperty( availability_zone_count=123 )
Attributes
-
availability_zone_count
¶ If you enabled multiple Availability Zones (AZs), the number of AZs that you want the domain to use.
Valid values are
2
and3
. Default is 2.