Interface ICfnDomainProps
Properties for defining a CfnDomain
.
Namespace: Amazon.CDK.AWS.Elasticsearch
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface ICfnDomainProps
Syntax (vb)
Public Interface ICfnDomainProps
Remarks
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Elasticsearch;
var accessPolicies;
var cfnDomainProps = new CfnDomainProps {
AccessPolicies = accessPolicies,
AdvancedOptions = new Dictionary<string, string> {
{ "advancedOptionsKey", "advancedOptions" }
},
AdvancedSecurityOptions = new AdvancedSecurityOptionsInputProperty {
AnonymousAuthEnabled = false,
Enabled = false,
InternalUserDatabaseEnabled = false,
MasterUserOptions = new MasterUserOptionsProperty {
MasterUserArn = "masterUserArn",
MasterUserName = "masterUserName",
MasterUserPassword = "masterUserPassword"
}
},
CognitoOptions = new CognitoOptionsProperty {
Enabled = false,
IdentityPoolId = "identityPoolId",
RoleArn = "roleArn",
UserPoolId = "userPoolId"
},
DomainArn = "domainArn",
DomainEndpointOptions = new DomainEndpointOptionsProperty {
CustomEndpoint = "customEndpoint",
CustomEndpointCertificateArn = "customEndpointCertificateArn",
CustomEndpointEnabled = false,
EnforceHttps = false,
TlsSecurityPolicy = "tlsSecurityPolicy"
},
DomainName = "domainName",
EbsOptions = new EBSOptionsProperty {
EbsEnabled = false,
Iops = 123,
VolumeSize = 123,
VolumeType = "volumeType"
},
ElasticsearchClusterConfig = new ElasticsearchClusterConfigProperty {
ColdStorageOptions = new ColdStorageOptionsProperty {
Enabled = false
},
DedicatedMasterCount = 123,
DedicatedMasterEnabled = false,
DedicatedMasterType = "dedicatedMasterType",
InstanceCount = 123,
InstanceType = "instanceType",
WarmCount = 123,
WarmEnabled = false,
WarmType = "warmType",
ZoneAwarenessConfig = new ZoneAwarenessConfigProperty {
AvailabilityZoneCount = 123
},
ZoneAwarenessEnabled = false
},
ElasticsearchVersion = "elasticsearchVersion",
EncryptionAtRestOptions = new EncryptionAtRestOptionsProperty {
Enabled = false,
KmsKeyId = "kmsKeyId"
},
LogPublishingOptions = new Dictionary<string, object> {
{ "logPublishingOptionsKey", new LogPublishingOptionProperty {
CloudWatchLogsLogGroupArn = "cloudWatchLogsLogGroupArn",
Enabled = false
} }
},
NodeToNodeEncryptionOptions = new NodeToNodeEncryptionOptionsProperty {
Enabled = false
},
SnapshotOptions = new SnapshotOptionsProperty {
AutomatedSnapshotStartHour = 123
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
VpcOptions = new VPCOptionsProperty {
SecurityGroupIds = new [] { "securityGroupIds" },
SubnetIds = new [] { "subnetIds" }
}
};
Synopsis
Properties
AccessPolicies | An AWS Identity and Access Management ( IAM ) policy document that specifies who can access the OpenSearch Service domain and their permissions. |
AdvancedOptions | Additional options to specify for the OpenSearch Service domain. |
AdvancedSecurityOptions | Specifies options for fine-grained access control. |
CognitoOptions | Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards. |
DomainArn | |
DomainEndpointOptions | 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. |
DomainName | A name for the OpenSearch Service domain. |
EbsOptions | The configurations of Amazon Elastic Block Store (Amazon EBS) volumes that are attached to data nodes in the OpenSearch Service domain. |
ElasticsearchClusterConfig | ElasticsearchClusterConfig is a property of the AWS::Elasticsearch::Domain resource that configures the cluster of an Amazon OpenSearch Service domain. |
ElasticsearchVersion | The version of Elasticsearch to use, such as 2.3. If not specified, 1.5 is used as the default. For information about the versions that OpenSearch Service supports, see Supported versions of OpenSearch and Elasticsearch in the Amazon OpenSearch Service Developer Guide . |
EncryptionAtRestOptions | Whether the domain should encrypt data at rest, and if so, the AWS Key Management Service key to use. |
LogPublishingOptions | An object with one or more of the following keys: |
NodeToNodeEncryptionOptions | Specifies whether node-to-node encryption is enabled. |
SnapshotOptions | DEPRECATED . |
Tags | An arbitrary set of tags (key–value pairs) to associate with the OpenSearch Service domain. |
VpcOptions | The virtual private cloud (VPC) configuration for the OpenSearch Service domain. |
Properties
AccessPolicies
An AWS Identity and Access Management ( IAM ) policy document that specifies who can access the OpenSearch Service domain and their permissions.
virtual object AccessPolicies { get; }
Property Value
System.Object
Remarks
For more information, see Configuring access policies in the Amazon OpenSearch Service Developer Guid e.
AdvancedOptions
Additional options to specify for the OpenSearch Service domain.
virtual object AdvancedOptions { get; }
Property Value
System.Object
Remarks
For more information, see Advanced cluster parameters in the Amazon OpenSearch Service Developer Guide .
AdvancedSecurityOptions
Specifies options for fine-grained access control.
virtual object AdvancedSecurityOptions { get; }
Property Value
System.Object
Remarks
CognitoOptions
Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.
virtual object CognitoOptions { get; }
Property Value
System.Object
Remarks
DomainArn
virtual string DomainArn { get; }
Property Value
System.String
Remarks
DomainEndpointOptions
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.
virtual object DomainEndpointOptions { get; }
Property Value
System.Object
Remarks
DomainName
A name for the OpenSearch Service domain.
virtual string DomainName { get; }
Property Value
System.String
Remarks
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 .
If you specify a name, you cannot 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.
EbsOptions
The configurations of Amazon Elastic Block Store (Amazon EBS) volumes that are attached to data nodes in the OpenSearch Service domain.
virtual object EbsOptions { get; }
Property Value
System.Object
Remarks
For more information, see EBS volume size limits in the Amazon OpenSearch Service Developer Guide .
ElasticsearchClusterConfig
ElasticsearchClusterConfig is a property of the AWS::Elasticsearch::Domain resource that configures the cluster of an Amazon OpenSearch Service domain.
virtual object ElasticsearchClusterConfig { get; }
Property Value
System.Object
Remarks
ElasticsearchVersion
The version of Elasticsearch to use, such as 2.3. If not specified, 1.5 is used as the default. For information about the versions that OpenSearch Service supports, see Supported versions of OpenSearch and Elasticsearch in the Amazon OpenSearch Service Developer Guide .
virtual string ElasticsearchVersion { get; }
Property Value
System.String
Remarks
If you set the EnableVersionUpgrade update policy to true
, you can update ElasticsearchVersion
without interruption. When EnableVersionUpgrade
is set to false
, or is not specified, updating ElasticsearchVersion
results in replacement .
EncryptionAtRestOptions
Whether the domain should encrypt data at rest, and if so, the AWS Key Management Service key to use.
virtual object EncryptionAtRestOptions { get; }
Property Value
System.Object
Remarks
LogPublishingOptions
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.
virtual object LogPublishingOptions { get; }
Property Value
System.Object
Remarks
Each key needs a valid LogPublishingOption
value.
NodeToNodeEncryptionOptions
Specifies whether node-to-node encryption is enabled.
virtual object NodeToNodeEncryptionOptions { get; }
Property Value
System.Object
Remarks
SnapshotOptions
DEPRECATED .
virtual object SnapshotOptions { get; }
Property Value
System.Object
Remarks
The automated snapshot configuration for the OpenSearch Service domain indices.
Tags
An arbitrary set of tags (key–value pairs) to associate with the OpenSearch Service domain.
virtual ICfnTag[] Tags { get; }
Property Value
ICfnTag[]
Remarks
VpcOptions
The virtual private cloud (VPC) configuration for the OpenSearch Service domain.
virtual object VpcOptions { get; }
Property Value
System.Object
Remarks
For more information, see Launching your Amazon OpenSearch Service domains within a VPC in the Amazon OpenSearch Service Developer Guide .