FailoverGlobalClusterCommand

Promotes the specified secondary DB cluster to be the primary DB cluster in the global cluster when failing over a global cluster occurs.

Use this operation to respond to an unplanned event, such as a regional disaster in the primary region. Failing over can result in a loss of write transaction data that wasn't replicated to the chosen secondary before the failover event occurred. However, the recovery process that promotes a DB instance on the chosen seconday DB cluster to be the primary writer DB instance guarantees that the data is in a transactionally consistent state.

Example Syntax

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

import { DocDBClient, FailoverGlobalClusterCommand } from "@aws-sdk/client-docdb"; // ES Modules import
// const { DocDBClient, FailoverGlobalClusterCommand } = require("@aws-sdk/client-docdb"); // CommonJS import
const client = new DocDBClient(config);
const input = { // FailoverGlobalClusterMessage
  GlobalClusterIdentifier: "STRING_VALUE", // required
  TargetDbClusterIdentifier: "STRING_VALUE", // required
  AllowDataLoss: true || false,
  Switchover: true || false,
};
const command = new FailoverGlobalClusterCommand(input);
const response = await client.send(command);
// { // FailoverGlobalClusterResult
//   GlobalCluster: { // GlobalCluster
//     GlobalClusterIdentifier: "STRING_VALUE",
//     GlobalClusterResourceId: "STRING_VALUE",
//     GlobalClusterArn: "STRING_VALUE",
//     Status: "STRING_VALUE",
//     Engine: "STRING_VALUE",
//     EngineVersion: "STRING_VALUE",
//     DatabaseName: "STRING_VALUE",
//     StorageEncrypted: true || false,
//     DeletionProtection: true || false,
//     GlobalClusterMembers: [ // GlobalClusterMemberList
//       { // GlobalClusterMember
//         DBClusterArn: "STRING_VALUE",
//         Readers: [ // ReadersArnList
//           "STRING_VALUE",
//         ],
//         IsWriter: true || false,
//       },
//     ],
//   },
// };

FailoverGlobalClusterCommand Input

Parameter
Type
Description
GlobalClusterIdentifier
Required
string | undefined

The identifier of the Amazon DocumentDB global cluster to apply this operation. The identifier is the unique key assigned by the user when the cluster is created. In other words, it's the name of the global cluster.

Constraints:

  • Must match the identifier of an existing global cluster.

  • Minimum length of 1. Maximum length of 255.

Pattern: [A-Za-z][0-9A-Za-z-:._]*

TargetDbClusterIdentifier
Required
string | undefined

The identifier of the secondary Amazon DocumentDB cluster that you want to promote to the primary for the global cluster. Use the Amazon Resource Name (ARN) for the identifier so that Amazon DocumentDB can locate the cluster in its Amazon Web Services region.

Constraints:

  • Must match the identifier of an existing secondary cluster.

  • Minimum length of 1. Maximum length of 255.

Pattern: [A-Za-z][0-9A-Za-z-:._]*

AllowDataLoss
boolean | undefined

Specifies whether to allow data loss for this global cluster operation. Allowing data loss triggers a global failover operation.

If you don't specify AllowDataLoss, the global cluster operation defaults to a switchover.

Constraints:

  • Can't be specified together with the Switchover parameter.

Switchover
boolean | undefined

Specifies whether to switch over this global database cluster.

Constraints:

  • Can't be specified together with the AllowDataLoss parameter.

FailoverGlobalClusterCommand Output

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

A data type representing an Amazon DocumentDB global cluster.

Throws

Name
Fault
Details
DBClusterNotFoundFault
client

DBClusterIdentifier doesn't refer to an existing cluster.

GlobalClusterNotFoundFault
client

The GlobalClusterIdentifier doesn't refer to an existing global cluster.

InvalidDBClusterStateFault
client

The cluster isn't in a valid state.

InvalidGlobalClusterStateFault
client

The requested operation can't be performed while the cluster is in this state.

DocDBServiceException
Base exception class for all service exceptions from DocDB service.