UpdateCluster - Amazon MemoryDB

UpdateCluster

Modifies the settings for a cluster. You can use this operation to change one or more cluster configuration settings by specifying the settings and the new values.

Request Syntax

{ "ACLName": "string", "ClusterName": "string", "Description": "string", "Engine": "string", "EngineVersion": "string", "MaintenanceWindow": "string", "NodeType": "string", "ParameterGroupName": "string", "ReplicaConfiguration": { "ReplicaCount": number }, "SecurityGroupIds": [ "string" ], "ShardConfiguration": { "ShardCount": number }, "SnapshotRetentionLimit": number, "SnapshotWindow": "string", "SnsTopicArn": "string", "SnsTopicStatus": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

ACLName

The Access Control List that is associated with the cluster

Type: String

Length Constraints: Minimum length of 1.

Pattern: [a-zA-Z][a-zA-Z0-9\-]*

Required: No

ClusterName

The name of the cluster to update

Type: String

Required: Yes

Description

The description of the cluster to update

Type: String

Required: No

Engine

The name of the engine to be used for the nodes in this cluster. The value must be set to either redis or valkey.

Type: String

Required: No

EngineVersion

The upgraded version of the engine to be run on the nodes. You can upgrade to a newer engine version, but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster and create it anew with the earlier engine version.

Type: String

Required: No

MaintenanceWindow

Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

Valid values for ddd are:

  • sun

  • mon

  • tue

  • wed

  • thu

  • fri

  • sat

Example: sun:23:00-mon:01:30

Type: String

Required: No

NodeType

A valid node type that you want to scale this cluster up or down to.

Type: String

Required: No

ParameterGroupName

The name of the parameter group to update

Type: String

Required: No

ReplicaConfiguration

The number of replicas that will reside in each shard

Type: ReplicaConfigurationRequest object

Required: No

SecurityGroupIds

The SecurityGroupIds to update

Type: Array of strings

Required: No

ShardConfiguration

The number of shards in the cluster

Type: ShardConfigurationRequest object

Required: No

SnapshotRetentionLimit

The number of days for which MemoryDB retains automatic cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

Type: Integer

Required: No

SnapshotWindow

The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your cluster.

Type: String

Required: No

SnsTopicArn

The SNS topic ARN to update

Type: String

Required: No

SnsTopicStatus

The status of the Amazon SNS notification topic. Notifications are sent only if the status is active.

Type: String

Required: No

Response Syntax

{ "Cluster": { "ACLName": "string", "ARN": "string", "AutoMinorVersionUpgrade": boolean, "AvailabilityMode": "string", "ClusterEndpoint": { "Address": "string", "Port": number }, "DataTiering": "string", "Description": "string", "Engine": "string", "EnginePatchVersion": "string", "EngineVersion": "string", "KmsKeyId": "string", "MaintenanceWindow": "string", "Name": "string", "NodeType": "string", "NumberOfShards": number, "ParameterGroupName": "string", "ParameterGroupStatus": "string", "PendingUpdates": { "ACLs": { "ACLToApply": "string" }, "Resharding": { "SlotMigration": { "ProgressPercentage": number } }, "ServiceUpdates": [ { "ServiceUpdateName": "string", "Status": "string" } ] }, "SecurityGroups": [ { "SecurityGroupId": "string", "Status": "string" } ], "Shards": [ { "Name": "string", "Nodes": [ { "AvailabilityZone": "string", "CreateTime": number, "Endpoint": { "Address": "string", "Port": number }, "Name": "string", "Status": "string" } ], "NumberOfNodes": number, "Slots": "string", "Status": "string" } ], "SnapshotRetentionLimit": number, "SnapshotWindow": "string", "SnsTopicArn": "string", "SnsTopicStatus": "string", "Status": "string", "SubnetGroupName": "string", "TLSEnabled": boolean } }

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.

Cluster

The updated cluster

Type: Cluster object

Errors

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

ACLNotFoundFault

HTTP Status Code: 400

ClusterNotFoundFault

HTTP Status Code: 400

ClusterQuotaForCustomerExceededFault

HTTP Status Code: 400

InvalidACLStateFault

HTTP Status Code: 400

InvalidClusterStateFault

HTTP Status Code: 400

InvalidKMSKeyFault

HTTP Status Code: 400

InvalidNodeStateFault

HTTP Status Code: 400

InvalidParameterCombinationException

HTTP Status Code: 400

InvalidParameterValueException

HTTP Status Code: 400

InvalidVPCNetworkStateFault

HTTP Status Code: 400

NodeQuotaForClusterExceededFault

HTTP Status Code: 400

NodeQuotaForCustomerExceededFault

HTTP Status Code: 400

NoOperationFault

HTTP Status Code: 400

ParameterGroupNotFoundFault

HTTP Status Code: 400

ServiceLinkedRoleNotFoundFault

HTTP Status Code: 400

ShardsPerClusterQuotaExceededFault

HTTP Status Code: 400

See Also

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