Amazon Elasticsearch Service

2021/01/27 - Amazon Elasticsearch Service - 1 updated api methods

Changes  Amazon Elasticsearch Service adds support for node-to-node encryption and encryption at rest for existing domains running Elasticsearch version 6.7 and above

UpdateElasticsearchDomainConfig (updated) Link ΒΆ
Changes (request)
{'EncryptionAtRestOptions': {'Enabled': 'boolean', 'KmsKeyId': 'string'},
 'NodeToNodeEncryptionOptions': {'Enabled': 'boolean'}}

Modifies the cluster configuration of the specified Elasticsearch domain, setting as setting the instance type and the number of instances.

See also: AWS API Documentation

Request Syntax

client.update_elasticsearch_domain_config(
    DomainName='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
    },
    EBSOptions={
        'EBSEnabled': True|False,
        'VolumeType': 'standard'|'gp2'|'io1',
        'VolumeSize': 123,
        'Iops': 123
    },
    SnapshotOptions={
        'AutomatedSnapshotStartHour': 123
    },
    VPCOptions={
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ]
    },
    CognitoOptions={
        'Enabled': True|False,
        'UserPoolId': 'string',
        'IdentityPoolId': 'string',
        'RoleArn': 'string'
    },
    AdvancedOptions={
        'string': 'string'
    },
    AccessPolicies='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',
        '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
        }
    },
    NodeToNodeEncryptionOptions={
        'Enabled': True|False
    },
    EncryptionAtRestOptions={
        'Enabled': True|False,
        'KmsKeyId': 'string'
    }
)
type DomainName

string

param DomainName

[REQUIRED]

The name of the Elasticsearch domain that you are updating.

type ElasticsearchClusterConfig

dict

param ElasticsearchClusterConfig

The type and number of instances to instantiate for 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.

type EBSOptions

dict

param EBSOptions

Specify the type and size of the EBS volume that you want to use.

  • 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 IOPD for a Provisioned IOPS EBS volume (SSD).

type SnapshotOptions

dict

param SnapshotOptions

Option to set the time, in UTC format, for 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.

type VPCOptions

dict

param VPCOptions

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) --

type CognitoOptions

dict

param CognitoOptions

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.

type AdvancedOptions

dict

param AdvancedOptions

Modifies the advanced 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 is true . See Configuration Advanced Options for more information.

  • (string) --

    • (string) --

type AccessPolicies

string

param AccessPolicies

IAM access policy as a JSON-formatted string.

type LogPublishingOptions

dict

param LogPublishingOptions

Map of LogType and LogPublishingOption , 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.

type DomainEndpointOptions

dict

param DomainEndpointOptions

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 which supports TLSv1.0 and higher.

    • Policy-Min-TLS-1-2-2019-07: TLS security policy which supports only TLSv1.2

  • 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.

type AdvancedSecurityOptions

dict

param AdvancedSecurityOptions

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.

type NodeToNodeEncryptionOptions

dict

param NodeToNodeEncryptionOptions

Specifies the NodeToNodeEncryptionOptions.

  • Enabled (boolean) --

    Specify true to enable node-to-node encryption.

type EncryptionAtRestOptions

dict

param EncryptionAtRestOptions

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.

rtype

dict

returns

Response Syntax

