ElasticsearchService / Client / update_elasticsearch_domain_config

update_elasticsearch_domain_config#

ElasticsearchService.Client.update_elasticsearch_domain_config(**kwargs)#

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

response = 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,
        'ColdStorageOptions': {
            'Enabled': True|False
        }
    },
    EBSOptions={
        'EBSEnabled': True|False,
        'VolumeType': 'standard'|'gp2'|'io1'|'gp3',
        'VolumeSize': 123,
        'Iops': 123,
        'Throughput': 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'|'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
    },
    NodeToNodeEncryptionOptions={
        'Enabled': True|False
    },
    EncryptionAtRestOptions={
        'Enabled': True|False,
        'KmsKeyId': 'string'
    },
    AutoTuneOptions={
        'DesiredState': 'ENABLED'|'DISABLED',
        'RollbackOnDisable': 'NO_ROLLBACK'|'DEFAULT_ROLLBACK',
        'MaintenanceSchedules': [
            {
                'StartAt': datetime(2015, 1, 1),
                'Duration': {
                    'Value': 123,
                    'Unit': 'HOURS'
                },
                'CronExpressionForRecurrence': 'string'
            },
        ]
    },
    DryRun=True|False
)
Parameters:
  • DomainName (string) –

    [REQUIRED]

    The name of the Elasticsearch domain that you are updating.

  • ElasticsearchClusterConfig (dict) –

    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.

    • ColdStorageOptions (dict) –

      Specifies the ColdStorageOptions config for Elasticsearch Domain

      • Enabled (boolean) – [REQUIRED]

        Enable cold storage option. Accepted values true or false

  • EBSOptions (dict) –

    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 IOPS for Provisioned IOPS And GP3 EBS volume (SSD).

    • Throughput (integer) –

      Specifies the Throughput for GP3 EBS volume (SSD).

  • SnapshotOptions (dict) –

    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.

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

  • AdvancedOptions (dict) –

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

  • AccessPolicies (string) – IAM access policy as a JSON-formatted string.

  • LogPublishingOptions (dict) –

    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.

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

  • NodeToNodeEncryptionOptions (dict) –

    Specifies the NodeToNodeEncryptionOptions.

    • Enabled (boolean) –

      Specify true to enable node-to-node encryption.

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

  • AutoTuneOptions (dict) –

    Specifies Auto-Tune options.

    • DesiredState (string) –

      Specifies the Auto-Tune desired state. Valid values are ENABLED, DISABLED.

    • RollbackOnDisable (string) –

      Specifies the rollback state while disabling Auto-Tune for the domain. Valid values are NO_ROLLBACK, DEFAULT_ROLLBACK.

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

  • DryRun (boolean) – This flag, when set to True, specifies whether the UpdateElasticsearchDomain request should return the results of validation checks without actually applying the change. This flag, when set to True, specifies the deployment mechanism through which the update shall be applied on the domain. This will not actually perform the Update.

Return type:

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,
                'ColdStorageOptions': {
                    'Enabled': True|False
                }
            },
            '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'|'gp3',
                'VolumeSize': 123,
                'Iops': 123,
                'Throughput': 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'|'Policy-Min-TLS-1-2-PFS-2023-10',
                '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
                },
                'AnonymousAuthDisableDate': datetime(2015, 1, 1),
                'AnonymousAuthEnabled': True|False
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                'State': 'RequiresIndexDocuments'|'Processing'|'Active',
                'PendingDeletion': True|False
            }
        },
        'AutoTuneOptions': {
            'Options': {
                'DesiredState': 'ENABLED'|'DISABLED',
                'RollbackOnDisable': 'NO_ROLLBACK'|'DEFAULT_ROLLBACK',
                'MaintenanceSchedules': [
                    {
                        'StartAt': datetime(2015, 1, 1),
                        'Duration': {
                            'Value': 123,
                            'Unit': 'HOURS'
                        },
                        'CronExpressionForRecurrence': 'string'
                    },
                ]
            },
            'Status': {
                'CreationDate': datetime(2015, 1, 1),
                'UpdateDate': datetime(2015, 1, 1),
                'UpdateVersion': 123,
                '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',
                'PendingDeletion': True|False
            }
        },
        'ChangeProgressDetails': {
            'ChangeId': 'string',
            'Message': 'string'
        }
    },
    'DryRunResults': {
        'DeploymentType': 'string',
        'Message': 'string'
    }
}

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.

          • ColdStorageOptions (dict) –

            Specifies the ColdStorageOptions config for Elasticsearch Domain

            • Enabled (boolean) –

              Enable cold storage option. Accepted values true or false

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

          • Throughput (integer) –

            Specifies the Throughput for GP3 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 <http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-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 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.

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

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

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

      • AutoTuneOptions (dict) –

        Specifies AutoTuneOptions for the domain.

        • Options (dict) –

          Specifies Auto-Tune options for the specified Elasticsearch domain.

          • DesiredState (string) –

            Specifies the Auto-Tune desired state. Valid values are ENABLED, DISABLED.

          • RollbackOnDisable (string) –

            Specifies the rollback state while disabling Auto-Tune for the domain. Valid values are NO_ROLLBACK, DEFAULT_ROLLBACK.

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

        • Status (dict) –

          Specifies Status of the Auto-Tune options for the specified Elasticsearch domain.

          • CreationDate (datetime) –

            Timestamp which tells Auto-Tune options creation date .

          • UpdateDate (datetime) –

            Timestamp which tells Auto-Tune options last updated time.

          • UpdateVersion (integer) –

            Specifies the Auto-Tune options latest version.

          • State (string) –

            Specifies the AutoTuneState for the Elasticsearch domain.

          • ErrorMessage (string) –

            Specifies the error message while enabling or disabling the Auto-Tune options.

          • PendingDeletion (boolean) –

            Indicates whether the Elasticsearch domain is being deleted.

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

    • DryRunResults (dict) –

      Contains result of DryRun.

      • DeploymentType (string) –

        Specifies the deployment mechanism through which the update shall be applied on the domain. Possible responses are Blue/Green (The update will require a blue/green deployment.) DynamicUpdate (The update can be applied in-place without a Blue/Green deployment required.) Undetermined (The domain is undergoing an update which needs to complete before the deployment type can be predicted.) None (The configuration change matches the current configuration and will not result in any update.)

      • Message (string) –

        Contains an optional message associated with the DryRunResults.

Exceptions

  • ElasticsearchService.Client.exceptions.BaseException

  • ElasticsearchService.Client.exceptions.InternalException

  • ElasticsearchService.Client.exceptions.InvalidTypeException

  • ElasticsearchService.Client.exceptions.LimitExceededException

  • ElasticsearchService.Client.exceptions.ResourceNotFoundException

  • ElasticsearchService.Client.exceptions.ValidationException