ElasticsearchService / Client / create_elasticsearch_domain
create_elasticsearch_domain#
- ElasticsearchService.Client.create_elasticsearch_domain(**kwargs)#
Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.
See also: AWS API Documentation
Request Syntax
response = client.create_elasticsearch_domain( DomainName='string', ElasticsearchVersion='string', ElasticsearchClusterConfig={ 'InstanceType': 'm3.medium.elasticsearch'|'m3.large.elasticsearch'|'m3.xlarge.elasticsearch'|'m3.2xlarge.elasticsearch'|'m4.large.elasticsearch'|'m4.xlarge.elasticsearch'|'m4.2xlarge.elasticsearch'|'m4.4xlarge.elasticsearch'|'m4.10xlarge.elasticsearch'|'m5.large.elasticsearch'|'m5.xlarge.elasticsearch'|'m5.2xlarge.elasticsearch'|'m5.4xlarge.elasticsearch'|'m5.12xlarge.elasticsearch'|'r5.large.elasticsearch'|'r5.xlarge.elasticsearch'|'r5.2xlarge.elasticsearch'|'r5.4xlarge.elasticsearch'|'r5.12xlarge.elasticsearch'|'c5.large.elasticsearch'|'c5.xlarge.elasticsearch'|'c5.2xlarge.elasticsearch'|'c5.4xlarge.elasticsearch'|'c5.9xlarge.elasticsearch'|'c5.18xlarge.elasticsearch'|'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch'|'t2.micro.elasticsearch'|'t2.small.elasticsearch'|'t2.medium.elasticsearch'|'r3.large.elasticsearch'|'r3.xlarge.elasticsearch'|'r3.2xlarge.elasticsearch'|'r3.4xlarge.elasticsearch'|'r3.8xlarge.elasticsearch'|'i2.xlarge.elasticsearch'|'i2.2xlarge.elasticsearch'|'d2.xlarge.elasticsearch'|'d2.2xlarge.elasticsearch'|'d2.4xlarge.elasticsearch'|'d2.8xlarge.elasticsearch'|'c4.large.elasticsearch'|'c4.xlarge.elasticsearch'|'c4.2xlarge.elasticsearch'|'c4.4xlarge.elasticsearch'|'c4.8xlarge.elasticsearch'|'r4.large.elasticsearch'|'r4.xlarge.elasticsearch'|'r4.2xlarge.elasticsearch'|'r4.4xlarge.elasticsearch'|'r4.8xlarge.elasticsearch'|'r4.16xlarge.elasticsearch'|'i3.large.elasticsearch'|'i3.xlarge.elasticsearch'|'i3.2xlarge.elasticsearch'|'i3.4xlarge.elasticsearch'|'i3.8xlarge.elasticsearch'|'i3.16xlarge.elasticsearch', 'InstanceCount': 123, 'DedicatedMasterEnabled': True|False, 'ZoneAwarenessEnabled': True|False, 'ZoneAwarenessConfig': { 'AvailabilityZoneCount': 123 }, 'DedicatedMasterType': 'm3.medium.elasticsearch'|'m3.large.elasticsearch'|'m3.xlarge.elasticsearch'|'m3.2xlarge.elasticsearch'|'m4.large.elasticsearch'|'m4.xlarge.elasticsearch'|'m4.2xlarge.elasticsearch'|'m4.4xlarge.elasticsearch'|'m4.10xlarge.elasticsearch'|'m5.large.elasticsearch'|'m5.xlarge.elasticsearch'|'m5.2xlarge.elasticsearch'|'m5.4xlarge.elasticsearch'|'m5.12xlarge.elasticsearch'|'r5.large.elasticsearch'|'r5.xlarge.elasticsearch'|'r5.2xlarge.elasticsearch'|'r5.4xlarge.elasticsearch'|'r5.12xlarge.elasticsearch'|'c5.large.elasticsearch'|'c5.xlarge.elasticsearch'|'c5.2xlarge.elasticsearch'|'c5.4xlarge.elasticsearch'|'c5.9xlarge.elasticsearch'|'c5.18xlarge.elasticsearch'|'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch'|'t2.micro.elasticsearch'|'t2.small.elasticsearch'|'t2.medium.elasticsearch'|'r3.large.elasticsearch'|'r3.xlarge.elasticsearch'|'r3.2xlarge.elasticsearch'|'r3.4xlarge.elasticsearch'|'r3.8xlarge.elasticsearch'|'i2.xlarge.elasticsearch'|'i2.2xlarge.elasticsearch'|'d2.xlarge.elasticsearch'|'d2.2xlarge.elasticsearch'|'d2.4xlarge.elasticsearch'|'d2.8xlarge.elasticsearch'|'c4.large.elasticsearch'|'c4.xlarge.elasticsearch'|'c4.2xlarge.elasticsearch'|'c4.4xlarge.elasticsearch'|'c4.8xlarge.elasticsearch'|'r4.large.elasticsearch'|'r4.xlarge.elasticsearch'|'r4.2xlarge.elasticsearch'|'r4.4xlarge.elasticsearch'|'r4.8xlarge.elasticsearch'|'r4.16xlarge.elasticsearch'|'i3.large.elasticsearch'|'i3.xlarge.elasticsearch'|'i3.2xlarge.elasticsearch'|'i3.4xlarge.elasticsearch'|'i3.8xlarge.elasticsearch'|'i3.16xlarge.elasticsearch', 'DedicatedMasterCount': 123, 'WarmEnabled': True|False, 'WarmType': 'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch', 'WarmCount': 123, 'ColdStorageOptions': { 'Enabled': True|False } }, EBSOptions={ 'EBSEnabled': True|False, 'VolumeType': 'standard'|'gp2'|'io1'|'gp3', 'VolumeSize': 123, 'Iops': 123, 'Throughput': 123 }, AccessPolicies='string', SnapshotOptions={ 'AutomatedSnapshotStartHour': 123 }, VPCOptions={ 'SubnetIds': [ 'string', ], 'SecurityGroupIds': [ 'string', ] }, CognitoOptions={ 'Enabled': True|False, 'UserPoolId': 'string', 'IdentityPoolId': 'string', 'RoleArn': 'string' }, EncryptionAtRestOptions={ 'Enabled': True|False, 'KmsKeyId': 'string' }, NodeToNodeEncryptionOptions={ 'Enabled': True|False }, AdvancedOptions={ 'string': 'string' }, LogPublishingOptions={ 'string': { 'CloudWatchLogsLogGroupArn': 'string', 'Enabled': True|False } }, DomainEndpointOptions={ 'EnforceHTTPS': True|False, 'TLSSecurityPolicy': 'Policy-Min-TLS-1-0-2019-07'|'Policy-Min-TLS-1-2-2019-07'|'Policy-Min-TLS-1-2-PFS-2023-10', 'CustomEndpointEnabled': True|False, 'CustomEndpoint': 'string', 'CustomEndpointCertificateArn': 'string' }, AdvancedSecurityOptions={ 'Enabled': True|False, 'InternalUserDatabaseEnabled': True|False, 'MasterUserOptions': { 'MasterUserARN': 'string', 'MasterUserName': 'string', 'MasterUserPassword': 'string' }, 'SAMLOptions': { 'Enabled': True|False, 'Idp': { 'MetadataContent': 'string', 'EntityId': 'string' }, 'MasterUserName': 'string', 'MasterBackendRole': 'string', 'SubjectKey': 'string', 'RolesKey': 'string', 'SessionTimeoutMinutes': 123 }, 'AnonymousAuthEnabled': True|False }, AutoTuneOptions={ 'DesiredState': 'ENABLED'|'DISABLED', 'MaintenanceSchedules': [ { 'StartAt': datetime(2015, 1, 1), 'Duration': { 'Value': 123, 'Unit': 'HOURS' }, 'CronExpressionForRecurrence': 'string' }, ] }, TagList=[ { 'Key': 'string', 'Value': 'string' }, ] )
- Parameters:
DomainName (string) –
[REQUIRED]
The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a lowercase letter and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).
ElasticsearchVersion (string) – String of format X.Y to specify version for the Elasticsearch domain eg. “1.5” or “2.3”. For more information, see Creating Elasticsearch Domains in the Amazon Elasticsearch Service Developer Guide.
ElasticsearchClusterConfig (dict) –
Configuration options for an Elasticsearch domain. Specifies the instance type and number of instances in the domain cluster.
InstanceType (string) –
The instance type for an Elasticsearch cluster. UltraWarm instance types are not supported for data instances.
InstanceCount (integer) –
The number of instances in the specified domain cluster.
DedicatedMasterEnabled (boolean) –
A boolean value to indicate whether a dedicated master node is enabled. See About Dedicated Master Nodes for more information.
ZoneAwarenessEnabled (boolean) –
A boolean value to indicate whether zone awareness is enabled. See About Zone Awareness for more information.
ZoneAwarenessConfig (dict) –
Specifies the zone awareness configuration for a domain when zone awareness is enabled.
AvailabilityZoneCount (integer) –
An integer value to indicate the number of availability zones for a domain when zone awareness is enabled. This should be equal to number of subnets if VPC endpoints is enabled
DedicatedMasterType (string) –
The instance type for a dedicated master node.
DedicatedMasterCount (integer) –
Total number of dedicated master nodes, active and on standby, for the cluster.
WarmEnabled (boolean) –
True to enable warm storage.
WarmType (string) –
The instance type for the Elasticsearch cluster’s warm nodes.
WarmCount (integer) –
The number of warm nodes in the cluster.
ColdStorageOptions (dict) –
Specifies the
ColdStorageOptions
config for Elasticsearch DomainEnabled (boolean) – [REQUIRED]
Enable cold storage option. Accepted values true or false
EBSOptions (dict) –
Options to enable, disable and specify the type and size of EBS storage volumes.
EBSEnabled (boolean) –
Specifies whether EBS-based storage is enabled.
VolumeType (string) –
Specifies the volume type for EBS-based storage.
VolumeSize (integer) –
Integer to specify the size of an EBS volume.
Iops (integer) –
Specifies the IOPS for Provisioned IOPS And GP3 EBS volume (SSD).
Throughput (integer) –
Specifies the Throughput for GP3 EBS volume (SSD).
AccessPolicies (string) – IAM access policy as a JSON-formatted string.
SnapshotOptions (dict) –
Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours.
AutomatedSnapshotStartHour (integer) –
Specifies the time, in UTC format, when the service takes a daily automated snapshot of the specified Elasticsearch domain. Default value is
0
hours.
VPCOptions (dict) –
Options to specify the subnets and security groups for VPC endpoint. For more information, see Creating a VPC in VPC Endpoints for Amazon Elasticsearch Service Domains
SubnetIds (list) –
Specifies the subnets for VPC endpoint.
(string) –
SecurityGroupIds (list) –
Specifies the security groups for VPC endpoint.
(string) –
CognitoOptions (dict) –
Options to specify the Cognito user and identity pools for Kibana authentication. For more information, see Amazon Cognito Authentication for Kibana.
Enabled (boolean) –
Specifies the option to enable Cognito for Kibana authentication.
UserPoolId (string) –
Specifies the Cognito user pool ID for Kibana authentication.
IdentityPoolId (string) –
Specifies the Cognito identity pool ID for Kibana authentication.
RoleArn (string) –
Specifies the role ARN that provides Elasticsearch permissions for accessing Cognito resources.
EncryptionAtRestOptions (dict) –
Specifies the Encryption At Rest Options.
Enabled (boolean) –
Specifies the option to enable Encryption At Rest.
KmsKeyId (string) –
Specifies the KMS Key ID for Encryption At Rest options.
NodeToNodeEncryptionOptions (dict) –
Specifies the NodeToNodeEncryptionOptions.
Enabled (boolean) –
Specify true to enable node-to-node encryption.
AdvancedOptions (dict) –
Option to allow references to indices in an HTTP request body. Must be
false
when configuring access to individual sub-resources. By default, the value istrue
. See Configuration Advanced Options for more information.(string) –
(string) –
LogPublishingOptions (dict) –
Map of
LogType
andLogPublishingOption
, each containing options to publish a given type of Elasticsearch log.(string) –
Type of Log File, it can be one of the following:
INDEX_SLOW_LOGS: Index slow logs contain insert requests that took more time than configured index query log threshold to execute.
SEARCH_SLOW_LOGS: Search slow logs contain search queries that took more time than configured search query log threshold to execute.
ES_APPLICATION_LOGS: Elasticsearch application logs contain information about errors and warnings raised during the operation of the service and can be useful for troubleshooting.
AUDIT_LOGS: Audit logs contain records of user requests for access from the domain.
(dict) –
Log Publishing option that is set for given domain. Attributes and their details:
CloudWatchLogsLogGroupArn: ARN of the Cloudwatch log group to which log needs to be published.
Enabled: Whether the log publishing for given log type is enabled or not
CloudWatchLogsLogGroupArn (string) –
ARN of the Cloudwatch log group to which log needs to be published.
Enabled (boolean) –
Specifies whether given log publishing option is enabled or not.
DomainEndpointOptions (dict) –
Options to specify configuration that will be applied to the domain endpoint.
EnforceHTTPS (boolean) –
Specify if only HTTPS endpoint should be enabled for the Elasticsearch domain.
TLSSecurityPolicy (string) –
Specify the TLS security policy that needs to be applied to the HTTPS endpoint of Elasticsearch domain. It can be one of the following values:
Policy-Min-TLS-1-0-2019-07: TLS security policy that supports TLS version 1.0 to TLS version 1.2
Policy-Min-TLS-1-2-2019-07: TLS security policy that supports only TLS version 1.2
Policy-Min-TLS-1-2-PFS-2023-10: TLS security policy that supports TLS version 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites
CustomEndpointEnabled (boolean) –
Specify if custom endpoint should be enabled for the Elasticsearch domain.
CustomEndpoint (string) –
Specify the fully qualified domain for your custom endpoint.
CustomEndpointCertificateArn (string) –
Specify ACM certificate ARN for your custom endpoint.
AdvancedSecurityOptions (dict) –
Specifies advanced security options.
Enabled (boolean) –
True if advanced security is enabled.
InternalUserDatabaseEnabled (boolean) –
True if the internal user database is enabled.
MasterUserOptions (dict) –
Credentials for the master user: username and password, ARN, or both.
MasterUserARN (string) –
ARN for the master user (if IAM is enabled).
MasterUserName (string) –
The master user’s username, which is stored in the Amazon Elasticsearch Service domain’s internal database.
MasterUserPassword (string) –
The master user’s password, which is stored in the Amazon Elasticsearch Service domain’s internal database.
SAMLOptions (dict) –
Specifies the SAML application configuration for the domain.
Enabled (boolean) –
True if SAML is enabled.
Idp (dict) –
Specifies the SAML Identity Provider’s information.
MetadataContent (string) – [REQUIRED]
The Metadata of the SAML application in xml format.
EntityId (string) – [REQUIRED]
The unique Entity ID of the application in SAML Identity Provider.
MasterUserName (string) –
The SAML master username, which is stored in the Amazon Elasticsearch Service domain’s internal database.
MasterBackendRole (string) –
The backend role to which the SAML master user is mapped to.
SubjectKey (string) –
The key to use for matching the SAML Subject attribute.
RolesKey (string) –
The key to use for matching the SAML Roles attribute.
SessionTimeoutMinutes (integer) –
The duration, in minutes, after which a user session becomes inactive. Acceptable values are between 1 and 1440, and the default value is 60.
AnonymousAuthEnabled (boolean) –
True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.
AutoTuneOptions (dict) –
Specifies Auto-Tune options.
DesiredState (string) –
Specifies the Auto-Tune desired state. Valid values are ENABLED, DISABLED.
MaintenanceSchedules (list) –
Specifies list of maitenance schedules. See the Developer Guide for more information.
(dict) –
Specifies Auto-Tune maitenance schedule. See the Developer Guide for more information.
StartAt (datetime) –
Specifies timestamp at which Auto-Tune maintenance schedule start.
Duration (dict) –
Specifies maintenance schedule duration: duration value and duration unit. See the Developer Guide for more information.
Value (integer) –
Integer to specify the value of a maintenance schedule duration. See the Developer Guide for more information.
Unit (string) –
Specifies the unit of a maintenance schedule duration. Valid value is HOURS. See the Developer Guide for more information.
CronExpressionForRecurrence (string) –
Specifies cron expression for a recurring maintenance schedule. See the Developer Guide for more information.
TagList (list) –
A list of
Tag
added during domain creation.(dict) –
Specifies a key value pair for a resource tag.
Key (string) – [REQUIRED]
Specifies the
TagKey
, the name of the tag. Tag keys must be unique for the Elasticsearch domain to which they are attached.Value (string) – [REQUIRED]
Specifies the
TagValue
, the value assigned to the corresponding tag key. Tag values can be null and do not have to be unique in a tag set. For example, you can have a key value pair in a tag set ofproject : Trinity
andcost-center : Trinity
- Return type:
dict
- Returns:
Response Syntax
{ 'DomainStatus': { 'DomainId': 'string', 'DomainName': 'string', 'ARN': 'string', 'Created': True|False, 'Deleted': True|False, 'Endpoint': 'string', 'Endpoints': { 'string': 'string' }, 'Processing': True|False, 'UpgradeProcessing': True|False, 'ElasticsearchVersion': 'string', 'ElasticsearchClusterConfig': { 'InstanceType': 'm3.medium.elasticsearch'|'m3.large.elasticsearch'|'m3.xlarge.elasticsearch'|'m3.2xlarge.elasticsearch'|'m4.large.elasticsearch'|'m4.xlarge.elasticsearch'|'m4.2xlarge.elasticsearch'|'m4.4xlarge.elasticsearch'|'m4.10xlarge.elasticsearch'|'m5.large.elasticsearch'|'m5.xlarge.elasticsearch'|'m5.2xlarge.elasticsearch'|'m5.4xlarge.elasticsearch'|'m5.12xlarge.elasticsearch'|'r5.large.elasticsearch'|'r5.xlarge.elasticsearch'|'r5.2xlarge.elasticsearch'|'r5.4xlarge.elasticsearch'|'r5.12xlarge.elasticsearch'|'c5.large.elasticsearch'|'c5.xlarge.elasticsearch'|'c5.2xlarge.elasticsearch'|'c5.4xlarge.elasticsearch'|'c5.9xlarge.elasticsearch'|'c5.18xlarge.elasticsearch'|'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch'|'t2.micro.elasticsearch'|'t2.small.elasticsearch'|'t2.medium.elasticsearch'|'r3.large.elasticsearch'|'r3.xlarge.elasticsearch'|'r3.2xlarge.elasticsearch'|'r3.4xlarge.elasticsearch'|'r3.8xlarge.elasticsearch'|'i2.xlarge.elasticsearch'|'i2.2xlarge.elasticsearch'|'d2.xlarge.elasticsearch'|'d2.2xlarge.elasticsearch'|'d2.4xlarge.elasticsearch'|'d2.8xlarge.elasticsearch'|'c4.large.elasticsearch'|'c4.xlarge.elasticsearch'|'c4.2xlarge.elasticsearch'|'c4.4xlarge.elasticsearch'|'c4.8xlarge.elasticsearch'|'r4.large.elasticsearch'|'r4.xlarge.elasticsearch'|'r4.2xlarge.elasticsearch'|'r4.4xlarge.elasticsearch'|'r4.8xlarge.elasticsearch'|'r4.16xlarge.elasticsearch'|'i3.large.elasticsearch'|'i3.xlarge.elasticsearch'|'i3.2xlarge.elasticsearch'|'i3.4xlarge.elasticsearch'|'i3.8xlarge.elasticsearch'|'i3.16xlarge.elasticsearch', 'InstanceCount': 123, 'DedicatedMasterEnabled': True|False, 'ZoneAwarenessEnabled': True|False, 'ZoneAwarenessConfig': { 'AvailabilityZoneCount': 123 }, 'DedicatedMasterType': 'm3.medium.elasticsearch'|'m3.large.elasticsearch'|'m3.xlarge.elasticsearch'|'m3.2xlarge.elasticsearch'|'m4.large.elasticsearch'|'m4.xlarge.elasticsearch'|'m4.2xlarge.elasticsearch'|'m4.4xlarge.elasticsearch'|'m4.10xlarge.elasticsearch'|'m5.large.elasticsearch'|'m5.xlarge.elasticsearch'|'m5.2xlarge.elasticsearch'|'m5.4xlarge.elasticsearch'|'m5.12xlarge.elasticsearch'|'r5.large.elasticsearch'|'r5.xlarge.elasticsearch'|'r5.2xlarge.elasticsearch'|'r5.4xlarge.elasticsearch'|'r5.12xlarge.elasticsearch'|'c5.large.elasticsearch'|'c5.xlarge.elasticsearch'|'c5.2xlarge.elasticsearch'|'c5.4xlarge.elasticsearch'|'c5.9xlarge.elasticsearch'|'c5.18xlarge.elasticsearch'|'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch'|'t2.micro.elasticsearch'|'t2.small.elasticsearch'|'t2.medium.elasticsearch'|'r3.large.elasticsearch'|'r3.xlarge.elasticsearch'|'r3.2xlarge.elasticsearch'|'r3.4xlarge.elasticsearch'|'r3.8xlarge.elasticsearch'|'i2.xlarge.elasticsearch'|'i2.2xlarge.elasticsearch'|'d2.xlarge.elasticsearch'|'d2.2xlarge.elasticsearch'|'d2.4xlarge.elasticsearch'|'d2.8xlarge.elasticsearch'|'c4.large.elasticsearch'|'c4.xlarge.elasticsearch'|'c4.2xlarge.elasticsearch'|'c4.4xlarge.elasticsearch'|'c4.8xlarge.elasticsearch'|'r4.large.elasticsearch'|'r4.xlarge.elasticsearch'|'r4.2xlarge.elasticsearch'|'r4.4xlarge.elasticsearch'|'r4.8xlarge.elasticsearch'|'r4.16xlarge.elasticsearch'|'i3.large.elasticsearch'|'i3.xlarge.elasticsearch'|'i3.2xlarge.elasticsearch'|'i3.4xlarge.elasticsearch'|'i3.8xlarge.elasticsearch'|'i3.16xlarge.elasticsearch', 'DedicatedMasterCount': 123, 'WarmEnabled': True|False, 'WarmType': 'ultrawarm1.medium.elasticsearch'|'ultrawarm1.large.elasticsearch', 'WarmCount': 123, 'ColdStorageOptions': { 'Enabled': True|False } }, 'EBSOptions': { 'EBSEnabled': True|False, 'VolumeType': 'standard'|'gp2'|'io1'|'gp3', 'VolumeSize': 123, 'Iops': 123, 'Throughput': 123 }, 'AccessPolicies': 'string', 'SnapshotOptions': { 'AutomatedSnapshotStartHour': 123 }, 'VPCOptions': { 'VPCId': 'string', 'SubnetIds': [ 'string', ], 'AvailabilityZones': [ 'string', ], 'SecurityGroupIds': [ 'string', ] }, 'CognitoOptions': { 'Enabled': True|False, 'UserPoolId': 'string', 'IdentityPoolId': 'string', 'RoleArn': 'string' }, 'EncryptionAtRestOptions': { 'Enabled': True|False, 'KmsKeyId': 'string' }, 'NodeToNodeEncryptionOptions': { 'Enabled': True|False }, 'AdvancedOptions': { 'string': 'string' }, 'LogPublishingOptions': { 'string': { 'CloudWatchLogsLogGroupArn': 'string', 'Enabled': True|False } }, 'ServiceSoftwareOptions': { 'CurrentVersion': 'string', 'NewVersion': 'string', 'UpdateAvailable': True|False, 'Cancellable': True|False, 'UpdateStatus': 'PENDING_UPDATE'|'IN_PROGRESS'|'COMPLETED'|'NOT_ELIGIBLE'|'ELIGIBLE', 'Description': 'string', 'AutomatedUpdateDate': datetime(2015, 1, 1), 'OptionalDeployment': True|False }, 'DomainEndpointOptions': { 'EnforceHTTPS': True|False, 'TLSSecurityPolicy': 'Policy-Min-TLS-1-0-2019-07'|'Policy-Min-TLS-1-2-2019-07'|'Policy-Min-TLS-1-2-PFS-2023-10', 'CustomEndpointEnabled': True|False, 'CustomEndpoint': 'string', 'CustomEndpointCertificateArn': 'string' }, 'AdvancedSecurityOptions': { 'Enabled': True|False, 'InternalUserDatabaseEnabled': True|False, 'SAMLOptions': { 'Enabled': True|False, 'Idp': { 'MetadataContent': 'string', 'EntityId': 'string' }, 'SubjectKey': 'string', 'RolesKey': 'string', 'SessionTimeoutMinutes': 123 }, 'AnonymousAuthDisableDate': datetime(2015, 1, 1), 'AnonymousAuthEnabled': True|False }, 'AutoTuneOptions': { 'State': 'ENABLED'|'DISABLED'|'ENABLE_IN_PROGRESS'|'DISABLE_IN_PROGRESS'|'DISABLED_AND_ROLLBACK_SCHEDULED'|'DISABLED_AND_ROLLBACK_IN_PROGRESS'|'DISABLED_AND_ROLLBACK_COMPLETE'|'DISABLED_AND_ROLLBACK_ERROR'|'ERROR', 'ErrorMessage': 'string' }, 'ChangeProgressDetails': { 'ChangeId': 'string', 'Message': 'string', 'ConfigChangeStatus': 'Pending'|'Initializing'|'Validating'|'ValidationFailed'|'ApplyingChanges'|'Completed'|'PendingUserInput'|'Cancelled', 'StartTime': datetime(2015, 1, 1), 'LastUpdatedTime': datetime(2015, 1, 1), 'InitiatedBy': 'CUSTOMER'|'SERVICE' }, 'DomainProcessingStatus': 'Creating'|'Active'|'Modifying'|'UpgradingEngineVersion'|'UpdatingServiceSoftware'|'Isolated'|'Deleting', 'ModifyingProperties': [ { 'Name': 'string', 'ActiveValue': 'string', 'PendingValue': 'string', 'ValueType': 'PLAIN_TEXT'|'STRINGIFIED_JSON' }, ] } }
Response Structure
(dict) –
The result of a
CreateElasticsearchDomain
operation. Contains the status of the newly created Elasticsearch domain.DomainStatus (dict) –
The status of the newly created Elasticsearch domain.
DomainId (string) –
The unique identifier for the specified Elasticsearch domain.
DomainName (string) –
The name of an Elasticsearch domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).
ARN (string) –
The Amazon resource name (ARN) of an Elasticsearch domain. See Identifiers for IAM Entities in Using AWS Identity and Access Management for more information.
Created (boolean) –
The domain creation status.
True
if the creation of an Elasticsearch domain is complete.False
if domain creation is still in progress.Deleted (boolean) –
The domain deletion status.
True
if a delete request has been received for the domain but resource cleanup is still in progress.False
if the domain has not been deleted. Once domain deletion is complete, the status of the domain is no longer returned.Endpoint (string) –
The Elasticsearch domain endpoint that you use to submit index and search requests.
Endpoints (dict) –
Map containing the Elasticsearch domain endpoints used to submit index and search requests. Example
key, value
:'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.(string) –
(string) –
The endpoint to which service requests are submitted. For example,
search-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.es.amazonaws.com
ordoc-imdb-movies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.es.amazonaws.com
.
Processing (boolean) –
The status of the Elasticsearch domain configuration.
True
if Amazon Elasticsearch Service is processing configuration changes.False
if the configuration is active.UpgradeProcessing (boolean) –
The status of an Elasticsearch domain version upgrade.
True
if Amazon Elasticsearch Service is undergoing a version upgrade.False
if the configuration is active.ElasticsearchVersion (string) –
ElasticsearchClusterConfig (dict) –
The type and number of instances in the domain cluster.
InstanceType (string) –
The instance type for an Elasticsearch cluster. UltraWarm instance types are not supported for data instances.
InstanceCount (integer) –
The number of instances in the specified domain cluster.
DedicatedMasterEnabled (boolean) –
A boolean value to indicate whether a dedicated master node is enabled. See About Dedicated Master Nodes for more information.
ZoneAwarenessEnabled (boolean) –
A boolean value to indicate whether zone awareness is enabled. See About Zone Awareness for more information.
ZoneAwarenessConfig (dict) –
Specifies the zone awareness configuration for a domain when zone awareness is enabled.
AvailabilityZoneCount (integer) –
An integer value to indicate the number of availability zones for a domain when zone awareness is enabled. This should be equal to number of subnets if VPC endpoints is enabled
DedicatedMasterType (string) –
The instance type for a dedicated master node.
DedicatedMasterCount (integer) –
Total number of dedicated master nodes, active and on standby, for the cluster.
WarmEnabled (boolean) –
True to enable warm storage.
WarmType (string) –
The instance type for the Elasticsearch cluster’s warm nodes.
WarmCount (integer) –
The number of warm nodes in the cluster.
ColdStorageOptions (dict) –
Specifies the
ColdStorageOptions
config for Elasticsearch DomainEnabled (boolean) –
Enable cold storage option. Accepted values true or false
EBSOptions (dict) –
The
EBSOptions
for the specified domain. See Configuring EBS-based Storage for more information.EBSEnabled (boolean) –
Specifies whether EBS-based storage is enabled.
VolumeType (string) –
Specifies the volume type for EBS-based storage.
VolumeSize (integer) –
Integer to specify the size of an EBS volume.
Iops (integer) –
Specifies the IOPS for Provisioned IOPS And GP3 EBS volume (SSD).
Throughput (integer) –
Specifies the Throughput for GP3 EBS volume (SSD).
AccessPolicies (string) –
IAM access policy as a JSON-formatted string.
SnapshotOptions (dict) –
Specifies the status of the
SnapshotOptions
AutomatedSnapshotStartHour (integer) –
Specifies the time, in UTC format, when the service takes a daily automated snapshot of the specified Elasticsearch domain. Default value is
0
hours.
VPCOptions (dict) –
The
VPCOptions
for the specified domain. For more information, see VPC Endpoints for Amazon Elasticsearch Service Domains.VPCId (string) –
The VPC Id for the Elasticsearch domain. Exists only if the domain was created with VPCOptions.
SubnetIds (list) –
Specifies the subnets for VPC endpoint.
(string) –
AvailabilityZones (list) –
The availability zones for the Elasticsearch domain. Exists only if the domain was created with VPCOptions.
(string) –
SecurityGroupIds (list) –
Specifies the security groups for VPC endpoint.
(string) –
CognitoOptions (dict) –
The
CognitoOptions
for the specified domain. For more information, see Amazon Cognito Authentication for Kibana.Enabled (boolean) –
Specifies the option to enable Cognito for Kibana authentication.
UserPoolId (string) –
Specifies the Cognito user pool ID for Kibana authentication.
IdentityPoolId (string) –
Specifies the Cognito identity pool ID for Kibana authentication.
RoleArn (string) –
Specifies the role ARN that provides Elasticsearch permissions for accessing Cognito resources.
EncryptionAtRestOptions (dict) –
Specifies the status of the
EncryptionAtRestOptions
.Enabled (boolean) –
Specifies the option to enable Encryption At Rest.
KmsKeyId (string) –
Specifies the KMS Key ID for Encryption At Rest options.
NodeToNodeEncryptionOptions (dict) –
Specifies the status of the
NodeToNodeEncryptionOptions
.Enabled (boolean) –
Specify true to enable node-to-node encryption.
AdvancedOptions (dict) –
Specifies the status of the
AdvancedOptions
(string) –
(string) –
LogPublishingOptions (dict) –
Log publishing options for the given domain.
(string) –
Type of Log File, it can be one of the following:
INDEX_SLOW_LOGS: Index slow logs contain insert requests that took more time than configured index query log threshold to execute.
SEARCH_SLOW_LOGS: Search slow logs contain search queries that took more time than configured search query log threshold to execute.
ES_APPLICATION_LOGS: Elasticsearch application logs contain information about errors and warnings raised during the operation of the service and can be useful for troubleshooting.
AUDIT_LOGS: Audit logs contain records of user requests for access from the domain.
(dict) –
Log Publishing option that is set for given domain. Attributes and their details:
CloudWatchLogsLogGroupArn: ARN of the Cloudwatch log group to which log needs to be published.
Enabled: Whether the log publishing for given log type is enabled or not
CloudWatchLogsLogGroupArn (string) –
ARN of the Cloudwatch log group to which log needs to be published.
Enabled (boolean) –
Specifies whether given log publishing option is enabled or not.
ServiceSoftwareOptions (dict) –
The current status of the Elasticsearch domain’s service software.
CurrentVersion (string) –
The current service software version that is present on the domain.
NewVersion (string) –
The new service software version if one is available.
UpdateAvailable (boolean) –
True
if you are able to update you service software version.False
if you are not able to update your service software version.Cancellable (boolean) –
True
if you are able to cancel your service software version update.False
if you are not able to cancel your service software version.UpdateStatus (string) –
The status of your service software update. This field can take the following values:
ELIGIBLE
,PENDING_UPDATE
,IN_PROGRESS
,COMPLETED
, andNOT_ELIGIBLE
.Description (string) –
The description of the
UpdateStatus
.AutomatedUpdateDate (datetime) –
Timestamp, in Epoch time, until which you can manually request a service software update. After this date, we automatically update your service software.
OptionalDeployment (boolean) –
True
if a service software is never automatically updated.False
if a service software is automatically updated afterAutomatedUpdateDate
.
DomainEndpointOptions (dict) –
The current status of the Elasticsearch domain’s endpoint options.
EnforceHTTPS (boolean) –
Specify if only HTTPS endpoint should be enabled for the Elasticsearch domain.
TLSSecurityPolicy (string) –
Specify the TLS security policy that needs to be applied to the HTTPS endpoint of Elasticsearch domain. It can be one of the following values:
Policy-Min-TLS-1-0-2019-07: TLS security policy that supports TLS version 1.0 to TLS version 1.2
Policy-Min-TLS-1-2-2019-07: TLS security policy that supports only TLS version 1.2
Policy-Min-TLS-1-2-PFS-2023-10: TLS security policy that supports TLS version 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites
CustomEndpointEnabled (boolean) –
Specify if custom endpoint should be enabled for the Elasticsearch domain.
CustomEndpoint (string) –
Specify the fully qualified domain for your custom endpoint.
CustomEndpointCertificateArn (string) –
Specify ACM certificate ARN for your custom endpoint.
AdvancedSecurityOptions (dict) –
The current status of the Elasticsearch domain’s advanced security options.
Enabled (boolean) –
True if advanced security is enabled.
InternalUserDatabaseEnabled (boolean) –
True if the internal user database is enabled.
SAMLOptions (dict) –
Describes the SAML application configured for a domain.
Enabled (boolean) –
True if SAML is enabled.
Idp (dict) –
Describes the SAML Identity Provider’s information.
MetadataContent (string) –
The Metadata of the SAML application in xml format.
EntityId (string) –
The unique Entity ID of the application in SAML Identity Provider.
SubjectKey (string) –
The key used for matching the SAML Subject attribute.
RolesKey (string) –
The key used for matching the SAML Roles attribute.
SessionTimeoutMinutes (integer) –
The duration, in minutes, after which a user session becomes inactive.
AnonymousAuthDisableDate (datetime) –
Specifies the Anonymous Auth Disable Date when Anonymous Auth is enabled.
AnonymousAuthEnabled (boolean) –
True if Anonymous auth is enabled. Anonymous auth can be enabled only when AdvancedSecurity is enabled on existing domains.
AutoTuneOptions (dict) –
The current status of the Elasticsearch domain’s Auto-Tune options.
State (string) –
Specifies the
AutoTuneState
for the Elasticsearch domain.ErrorMessage (string) –
Specifies the error message while enabling or disabling the Auto-Tune.
ChangeProgressDetails (dict) –
Specifies change details of the domain configuration change.
ChangeId (string) –
The unique change identifier associated with a specific domain configuration change.
Message (string) –
Contains an optional message associated with the domain configuration change.
ConfigChangeStatus (string) –
The current status of the configuration change.
StartTime (datetime) –
The time that the configuration change was initiated, in Universal Coordinated Time (UTC).
LastUpdatedTime (datetime) –
The last time that the configuration change was updated.
InitiatedBy (string) –
The IAM principal who initiated the configuration change.
DomainProcessingStatus (string) –
The status of any changes that are currently in progress for the domain.
ModifyingProperties (list) –
Information about the domain properties that are currently being modified.
(dict) –
Information about the domain properties that are currently being modified.
Name (string) –
The name of the property that is currently being modified.
ActiveValue (string) –
The current value of the domain property that is being modified.
PendingValue (string) –
The value that the property that is currently being modified will eventually have.
ValueType (string) –
The type of value that is currently being modified. Properties can have two types:
PLAIN_TEXT: Contain direct values such as “1”, “True”, or “c5.large.search”.
STRINGIFIED_JSON: Contain content in JSON format, such as {“Enabled”:”True”}”.
Exceptions
ElasticsearchService.Client.exceptions.BaseException
ElasticsearchService.Client.exceptions.DisabledOperationException
ElasticsearchService.Client.exceptions.InternalException
ElasticsearchService.Client.exceptions.InvalidTypeException
ElasticsearchService.Client.exceptions.LimitExceededException
ElasticsearchService.Client.exceptions.ResourceAlreadyExistsException
ElasticsearchService.Client.exceptions.ValidationException