UpdateDomainConfig - Amazon OpenSearch Service

UpdateDomainConfig

Modifies the cluster configuration of the specified Amazon OpenSearch Service domain.

Request Syntax

POST /2021-01-01/opensearch/domain/DomainName/config HTTP/1.1 Content-type: application/json { "AccessPolicies": "string", "AdvancedOptions": { "string" : "string" }, "AdvancedSecurityOptions": { "AnonymousAuthEnabled": boolean, "Enabled": boolean, "InternalUserDatabaseEnabled": boolean, "MasterUserOptions": { "MasterUserARN": "string", "MasterUserName": "string", "MasterUserPassword": "string" }, "SAMLOptions": { "Enabled": boolean, "Idp": { "EntityId": "string", "MetadataContent": "string" }, "MasterBackendRole": "string", "MasterUserName": "string", "RolesKey": "string", "SessionTimeoutMinutes": number, "SubjectKey": "string" } }, "AutoTuneOptions": { "DesiredState": "string", "MaintenanceSchedules": [ { "CronExpressionForRecurrence": "string", "Duration": { "Unit": "string", "Value": number }, "StartAt": number } ], "RollbackOnDisable": "string" }, "ClusterConfig": { "ColdStorageOptions": { "Enabled": boolean }, "DedicatedMasterCount": number, "DedicatedMasterEnabled": boolean, "DedicatedMasterType": "string", "InstanceCount": number, "InstanceType": "string", "WarmCount": number, "WarmEnabled": boolean, "WarmType": "string", "ZoneAwarenessConfig": { "AvailabilityZoneCount": number }, "ZoneAwarenessEnabled": boolean }, "CognitoOptions": { "Enabled": boolean, "IdentityPoolId": "string", "RoleArn": "string", "UserPoolId": "string" }, "DomainEndpointOptions": { "CustomEndpoint": "string", "CustomEndpointCertificateArn": "string", "CustomEndpointEnabled": boolean, "EnforceHTTPS": boolean, "TLSSecurityPolicy": "string" }, "DryRun": boolean, "EBSOptions": { "EBSEnabled": boolean, "Iops": number, "Throughput": number, "VolumeSize": number, "VolumeType": "string" }, "EncryptionAtRestOptions": { "Enabled": boolean, "KmsKeyId": "string" }, "LogPublishingOptions": { "string" : { "CloudWatchLogsLogGroupArn": "string", "Enabled": boolean } }, "NodeToNodeEncryptionOptions": { "Enabled": boolean }, "SnapshotOptions": { "AutomatedSnapshotStartHour": number }, "VPCOptions": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ] } }

URI Request Parameters

The request uses the following URI parameters.

DomainName

The name of the domain that you're updating.

Length Constraints: Minimum length of 3. Maximum length of 28.

Pattern: [a-z][a-z0-9\-]+

Required: Yes

Request Body

The request accepts the following data in JSON format.

AccessPolicies

Identity and Access Management (IAM) access policy as a JSON-formatted string.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 102400.

Pattern: .*

Required: No

AdvancedOptions

Key-value pairs to specify advanced configuration options. The following key-value pairs are supported:

  • "rest.action.multi.allow_explicit_index": "true" | "false" - Note the use of a string rather than a boolean. Specifies whether explicit references to indexes are allowed inside the body of HTTP requests. If you want to configure access policies for domain sub-resources, such as specific indexes and domain APIs, you must disable this property. Default is true.

  • "indices.fielddata.cache.size": "80" - Note the use of a string rather than a boolean. Specifies the percentage of heap space allocated to field data. Default is unbounded.

  • "indices.query.bool.max_clause_count": "1024" - Note the use of a string rather than a boolean. Specifies the maximum number of clauses allowed in a Lucene boolean query. Default is 1,024. Queries with more than the permitted number of clauses result in a TooManyClauses error.

  • "override_main_response_version": "true" | "false" - Note the use of a string rather than a boolean. Specifies whether the domain reports its version as 7.10 to allow Elasticsearch OSS clients and plugins to continue working with it. Default is false when creating a domain and true when upgrading a domain.

For more information, see Advanced cluster parameters.

Type: String to string map

Required: No

AdvancedSecurityOptions

Options for fine-grained access control.

Type: AdvancedSecurityOptionsInput object

Required: No

AutoTuneOptions

Options for Auto-Tune.

Type: AutoTuneOptions object

Required: No

ClusterConfig

Changes that you want to make to the cluster configuration, such as the instance type and number of EC2 instances.

Type: ClusterConfig object

Required: No

CognitoOptions

Key-value pairs to configure Amazon Cognito authentication for OpenSearch Dashboards.

Type: CognitoOptions object

Required: No

DomainEndpointOptions

Additional options for the domain endpoint, such as whether to require HTTPS for all traffic.

