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
",
"UseOffPeakWindow": boolean
},
"ClusterConfig": {
"ColdStorageOptions": {
"Enabled": boolean
},
"DedicatedMasterCount": number
,
"DedicatedMasterEnabled": boolean
,
"DedicatedMasterType": "string
",
"InstanceCount": number
,
"InstanceType": "string
",
"MultiAZWithStandbyEnabled": boolean
,
"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
"
},
"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
- 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
- IPAddressType
-
The type of IP addresses supported by the endpoint for the domain.
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,
"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",
"UseOffPeakWindow": boolean
},
"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",
"MultiAZWithStandbyEnabled": boolean,
"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
}
},
"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
}
},
"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: