Jump to Content

This API Documentation is now deprecated

We are excited to announce our new API Documentation.

Class ModifyClusterCommandProtected

Modifies the settings for a cluster.

You can also change node type and the number of nodes to scale up or down the cluster. When resizing a cluster, you must specify both the number of nodes and the node type even if one of the parameters does not change.

You can add another security or parameter group, or change the admin user password. Resetting a cluster password or modifying the security groups associated with a cluster do not need a reboot. However, modifying a parameter group requires a reboot for parameters to take effect. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

Example

Use a bare-bones client and the command you need to make an API call.

import { RedshiftClient, ModifyClusterCommand } from "@aws-sdk/client-redshift"; // ES Modules import
// const { RedshiftClient, ModifyClusterCommand } = require("@aws-sdk/client-redshift"); // CommonJS import
const client = new RedshiftClient(config);
const input = { // ModifyClusterMessage
ClusterIdentifier: "STRING_VALUE", // required
ClusterType: "STRING_VALUE",
NodeType: "STRING_VALUE",
NumberOfNodes: Number("int"),
ClusterSecurityGroups: [ // ClusterSecurityGroupNameList
"STRING_VALUE",
],
VpcSecurityGroupIds: [ // VpcSecurityGroupIdList
"STRING_VALUE",
],
MasterUserPassword: "STRING_VALUE",
ClusterParameterGroupName: "STRING_VALUE",
AutomatedSnapshotRetentionPeriod: Number("int"),
ManualSnapshotRetentionPeriod: Number("int"),
PreferredMaintenanceWindow: "STRING_VALUE",
ClusterVersion: "STRING_VALUE",
AllowVersionUpgrade: true || false,
HsmClientCertificateIdentifier: "STRING_VALUE",
HsmConfigurationIdentifier: "STRING_VALUE",
NewClusterIdentifier: "STRING_VALUE",
PubliclyAccessible: true || false,
ElasticIp: "STRING_VALUE",
EnhancedVpcRouting: true || false,
MaintenanceTrackName: "STRING_VALUE",
Encrypted: true || false,
KmsKeyId: "STRING_VALUE",
AvailabilityZoneRelocation: true || false,
AvailabilityZone: "STRING_VALUE",
Port: Number("int"),
};
const command = new ModifyClusterCommand(input);
const response = await client.send(command);
// { // ModifyClusterResult
// Cluster: { // Cluster
// ClusterIdentifier: "STRING_VALUE",
// NodeType: "STRING_VALUE",
// ClusterStatus: "STRING_VALUE",
// ClusterAvailabilityStatus: "STRING_VALUE",
// ModifyStatus: "STRING_VALUE",
// MasterUsername: "STRING_VALUE",
// DBName: "STRING_VALUE",
// Endpoint: { // Endpoint
// Address: "STRING_VALUE",
// Port: Number("int"),
// VpcEndpoints: [ // VpcEndpointsList
// { // VpcEndpoint
// VpcEndpointId: "STRING_VALUE",
// VpcId: "STRING_VALUE",
// NetworkInterfaces: [ // NetworkInterfaceList
// { // NetworkInterface
// NetworkInterfaceId: "STRING_VALUE",
// SubnetId: "STRING_VALUE",
// PrivateIpAddress: "STRING_VALUE",
// AvailabilityZone: "STRING_VALUE",
// },
// ],
// },
// ],
// },
// ClusterCreateTime: new Date("TIMESTAMP"),
// AutomatedSnapshotRetentionPeriod: Number("int"),
// ManualSnapshotRetentionPeriod: Number("int"),
// ClusterSecurityGroups: [ // ClusterSecurityGroupMembershipList
// { // ClusterSecurityGroupMembership
// ClusterSecurityGroupName: "STRING_VALUE",
// Status: "STRING_VALUE",
// },
// ],
// VpcSecurityGroups: [ // VpcSecurityGroupMembershipList
// { // VpcSecurityGroupMembership
// VpcSecurityGroupId: "STRING_VALUE",
// Status: "STRING_VALUE",
// },
// ],
// ClusterParameterGroups: [ // ClusterParameterGroupStatusList
// { // ClusterParameterGroupStatus
// ParameterGroupName: "STRING_VALUE",
// ParameterApplyStatus: "STRING_VALUE",
// ClusterParameterStatusList: [ // ClusterParameterStatusList
// { // ClusterParameterStatus
// ParameterName: "STRING_VALUE",
// ParameterApplyStatus: "STRING_VALUE",
// ParameterApplyErrorDescription: "STRING_VALUE",
// },
// ],
// },
// ],
// ClusterSubnetGroupName: "STRING_VALUE",
// VpcId: "STRING_VALUE",
// AvailabilityZone: "STRING_VALUE",
// PreferredMaintenanceWindow: "STRING_VALUE",
// PendingModifiedValues: { // PendingModifiedValues
// MasterUserPassword: "STRING_VALUE",
// NodeType: "STRING_VALUE",
// NumberOfNodes: Number("int"),
// ClusterType: "STRING_VALUE",
// ClusterVersion: "STRING_VALUE",
// AutomatedSnapshotRetentionPeriod: Number("int"),
// ClusterIdentifier: "STRING_VALUE",
// PubliclyAccessible: true || false,
// EnhancedVpcRouting: true || false,
// MaintenanceTrackName: "STRING_VALUE",
// EncryptionType: "STRING_VALUE",
// },
// ClusterVersion: "STRING_VALUE",
// AllowVersionUpgrade: true || false,
// NumberOfNodes: Number("int"),
// PubliclyAccessible: true || false,
// Encrypted: true || false,
// RestoreStatus: { // RestoreStatus
// Status: "STRING_VALUE",
// CurrentRestoreRateInMegaBytesPerSecond: Number("double"),
// SnapshotSizeInMegaBytes: Number("long"),
// ProgressInMegaBytes: Number("long"),
// ElapsedTimeInSeconds: Number("long"),
// EstimatedTimeToCompletionInSeconds: Number("long"),
// },
// DataTransferProgress: { // DataTransferProgress
// Status: "STRING_VALUE",
// CurrentRateInMegaBytesPerSecond: Number("double"),
// TotalDataInMegaBytes: Number("long"),
// DataTransferredInMegaBytes: Number("long"),
// EstimatedTimeToCompletionInSeconds: Number("long"),
// ElapsedTimeInSeconds: Number("long"),
// },
// HsmStatus: { // HsmStatus
// HsmClientCertificateIdentifier: "STRING_VALUE",
// HsmConfigurationIdentifier: "STRING_VALUE",
// Status: "STRING_VALUE",
// },
// ClusterSnapshotCopyStatus: { // ClusterSnapshotCopyStatus
// DestinationRegion: "STRING_VALUE",
// RetentionPeriod: Number("long"),
// ManualSnapshotRetentionPeriod: Number("int"),
// SnapshotCopyGrantName: "STRING_VALUE",
// },
// ClusterPublicKey: "STRING_VALUE",
// ClusterNodes: [ // ClusterNodesList
// { // ClusterNode
// NodeRole: "STRING_VALUE",
// PrivateIPAddress: "STRING_VALUE",
// PublicIPAddress: "STRING_VALUE",
// },
// ],
// ElasticIpStatus: { // ElasticIpStatus
// ElasticIp: "STRING_VALUE",
// Status: "STRING_VALUE",
// },
// ClusterRevisionNumber: "STRING_VALUE",
// Tags: [ // TagList
// { // Tag
// Key: "STRING_VALUE",
// Value: "STRING_VALUE",
// },
// ],
// KmsKeyId: "STRING_VALUE",
// EnhancedVpcRouting: true || false,
// IamRoles: [ // ClusterIamRoleList
// { // ClusterIamRole
// IamRoleArn: "STRING_VALUE",
// ApplyStatus: "STRING_VALUE",
// },
// ],
// PendingActions: [ // PendingActionsList
// "STRING_VALUE",
// ],
// MaintenanceTrackName: "STRING_VALUE",
// ElasticResizeNumberOfNodeOptions: "STRING_VALUE",
// DeferredMaintenanceWindows: [ // DeferredMaintenanceWindowsList
// { // DeferredMaintenanceWindow
// DeferMaintenanceIdentifier: "STRING_VALUE",
// DeferMaintenanceStartTime: new Date("TIMESTAMP"),
// DeferMaintenanceEndTime: new Date("TIMESTAMP"),
// },
// ],
// SnapshotScheduleIdentifier: "STRING_VALUE",
// SnapshotScheduleState: "MODIFYING" || "ACTIVE" || "FAILED",
// ExpectedNextSnapshotScheduleTime: new Date("TIMESTAMP"),
// ExpectedNextSnapshotScheduleTimeStatus: "STRING_VALUE",
// NextMaintenanceWindowStartTime: new Date("TIMESTAMP"),
// ResizeInfo: { // ResizeInfo
// ResizeType: "STRING_VALUE",
// AllowCancelResize: true || false,
// },
// AvailabilityZoneRelocationStatus: "STRING_VALUE",
// ClusterNamespaceArn: "STRING_VALUE",
// TotalStorageCapacityInMegaBytes: Number("long"),
// AquaConfiguration: { // AquaConfiguration
// AquaStatus: "enabled" || "disabled" || "applying",
// AquaConfigurationStatus: "enabled" || "disabled" || "auto",
// },
// DefaultIamRoleArn: "STRING_VALUE",
// ReservedNodeExchangeStatus: { // ReservedNodeExchangeStatus
// ReservedNodeExchangeRequestId: "STRING_VALUE",
// Status: "REQUESTED" || "PENDING" || "IN_PROGRESS" || "RETRYING" || "SUCCEEDED" || "FAILED",
// RequestTime: new Date("TIMESTAMP"),
// SourceReservedNodeId: "STRING_VALUE",
// SourceReservedNodeType: "STRING_VALUE",
// SourceReservedNodeCount: Number("int"),
// TargetReservedNodeOfferingId: "STRING_VALUE",
// TargetReservedNodeType: "STRING_VALUE",
// TargetReservedNodeCount: Number("int"),
// },
// CustomDomainName: "STRING_VALUE",
// CustomDomainCertificateArn: "STRING_VALUE",
// CustomDomainCertificateExpiryDate: new Date("TIMESTAMP"),
// },
// };