{
    'DomainConfig': {
        'ElasticsearchVersion': {
            'Options': 'string',
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'ElasticsearchClusterConfig': {
            'Options': {
                '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
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'EBSOptions': {
            'Options': {
                'EBSEnabled': True|False,
                'VolumeType': 'standard'|'gp2'|'io1',
                'VolumeSize': 123,
                'Iops': 123
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'AccessPolicies': {
            'Options': 'string',
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'SnapshotOptions': {
            'Options': {
                'AutomatedSnapshotStartHour': 123
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'VPCOptions': {
            'Options': {
                'VPCId': 'string',
                'SubnetIds': [
                    'string',
                ],
                'AvailabilityZones': [
                    'string',
                ],
                'SecurityGroupIds': [
                    'string',
                ]
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'CognitoOptions': {
            'Options': {
                'Enabled': True|False,
                'UserPoolId': 'string',
                'IdentityPoolId': 'string',
                'RoleArn': 'string'
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'EncryptionAtRestOptions': {
            'Options': {
                'Enabled': True|False,
                'KmsKeyId': 'string'
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'NodeToNodeEncryptionOptions': {
            'Options': {
                'Enabled': True|False
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'AdvancedOptions': {
            'Options': {
                'string': 'string'
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'LogPublishingOptions': {
            'Options': {
                'string': {
                    'CloudWatchLogsLogGroupArn': 'string',
                    'Enabled': True|False
                }
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'DomainEndpointOptions': {
            'Options': {
                'EnforceHTTPS': True|False,
                'TLSSecurityPolicy': 'Policy-Min-TLS-1-0-2019-07'|'Policy-Min-TLS-1-2-2019-07',
                'CustomEndpointEnabled': True|False,
                'CustomEndpoint': 'string',
                'CustomEndpointCertificateArn': 'string'
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'AdvancedSecurityOptions': {
            'Options': {
                'Enabled': True|False,
                'InternalUserDatabaseEnabled': True|False,
                'SAMLOptions': {
                    'Enabled': True|False,
                    'Idp': {
                        'MetadataContent': 'string',
                        'EntityId': 'string'
                    },
                    'SubjectKey': 'string',
                    'RolesKey': 'string',
                    'SessionTimeoutMinutes': 123
                }
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        }
    }
}

Response Structure

  • (dict) --

    The result of an UpdateElasticsearchDomain request. Contains the status of the Elasticsearch domain being updated.

    • DomainConfig (dict) --

      The status of the updated Elasticsearch domain.

      • ElasticsearchVersion (dict) --

        String of format X.Y to specify version for the Elasticsearch domain.

        • Options (string) --

          Specifies the Elasticsearch version for the specified Elasticsearch domain.

        • Status (dict) --

          Specifies the status of the Elasticsearch version options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • ElasticsearchClusterConfig (dict) --

        Specifies the ElasticsearchClusterConfig for the Elasticsearch domain.

        • Options (dict) --

          Specifies the cluster configuration for the specified Elasticsearch domain.

          • 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.

        • Status (dict) --

          Specifies the status of the configuration for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • EBSOptions (dict) --

        Specifies the EBSOptions for the Elasticsearch domain.

        • Options (dict) --

          Specifies the EBS options for the specified Elasticsearch domain.

          • 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 IOPD for a Provisioned IOPS EBS volume (SSD).

        • Status (dict) --

          Specifies the status of the EBS options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • AccessPolicies (dict) --

        IAM access policy as a JSON-formatted string.

        • Options (string) --

          The access policy configured for the Elasticsearch domain. Access policies may be resource-based, IP-based, or IAM-based. See Configuring Access Policies for more information.

        • Status (dict) --

          The status of the access policy for the Elasticsearch domain. See OptionStatus for the status information that's included.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • SnapshotOptions (dict) --

        Specifies the SnapshotOptions for the Elasticsearch domain.

        • Options (dict) --

          Specifies the daily snapshot options specified for the Elasticsearch domain.

          • 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.

        • Status (dict) --

          Specifies the status of a daily automated snapshot.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • VPCOptions (dict) --

        The VPCOptions for the specified domain. For more information, see VPC Endpoints for Amazon Elasticsearch Service Domains .

        • Options (dict) --

          Specifies the VPC options for the specified Elasticsearch domain.

          • 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) --

        • Status (dict) --

          Specifies the status of the VPC options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • CognitoOptions (dict) --

        The CognitoOptions for the specified domain. For more information, see Amazon Cognito Authentication for Kibana .

        • Options (dict) --

          Specifies the Cognito options for the specified Elasticsearch domain.

          • 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.

        • Status (dict) --

          Specifies the status of the Cognito options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • EncryptionAtRestOptions (dict) --

        Specifies the EncryptionAtRestOptions for the Elasticsearch domain.

        • Options (dict) --

          Specifies the Encryption At Rest options for the specified Elasticsearch domain.

          • Enabled (boolean) --

            Specifies the option to enable Encryption At Rest.

          • KmsKeyId (string) --

            Specifies the KMS Key ID for Encryption At Rest options.

        • Status (dict) --

          Specifies the status of the Encryption At Rest options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • NodeToNodeEncryptionOptions (dict) --

        Specifies the NodeToNodeEncryptionOptions for the Elasticsearch domain.

        • Options (dict) --

          Specifies the node-to-node encryption options for the specified Elasticsearch domain.

          • Enabled (boolean) --

            Specify true to enable node-to-node encryption.

        • Status (dict) --

          Specifies the status of the node-to-node encryption options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • AdvancedOptions (dict) --

        Specifies the AdvancedOptions for the domain. See Configuring Advanced Options for more information.

        • Options (dict) --

          Specifies the status of advanced options for the specified Elasticsearch domain.

          • (string) --

            • (string) --

        • Status (dict) --

          Specifies the status of OptionStatus for advanced options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • LogPublishingOptions (dict) --

        Log publishing options for the given domain.

        • Options (dict) --

          The log publishing options configured for the Elasticsearch 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.

        • Status (dict) --

          The status of the log publishing options for the Elasticsearch domain. See OptionStatus for the status information that's included.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • DomainEndpointOptions (dict) --

        Specifies the DomainEndpointOptions for the Elasticsearch domain.

        • Options (dict) --

          Options to configure endpoint for the Elasticsearch domain.

          • 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 which supports TLSv1.0 and higher.

            • Policy-Min-TLS-1-2-2019-07: TLS security policy which supports only TLSv1.2

          • 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.

        • Status (dict) --

          The status of the endpoint options for the Elasticsearch domain. See OptionStatus for the status information that's included.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.

      • AdvancedSecurityOptions (dict) --

        Specifies AdvancedSecurityOptions for the domain.

        • Options (dict) --

          Specifies advanced security options for the specified Elasticsearch domain.

          • 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.

        • Status (dict) --

          Status of the advanced security options for the specified Elasticsearch domain.

          • CreationDate (datetime) --

            Timestamp which tells the creation date for the entity.

          • UpdateDate (datetime) --

            Timestamp which tells the last updated time for the entity.

          • UpdateVersion (integer) --

            Specifies the latest version for the entity.

          • State (string) --

            Provides the OptionState for the Elasticsearch domain.

          • PendingDeletion (boolean) --

            Indicates whether the Elasticsearch domain is being deleted.