RDS / Client / failover_global_cluster

failover_global_cluster#

RDS.Client.failover_global_cluster(**kwargs)#

Initiates the failover process for an Aurora global database ( GlobalCluster).

A failover for an Aurora global database promotes one of secondary read-only DB clusters to be the primary DB cluster and demotes the primary DB cluster to being a secondary (read-only) DB cluster. In other words, the role of the current primary DB cluster and the selected (target) DB cluster are switched. The selected secondary DB cluster assumes full read/write capabilities for the Aurora global database.

For more information about failing over an Amazon Aurora global database, see Managed planned failover for Amazon Aurora global databases in the Amazon Aurora User Guide.

Note

This action applies to GlobalCluster (Aurora global databases) only. Use this action only on healthy Aurora global databases with running Aurora DB clusters and no Region-wide outages, to test disaster recovery scenarios or to reconfigure your Aurora global database topology.

See also: AWS API Documentation

Request Syntax

response = client.failover_global_cluster(
    GlobalClusterIdentifier='string',
    TargetDbClusterIdentifier='string'
)
Parameters:
  • GlobalClusterIdentifier (string) –

    [REQUIRED]

    Identifier of the Aurora global database ( GlobalCluster) that should be failed over. The identifier is the unique key assigned by the user when the Aurora global database was created. In other words, it’s the name of the Aurora global database that you want to fail over.

    Constraints:

    • Must match the identifier of an existing GlobalCluster (Aurora global database).

  • TargetDbClusterIdentifier (string) –

    [REQUIRED]

    Identifier of the secondary Aurora DB cluster that you want to promote to primary for the Aurora global database ( GlobalCluster.) Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

Return type:

dict

Returns:

Response Syntax

{
    'GlobalCluster': {
        'GlobalClusterIdentifier': 'string',
        'GlobalClusterResourceId': 'string',
        'GlobalClusterArn': 'string',
        'Status': 'string',
        'Engine': 'string',
        'EngineVersion': 'string',
        'DatabaseName': 'string',
        'StorageEncrypted': True|False,
        'DeletionProtection': True|False,
        'GlobalClusterMembers': [
            {
                'DBClusterArn': 'string',
                'Readers': [
                    'string',
                ],
                'IsWriter': True|False,
                'GlobalWriteForwardingStatus': 'enabled'|'disabled'|'enabling'|'disabling'|'unknown'
            },
        ],
        'FailoverState': {
            'Status': 'pending'|'failing-over'|'cancelling',
            'FromDbClusterArn': 'string',
            'ToDbClusterArn': 'string'
        }
    }
}

Response Structure

  • (dict) –

    • GlobalCluster (dict) –

      A data type representing an Aurora global database.

      • GlobalClusterIdentifier (string) –

        Contains a user-supplied global database cluster identifier. This identifier is the unique key that identifies a global database cluster.

      • GlobalClusterResourceId (string) –

        The Amazon Web Services Region-unique, immutable identifier for the global database cluster. This identifier is found in Amazon Web Services CloudTrail log entries whenever the Amazon Web Services KMS key for the DB cluster is accessed.

      • GlobalClusterArn (string) –

        The Amazon Resource Name (ARN) for the global database cluster.

      • Status (string) –

        Specifies the current state of this global database cluster.

      • Engine (string) –

        The Aurora database engine used by the global database cluster.

      • EngineVersion (string) –

        Indicates the database engine version.

      • DatabaseName (string) –

        The default database name within the new global database cluster.

      • StorageEncrypted (boolean) –

        The storage encryption setting for the global database cluster.

      • DeletionProtection (boolean) –

        The deletion protection setting for the new global database cluster.

      • GlobalClusterMembers (list) –

        The list of cluster IDs for secondary clusters within the global database cluster. Currently limited to 1 item.

        • (dict) –

          A data structure with information about any primary and secondary clusters associated with an Aurora global database.

          • DBClusterArn (string) –

            The Amazon Resource Name (ARN) for each Aurora cluster.

          • Readers (list) –

            The Amazon Resource Name (ARN) for each read-only secondary cluster associated with the Aurora global database.

            • (string) –

          • IsWriter (boolean) –

            Specifies whether the Aurora cluster is the primary cluster (that is, has read-write capability) for the Aurora global database with which it is associated.

          • GlobalWriteForwardingStatus (string) –

            Specifies whether a secondary cluster in an Aurora global database has write forwarding enabled, not enabled, or is in the process of enabling it.

      • FailoverState (dict) –

        A data object containing all properties for the current state of an in-process or pending failover process for this Aurora global database. This object is empty unless the FailoverGlobalCluster API operation has been called on this Aurora global database ( GlobalCluster).

        • Status (string) –

          The current status of the Aurora global database ( GlobalCluster). Possible values are as follows:

          • pending – A request to fail over the Aurora global database ( GlobalCluster) has been received by the service. The GlobalCluster’s primary DB cluster and the specified secondary DB cluster are being verified before the failover process can start.

          • failing-over – This status covers the range of Aurora internal operations that take place during the failover process, such as demoting the primary Aurora DB cluster, promoting the secondary Aurora DB, and synchronizing replicas.

          • cancelling – The request to fail over the Aurora global database ( GlobalCluster) was cancelled and the primary Aurora DB cluster and the selected secondary Aurora DB cluster are returning to their previous states.

        • FromDbClusterArn (string) –

          The Amazon Resource Name (ARN) of the Aurora DB cluster that is currently being demoted, and which is associated with this state.

        • ToDbClusterArn (string) –

          The Amazon Resource Name (ARN) of the Aurora DB cluster that is currently being promoted, and which is associated with this state.

Exceptions

  • RDS.Client.exceptions.GlobalClusterNotFoundFault

  • RDS.Client.exceptions.InvalidGlobalClusterStateFault

  • RDS.Client.exceptions.InvalidDBClusterStateFault

  • RDS.Client.exceptions.DBClusterNotFoundFault