MemoryDB / Client / copy_snapshot

copy_snapshot#

MemoryDB.Client.copy_snapshot(**kwargs)#

Makes a copy of an existing snapshot.

See also: AWS API Documentation

Request Syntax

response = client.copy_snapshot(
    SourceSnapshotName='string',
    TargetSnapshotName='string',
    TargetBucket='string',
    KmsKeyId='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters:
  • SourceSnapshotName (string) –

    [REQUIRED]

    The name of an existing snapshot from which to make a copy.

  • TargetSnapshotName (string) –

    [REQUIRED]

    A name for the snapshot copy. MemoryDB does not permit overwriting a snapshot, therefore this name must be unique within its context - MemoryDB or an Amazon S3 bucket if exporting.

  • TargetBucket (string) – The Amazon S3 bucket to which the snapshot is exported. This parameter is used only when exporting a snapshot for external access. When using this parameter to export a snapshot, be sure MemoryDB has the needed permissions to this S3 bucket. For more information, see Step 2: Grant MemoryDB Access to Your Amazon S3 Bucket.

  • KmsKeyId (string) – The ID of the KMS key used to encrypt the target 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',
            'Engine': '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)
                },
            ],
            'MultiRegionParameterGroupName': 'string',
            'MultiRegionClusterName': 'string'
        },
        'DataTiering': 'true'|'false'
    }
}

Response Structure

  • (dict) –

    • Snapshot (dict) –

      Represents a copy of an entire cluster as of the time when the snapshot was taken.

      • 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

        • Engine (string) –

          The name of the engine used by the cluster configuration.

        • EngineVersion (string) –

          The Redis OSS 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

        • MultiRegionParameterGroupName (string) –

          The name of the multi-Region parameter group associated with the cluster configuration.

        • MultiRegionClusterName (string) –

          The name for the multi-Region cluster associated with the cluster configuration.

      • 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.SnapshotNotFoundFault

  • MemoryDB.Client.exceptions.SnapshotQuotaExceededFault

  • MemoryDB.Client.exceptions.InvalidSnapshotStateFault

  • MemoryDB.Client.exceptions.ServiceLinkedRoleNotFoundFault

  • MemoryDB.Client.exceptions.InvalidParameterValueException

  • MemoryDB.Client.exceptions.InvalidParameterCombinationException

  • MemoryDB.Client.exceptions.TagQuotaPerResourceExceeded