Param

ModifyClusterCommandInput

Returns

ModifyClusterCommandOutput

See

Throws

ClusterAlreadyExistsFault (client fault)

The account already has a cluster with the given identifier.

Throws

ClusterNotFoundFault (client fault)

The ClusterIdentifier parameter does not refer to an existing cluster.

Throws

ClusterParameterGroupNotFoundFault (client fault)

The parameter group name does not refer to an existing parameter group.

Throws

ClusterSecurityGroupNotFoundFault (client fault)

The cluster security group name does not refer to an existing cluster security group.

Throws

CustomCnameAssociationFault (client fault)

An error occurred when an attempt was made to change the custom domain association.

Throws

DependentServiceRequestThrottlingFault (client fault)

The request cannot be completed because a dependent service is throttling requests made by Amazon Redshift on your behalf. Wait and retry the request.

Throws

HsmClientCertificateNotFoundFault (client fault)

There is no Amazon Redshift HSM client certificate with the specified identifier.

Throws

HsmConfigurationNotFoundFault (client fault)

There is no Amazon Redshift HSM configuration with the specified identifier.

Throws

InsufficientClusterCapacityFault (client fault)

The number of nodes specified exceeds the allotted capacity of the cluster.

Throws

InvalidClusterSecurityGroupStateFault (client fault)

The state of the cluster security group is not available.

Throws

InvalidClusterStateFault (client fault)

The specified cluster is not in the available state.

Throws

InvalidClusterTrackFault (client fault)

The provided cluster track name is not valid.

Throws

InvalidElasticIpFault (client fault)

The Elastic IP (EIP) is invalid or cannot be found.

Throws

InvalidRetentionPeriodFault (client fault)

The retention period specified is either in the past or is not a valid value.

The value must be either -1 or an integer between 1 and 3,653.

Throws

LimitExceededFault (client fault)

The encryption key has exceeded its grant limit in Amazon Web Services KMS.

Throws

NumberOfNodesPerClusterLimitExceededFault (client fault)

The operation would exceed the number of nodes allowed for a cluster.

Throws

NumberOfNodesQuotaExceededFault (client fault)

The operation would exceed the number of nodes allotted to the account.

For information about increasing your quota, go to Limits in Amazon Redshift in the Amazon Redshift Cluster Management Guide.

Throws

TableLimitExceededFault (client fault)

The number of tables in the cluster exceeds the limit for the requested new cluster node type.

Throws

UnauthorizedOperation (client fault)

Your account is not authorized to perform the requested operation.

Throws

UnsupportedOperationFault (client fault)

The requested operation isn't supported.

Throws

UnsupportedOptionFault (client fault)

A request option was specified that is not supported.

Throws

RedshiftServiceException

Base exception class for all service exceptions from Redshift service.

Hierarchy

Constructors

Properties

Methods

Constructors

Properties

Methods