Type: DomainEndpointOptions object

Required: No

DryRun

This flag, when set to True, specifies whether the UpdateDomain request should return the results of validation check without actually applying the change.

Type: Boolean

Required: No

EBSOptions

The type and size of the EBS volume to attach to instances in the domain.

Type: EBSOptions object

Required: No

EncryptionAtRestOptions

Encryption at rest options for the domain.

Type: EncryptionAtRestOptions object

Required: No

LogPublishingOptions

Options to publish OpenSearch lots to Amazon CloudWatch Logs.

Type: String to LogPublishingOption object map

Valid Keys: INDEX_SLOW_LOGS | SEARCH_SLOW_LOGS | ES_APPLICATION_LOGS | AUDIT_LOGS

Required: No

NodeToNodeEncryptionOptions

Node-To-Node Encryption options for the domain.

Type: NodeToNodeEncryptionOptions object

Required: No

SnapshotOptions

Option to set the time, in UTC format, for the daily automated snapshot. Default value is 0 hours.

Type: SnapshotOptions object

Required: No

VPCOptions

Options to specify the subnets and security groups for a VPC endpoint. For more information, see Launching your Amazon OpenSearch Service domains using a VPC.

Type: VPCOptions object

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "DomainConfig": { "AccessPolicies": { "Options": "string", "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "AdvancedOptions": { "Options": { "string" : "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "AdvancedSecurityOptions": { "Options": { "AnonymousAuthDisableDate": number, "AnonymousAuthEnabled": boolean, "Enabled": boolean, "InternalUserDatabaseEnabled": boolean, "SAMLOptions": { "Enabled": boolean, "Idp": { "EntityId": "string", "MetadataContent": "string" }, "RolesKey": "string", "SessionTimeoutMinutes": number, "SubjectKey": "string" } }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "AutoTuneOptions": { "Options": { "DesiredState": "string", "MaintenanceSchedules": [ { "CronExpressionForRecurrence": "string", "Duration": { "Unit": "string", "Value": number }, "StartAt": number } ], "RollbackOnDisable": "string" }, "Status": { "CreationDate": number, "ErrorMessage": "string", "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "ChangeProgressDetails": { "ChangeId": "string", "Message": "string" }, "ClusterConfig": { "Options": { "ColdStorageOptions": { "Enabled": boolean }, "DedicatedMasterCount": number, "DedicatedMasterEnabled": boolean, "DedicatedMasterType": "string", "InstanceCount": number, "InstanceType": "string", "WarmCount": number, "WarmEnabled": boolean, "WarmType": "string", "ZoneAwarenessConfig": { "AvailabilityZoneCount": number }, "ZoneAwarenessEnabled": boolean }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "CognitoOptions": { "Options": { "Enabled": boolean, "IdentityPoolId": "string", "RoleArn": "string", "UserPoolId": "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "DomainEndpointOptions": { "Options": { "CustomEndpoint": "string", "CustomEndpointCertificateArn": "string", "CustomEndpointEnabled": boolean, "EnforceHTTPS": boolean, "TLSSecurityPolicy": "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "EBSOptions": { "Options": { "EBSEnabled": boolean, "Iops": number, "Throughput": number, "VolumeSize": number, "VolumeType": "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "EncryptionAtRestOptions": { "Options": { "Enabled": boolean, "KmsKeyId": "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "EngineVersion": { "Options": "string", "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "LogPublishingOptions": { "Options": { "string" : { "CloudWatchLogsLogGroupArn": "string", "Enabled": boolean } }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "NodeToNodeEncryptionOptions": { "Options": { "Enabled": boolean }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "SnapshotOptions": { "Options": { "AutomatedSnapshotStartHour": number }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } }, "VPCOptions": { "Options": { "AvailabilityZones": [ "string" ], "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ], "VPCId": "string" }, "Status": { "CreationDate": number, "PendingDeletion": boolean, "State": "string", "UpdateDate": number, "UpdateVersion": number } } }, "DryRunResults": { "DeploymentType": "string", "Message": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

DomainConfig

The status of the updated domain.

Type: DomainConfig object

DryRunResults

Results of a dry run performed in an update domain request.

Type: DryRunResults object

Errors

For information about the errors that are common to all actions, see Common Errors.

BaseException

An error occurred while processing the request.

HTTP Status Code: 400

InternalException

The request processing has failed because of an unknown error, exception or failure (the failure is internal to the service) . Gives http status code of 500.

HTTP Status Code: 500

InvalidTypeException

An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.

HTTP Status Code: 409

LimitExceededException

An exception for trying to create more than allowed resources or sub-resources. Gives http status code of 409.

HTTP Status Code: 409

ResourceNotFoundException

An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.

HTTP Status Code: 409

ValidationException

An exception for missing / invalid input fields. Gives http status code of 400.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: