create_snapshot

create_snapshot(**kwargs)

Creates a copy of an entire cluster at a specific moment in time.

See also: AWS API Documentation

Request Syntax

response = client.create_snapshot(
    ClusterName='string',
    SnapshotName='string',
    KmsKeyId='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • ClusterName (string) --

    [REQUIRED]

    The snapshot is created from this cluster.

  • SnapshotName (string) --

    [REQUIRED]

    A name for the snapshot being created.

  • KmsKeyId (string) -- The ID of the KMS key used to encrypt the snapshot.
  • Tags (list) --

    A list of tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value, although null is accepted.

    • (dict) --

      A tag that can be added to an MemoryDB resource. Tags are composed of a Key/Value pair. You can use tags to categorize and track all your MemoryDB resources. When you add or remove tags on clusters, those actions will be replicated to all nodes in the cluster. A tag with a null Value is permitted. For more information, see Tagging your MemoryDB resources

      • Key (string) --

        The key for the tag. May not be null.

      • Value (string) --

        The tag's value. May be null.

Return type

dict

Returns

Response Syntax

{
    'Snapshot': {
        'Name': 'string',
        'Status': 'string',
        'Source': 'string',
        'KmsKeyId': 'string',
        'ARN': 'string',
        'ClusterConfiguration': {
            'Name': 'string',
            'Description': 'string',
            'NodeType': 'string',
            'EngineVersion': 'string',
            'MaintenanceWindow': 'string',
            'TopicArn': 'string',
            'Port': 123,
            'ParameterGroupName': 'string',
            'SubnetGroupName': 'string',
            'VpcId': 'string',
            'SnapshotRetentionLimit': 123,
            'SnapshotWindow': 'string',
            'NumShards': 123,
            'Shards': [
                {
                    'Name': 'string',
                    'Configuration': {
                        'Slots': 'string',
                        'ReplicaCount': 123
                    },
                    'Size': 'string',
                    'SnapshotCreationTime': datetime(2015, 1, 1)
                },
            ]
        },
        'DataTiering': 'true'|'false'
    }
}

Response Structure

  • (dict) --

    • Snapshot (dict) --

      The newly-created snapshot.

      • Name (string) --

        The name of the snapshot

      • Status (string) --

        The status of the snapshot. Valid values: creating | available | restoring | copying | deleting.

      • Source (string) --

        Indicates whether the snapshot is from an automatic backup (automated) or was created manually (manual).

      • KmsKeyId (string) --

        The ID of the KMS key used to encrypt the snapshot.

      • ARN (string) --

        The ARN (Amazon Resource Name) of the snapshot.

      • ClusterConfiguration (dict) --

        The configuration of the cluster from which the snapshot was taken

        • Name (string) --

          The name of the cluster

        • Description (string) --

          The description of the cluster configuration

        • NodeType (string) --

          The node type used for the cluster

        • EngineVersion (string) --

          The Redis engine version used by the cluster

        • MaintenanceWindow (string) --

          The specified maintenance window for the cluster

        • TopicArn (string) --

          The Amazon Resource Name (ARN) of the SNS notification topic for the cluster

        • Port (integer) --

          The port used by the cluster

        • ParameterGroupName (string) --

          The name of parameter group used by the cluster

        • SubnetGroupName (string) --

          The name of the subnet group used by the cluster

        • VpcId (string) --

          The ID of the VPC the cluster belongs to

        • SnapshotRetentionLimit (integer) --

          The snapshot retention limit set by the cluster

        • SnapshotWindow (string) --

          The snapshot window set by the cluster

        • NumShards (integer) --

          The number of shards in the cluster

        • Shards (list) --

          The list of shards in the cluster

          • (dict) --

            Provides details of a shard in a snapshot

            • Name (string) --

              The name of the shard

            • Configuration (dict) --

              The configuration details of the shard

              • Slots (string) --

                A string that specifies the keyspace for a particular node group. Keyspaces range from 0 to 16,383. The string is in the format startkey-endkey.

              • ReplicaCount (integer) --

                The number of read replica nodes in this shard.

            • Size (string) --

              The size of the shard's snapshot

            • SnapshotCreationTime (datetime) --

              The date and time that the shard's snapshot was created

      • DataTiering (string) --

        Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter must be set when using r6gd nodes. For more information, see Data tiering.

Exceptions

  • MemoryDB.Client.exceptions.SnapshotAlreadyExistsFault
  • MemoryDB.Client.exceptions.ClusterNotFoundFault
  • MemoryDB.Client.exceptions.InvalidClusterStateFault
  • MemoryDB.Client.exceptions.SnapshotQuotaExceededFault
  • MemoryDB.Client.exceptions.ServiceLinkedRoleNotFoundFault
  • MemoryDB.Client.exceptions.InvalidParameterCombinationException
  • MemoryDB.Client.exceptions.InvalidParameterValueException
  • MemoryDB.Client.exceptions.TagQuotaPerResourceExceeded