create_global_replication_group

create_global_replication_group(**kwargs)

Global Datastore for Redis offers fully managed, fast, reliable and secure cross-region replication. Using Global Datastore for Redis, you can create cross-region read replica clusters for ElastiCache for Redis to enable low-latency reads and disaster recovery across regions. For more information, see Replication Across Regions Using Global Datastore.

  • The GlobalReplicationGroupIdSuffix is the name of the Global datastore.
  • The PrimaryReplicationGroupId represents the name of the primary cluster that accepts writes and will replicate updates to the secondary cluster.

See also: AWS API Documentation

Request Syntax

response = client.create_global_replication_group(
    GlobalReplicationGroupIdSuffix='string',
    GlobalReplicationGroupDescription='string',
    PrimaryReplicationGroupId='string'
)
Parameters
  • GlobalReplicationGroupIdSuffix (string) --

    [REQUIRED]

    The suffix name of a Global datastore. Amazon ElastiCache automatically applies a prefix to the Global datastore ID when it is created. Each Amazon Region has its own prefix. For instance, a Global datastore ID created in the US-West-1 region will begin with "dsdfu" along with the suffix name you provide. The suffix, combined with the auto-generated prefix, guarantees uniqueness of the Global datastore name across multiple regions.

    For a full list of Amazon Regions and their respective Global datastore iD prefixes, see Using the Amazon CLI with Global datastores.

  • GlobalReplicationGroupDescription (string) -- Provides details of the Global datastore
  • PrimaryReplicationGroupId (string) --

    [REQUIRED]

    The name of the primary cluster that accepts writes and will replicate updates to the secondary cluster.

Return type

dict

Returns

Response Syntax

{
    'GlobalReplicationGroup': {
        'GlobalReplicationGroupId': 'string',
        'GlobalReplicationGroupDescription': 'string',
        'Status': 'string',
        'CacheNodeType': 'string',
        'Engine': 'string',
        'EngineVersion': 'string',
        'Members': [
            {
                'ReplicationGroupId': 'string',
                'ReplicationGroupRegion': 'string',
                'Role': 'string',
                'AutomaticFailover': 'enabled'|'disabled'|'enabling'|'disabling',
                'Status': 'string'
            },
        ],
        'ClusterEnabled': True|False,
        'GlobalNodeGroups': [
            {
                'GlobalNodeGroupId': 'string',
                'Slots': 'string'
            },
        ],
        'AuthTokenEnabled': True|False,
        'TransitEncryptionEnabled': True|False,
        'AtRestEncryptionEnabled': True|False,
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • GlobalReplicationGroup (dict) --

      Consists of a primary cluster that accepts writes and an associated secondary cluster that resides in a different Amazon region. The secondary cluster accepts only reads. The primary cluster automatically replicates updates to the secondary cluster.

      • The GlobalReplicationGroupIdSuffix represents the name of the Global datastore, which is what you use to associate a secondary cluster.
      • GlobalReplicationGroupId (string) --

        The name of the Global datastore

      • GlobalReplicationGroupDescription (string) --

        The optional description of the Global datastore

      • Status (string) --

        The status of the Global datastore

      • CacheNodeType (string) --

        The cache node type of the Global datastore

      • Engine (string) --

        The Elasticache engine. For Redis only.

      • EngineVersion (string) --

        The Elasticache Redis engine version.

      • Members (list) --

        The replication groups that comprise the Global datastore.

        • (dict) --

          A member of a Global datastore. It contains the Replication Group Id, the Amazon region and the role of the replication group.

          • ReplicationGroupId (string) --

            The replication group id of the Global datastore member.

          • ReplicationGroupRegion (string) --

            The Amazon region of the Global datastore member.

          • Role (string) --

            Indicates the role of the replication group, primary or secondary.

          • AutomaticFailover (string) --

            Indicates whether automatic failover is enabled for the replication group.

          • Status (string) --

            The status of the membership of the replication group.

      • ClusterEnabled (boolean) --

        A flag that indicates whether the Global datastore is cluster enabled.

      • GlobalNodeGroups (list) --

        Indicates the slot configuration and global identifier for each slice group.

        • (dict) --

          Indicates the slot configuration and global identifier for a slice group.

          • GlobalNodeGroupId (string) --

            The name of the global node group

          • Slots (string) --

            The keyspace for this node group

      • AuthTokenEnabled (boolean) --

        A flag that enables using an AuthToken (password) when issuing Redis commands.

        Default: false

      • TransitEncryptionEnabled (boolean) --

        A flag that enables in-transit encryption when set to true.

        Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6 , 4.x or later.

      • AtRestEncryptionEnabled (boolean) --

        A flag that enables encryption at rest when set to true .

        You cannot modify the value of AtRestEncryptionEnabled after the replication group is created. To enable encryption at rest on a replication group you must set AtRestEncryptionEnabled to true when you create the replication group.

        Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6 , 4.x or later.

      • ARN (string) --

        The ARN (Amazon Resource Name) of the global replication group.

Exceptions

  • ElastiCache.Client.exceptions.ReplicationGroupNotFoundFault
  • ElastiCache.Client.exceptions.InvalidReplicationGroupStateFault
  • ElastiCache.Client.exceptions.GlobalReplicationGroupAlreadyExistsFault
  • ElastiCache.Client.exceptions.ServiceLinkedRoleNotFoundFault
  • ElastiCache.Client.exceptions.InvalidParameterValueException