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
,
"JWTOptions": {
"Enabled": boolean
,
"PublicKey": "string
",
"RolesKey": "string
",
"SubjectKey": "string
"
},
"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
"
}
},
"AIMLOptions": {
"NaturalLanguageQueryGenerationOptions": {
"DesiredState": "string
"
}
},
"AutoTuneOptions": {
"DesiredState": "string
",
"MaintenanceSchedules": [
{
"CronExpressionForRecurrence": "string
",
"Duration": {
"Unit": "string
",
"Value": number
},
"StartAt": number
}
],
"RollbackOnDisable": "string
",
"UseOffPeakWindow": boolean
},
"ClusterConfig": {
"ColdStorageOptions": {
"Enabled": boolean
},
"DedicatedMasterCount": number
,
"DedicatedMasterEnabled": boolean
,
"DedicatedMasterType": "string
",
"InstanceCount": number
,
"InstanceType": "string
",
"MultiAZWithStandbyEnabled": boolean
,
"NodeOptions": [
{
"NodeConfig": {
"Count": number
,
"Enabled": boolean
,
"Type": "string
"
},
"NodeType": "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
,
"DryRunMode": "string
",
"EBSOptions": {
"EBSEnabled": boolean
,
"Iops": number
,
"Throughput": number
,
"VolumeSize": number
,
"VolumeType": "string
"
},
"EncryptionAtRestOptions": {
"Enabled": boolean
,
"KmsKeyId": "string
"
},
"IdentityCenterOptions": {
"EnabledAPIAccess": boolean
,
"IdentityCenterInstanceARN": "string
",
"RolesKey": "string
",
"SubjectKey": "string
"
},
"IPAddressType": "string
",
"LogPublishingOptions": {
"string
" : {
"CloudWatchLogsLogGroupArn": "string
",
"Enabled": boolean
}
},
"NodeToNodeEncryptionOptions": {
"Enabled": boolean
},
"OffPeakWindowOptions": {
"Enabled": boolean
,
"OffPeakWindow": {
"WindowStartTime": {
"Hours": number
,
"Minutes": number
}
}
},
"SnapshotOptions": {
"AutomatedSnapshotStartHour": number
},
"SoftwareUpdateOptions": {
"AutoSoftwareUpdateEnabled": boolean
},
"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 aTooManyClauses
error.
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
- AIMLOptions
-
Options for all machine learning features for the specified domain.
Type: AIMLOptionsInput 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 a dry run analysis without actually applying the change. A dry run determines what type of deployment the update will cause.Type: Boolean
Required: No
- DryRunMode
-
The type of dry run to perform.
-
Basic
only returns the type of deployment (blue/green or dynamic) that the update will cause. -
Verbose
runs an additional check to validate the changes you're making. For more information, see Validating a domain update.
Type: String
Valid Values:
Basic | Verbose
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
- IdentityCenterOptions
-
Container for IAM Identity Center Options settings.
Type: IdentityCenterOptionsInput object
Required: No
- IPAddressType
-
Specify either dual stack or IPv4 as your IP address type. Dual stack allows you to share domain resources across IPv4 and IPv6 address types, and is the recommended option. If your IP address type is currently set to dual stack, you can't change it.
Type: String
Valid Values:
ipv4 | dualstack
Required: No
- LogPublishingOptions
-
Options to publish OpenSearch logs 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
- OffPeakWindowOptions
-
Off-peak window options for the domain.
Type: OffPeakWindowOptions 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
- SoftwareUpdateOptions
-
Service software update options for the domain.
Type: SoftwareUpdateOptions 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,
"JWTOptions": {
"Enabled": boolean,
"PublicKey": "string",
"RolesKey": "string",
"SubjectKey": "string"
},
"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
}
},
"AIMLOptions": {
"Options": {
"NaturalLanguageQueryGenerationOptions": {
"CurrentState": "string",
"DesiredState": "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",
"UseOffPeakWindow": boolean
},
"Status": {
"CreationDate": number,
"ErrorMessage": "string",
"PendingDeletion": boolean,
"State": "string",
"UpdateDate": number,
"UpdateVersion": number
}
},
"ChangeProgressDetails": {
"ChangeId": "string",
"ConfigChangeStatus": "string",
"InitiatedBy": "string",
"LastUpdatedTime": number,
"Message": "string",
"StartTime": number
},
"ClusterConfig": {
"Options": {
"ColdStorageOptions": {
"Enabled": boolean
},
"DedicatedMasterCount": number,
"DedicatedMasterEnabled": boolean,
"DedicatedMasterType": "string",
"InstanceCount": number,
"InstanceType": "string",
"MultiAZWithStandbyEnabled": boolean,
"NodeOptions": [
{
"NodeConfig": {
"Count": number,
"Enabled": boolean,
"Type": "string"
},
"NodeType": "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
}
},
"IdentityCenterOptions": {
"Options": {
"EnabledAPIAccess": boolean,
"IdentityCenterApplicationARN": "string",
"IdentityCenterInstanceARN": "string",
"IdentityStoreId": "string",
"RolesKey": "string",
"SubjectKey": "string"
},
"Status": {
"CreationDate": number,
"PendingDeletion": boolean,
"State": "string",
"UpdateDate": number,
"UpdateVersion": number
}
},
"IPAddressType": {
"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
}
},
"ModifyingProperties": [
{
"ActiveValue": "string",
"Name": "string",
"PendingValue": "string",
"ValueType": "string"
}
],
"NodeToNodeEncryptionOptions": {
"Options": {
"Enabled": boolean
},
"Status": {
"CreationDate": number,
"PendingDeletion": boolean,
"State": "string",
"UpdateDate": number,
"UpdateVersion": number
}
},
"OffPeakWindowOptions": {
"Options": {
"Enabled": boolean,
"OffPeakWindow": {
"WindowStartTime": {
"Hours": number,
"Minutes": number
}
}
},
"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
}
},
"SoftwareUpdateOptions": {
"Options": {
"AutoSoftwareUpdateEnabled": boolean
},
"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
}
}
},
"DryRunProgressStatus": {
"CreationDate": "string",
"DryRunId": "string",
"DryRunStatus": "string",
"UpdateDate": "string",
"ValidationFailures": [
{
"Code": "string",
"Message": "string"
}
]
},
"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
- DryRunProgressStatus
-
The status of the dry run being performed on the domain, if any.
Type: DryRunProgressStatus object
- DryRunResults
-
Results of the dry run performed in the 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
-
Request processing failed because of an unknown error, exception, or internal failure.
HTTP Status Code: 500
- InvalidTypeException
-
An exception for trying to create or access a sub-resource that's either invalid or not supported.
HTTP Status Code: 409
- LimitExceededException
-
An exception for trying to create more than the allowed number of resources or sub-resources.
HTTP Status Code: 409
- ResourceNotFoundException
-
An exception for accessing or deleting a resource that doesn't exist.
HTTP Status Code: 409
- ValidationException
-
An exception for accessing or deleting a resource that doesn't exist.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: