DeleteClusterCommand

Deletes a previously provisioned cluster without its final snapshot being created. A successful response from the web service indicates that the request was received correctly. Use DescribeClusters to monitor the status of the deletion. The delete operation cannot be canceled or reverted once submitted. For more information about managing clusters, go to Amazon Redshift Clusters  in the Amazon Redshift Cluster Management Guide.

If you want to shut down the cluster and retain it for future use, set SkipFinalClusterSnapshot to false and specify a name for FinalClusterSnapshotIdentifier. You can later restore this snapshot to resume using the cluster. If a final cluster snapshot is requested, the status of the cluster will be "final-snapshot" while the snapshot is being taken, then it's "deleting" once Amazon Redshift begins deleting the cluster.

For more information about managing clusters, go to Amazon Redshift Clusters  in the Amazon Redshift Cluster Management Guide.

Example Syntax

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

import { RedshiftClient, DeleteClusterCommand } from "@aws-sdk/client-redshift"; // ES Modules import
// const { RedshiftClient, DeleteClusterCommand } = require("@aws-sdk/client-redshift"); // CommonJS import
const client = new RedshiftClient(config);
const input = { // DeleteClusterMessage
  ClusterIdentifier: "STRING_VALUE", // required
  SkipFinalClusterSnapshot: true || false,
  FinalClusterSnapshotIdentifier: "STRING_VALUE",
  FinalClusterSnapshotRetentionPeriod: Number("int"),
};
const command = new DeleteClusterCommand(input);
const response = await client.send(command);
// { // DeleteClusterResult
//   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",
//               Ipv6Address: "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"),
//     MasterPasswordSecretArn: "STRING_VALUE",
//     MasterPasswordSecretKmsKeyId: "STRING_VALUE",
//     IpAddressType: "STRING_VALUE",
//     MultiAZ: "STRING_VALUE",
//     MultiAZSecondary: { // SecondaryClusterInfo
//       AvailabilityZone: "STRING_VALUE",
//       ClusterNodes: [
//         {
//           NodeRole: "STRING_VALUE",
//           PrivateIPAddress: "STRING_VALUE",
//           PublicIPAddress: "STRING_VALUE",
//         },
//       ],
//     },
//   },
// };

DeleteClusterCommand Input

See DeleteClusterCommandInput for more details

Parameter
Type
Description
ClusterIdentifier
Required
string | undefined

The identifier of the cluster to be deleted.

Constraints:

  • Must contain lowercase characters.

  • Must contain from 1 to 63 alphanumeric characters or hyphens.

  • First character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

FinalClusterSnapshotIdentifier
string | undefined

The identifier of the final snapshot that is to be created immediately before deleting the cluster. If this parameter is provided, SkipFinalClusterSnapshot must be false.

Constraints:

  • Must be 1 to 255 alphanumeric characters.

  • First character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

FinalClusterSnapshotRetentionPeriod
number | undefined

The number of days that a manual snapshot is retained. If the value is -1, the manual snapshot is retained indefinitely.

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

The default value is -1.

SkipFinalClusterSnapshot
boolean | undefined

Determines whether a final snapshot of the cluster is created before Amazon Redshift deletes the cluster. If true, a final cluster snapshot is not created. If false, a final cluster snapshot is created before the cluster is deleted.

The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot is false.

Default: false

DeleteClusterCommand Output

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.
Cluster
Cluster | undefined

Describes a cluster.

Throws

Name
Fault
Details
ClusterNotFoundFault
client

The ClusterIdentifier parameter does not refer to an existing cluster.

ClusterSnapshotAlreadyExistsFault
client

The value specified as a snapshot identifier is already used by an existing snapshot.

ClusterSnapshotQuotaExceededFault
client

The request would result in the user exceeding the allowed number of cluster snapshots.

InvalidClusterStateFault
client

The specified cluster is not in the available state.

InvalidRetentionPeriodFault
client

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.

RedshiftServiceException
Base exception class for all service exceptions from Redshift service.