Amazon MemoryDB

2021/08/19 - Amazon MemoryDB - 35 new api methods

Changes  AWS MemoryDB SDK now supports all APIs for newly launched MemoryDB service.

UpdateACL (new) Link ¶

Changes the list of users that belong to the Access Control List.

See also: AWS API Documentation

Request Syntax

client.update_acl(
    ACLName='string',
    UserNamesToAdd=[
        'string',
    ],
    UserNamesToRemove=[
        'string',
    ]
)
type ACLName

string

param ACLName

[REQUIRED]

The name of the Access Control List

type UserNamesToAdd

list

param UserNamesToAdd

The list of users to add to the Access Control List

  • (string) --

type UserNamesToRemove

list

param UserNamesToRemove

The list of users to remove from the Access Control List

  • (string) --

rtype

dict

returns

Response Syntax

{
    'ACL': {
        'Name': 'string',
        'Status': 'string',
        'UserNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'PendingChanges': {
            'UserNamesToRemove': [
                'string',
            ],
            'UserNamesToAdd': [
                'string',
            ]
        },
        'Clusters': [
            'string',
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ACL (dict) --

      The updated Access Control List

      • Name (string) --

        The name of the Access Control List

      • Status (string) --

        Indicates ACL status. Can be "creating", "active", "modifying", "deleting".

      • UserNames (list) --

        The list of user names that belong to the ACL.

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the ACL

      • PendingChanges (dict) --

        A list of updates being applied to the ACL.

        • UserNamesToRemove (list) --

          A list of user names being removed from the ACL

          • (string) --

        • UserNamesToAdd (list) --

          A list of users being added to the ACL

          • (string) --

      • Clusters (list) --

        A list of clusters associated with the ACL.

        • (string) --

      • ARN (string) --

        The Amazon Resource Name (ARN) of the ACL

CreateSubnetGroup (new) Link ¶

Creates a subnet group. A subnet group is a collection of subnets (typically private) that you can designate for your clusters running in an Amazon Virtual Private Cloud (VPC) environment. When you create a cluster in an Amazon VPC, you must specify a subnet group. MemoryDB uses that subnet group to choose a subnet and IP addresses within that subnet to associate with your nodes. For more information, see Subnets and subnet groups.

See also: AWS API Documentation

Request Syntax

client.create_subnet_group(
    SubnetGroupName='string',
    Description='string',
    SubnetIds=[
        'string',
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type SubnetGroupName

string

param SubnetGroupName

[REQUIRED]

The name of the subnet group.

type Description

string

param Description

A description for the subnet group.

type SubnetIds

list

param SubnetIds

[REQUIRED]

A list of VPC subnet IDs for the subnet group.

  • (string) --

type Tags

list

param Tags

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.

rtype

dict

returns

Response Syntax

{
    'SubnetGroup': {
        'Name': 'string',
        'Description': 'string',
        'VpcId': 'string',
        'Subnets': [
            {
                'Identifier': 'string',
                'AvailabilityZone': {
                    'Name': 'string'
                }
            },
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • SubnetGroup (dict) --

      The newly-created subnet group

      • Name (string) --

        The name of the subnet group

      • Description (string) --

        A description of the subnet group

      • VpcId (string) --

        The Amazon Virtual Private Cloud identifier (VPC ID) of the subnet group.

      • Subnets (list) --

        A list of subnets associated with the subnet group.

        • (dict) --

          Represents the subnet associated with a cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with MemoryDB.

          • Identifier (string) --

            The unique identifier for the subnet.

          • AvailabilityZone (dict) --

            The Availability Zone where the subnet resides

            • Name (string) --

              The name of the Availability Zone.

      • ARN (string) --

        The ARN (Amazon Resource Name) of the subnet group.

DescribeServiceUpdates (new) Link ¶

Returns details of the service updates

See also: AWS API Documentation

Request Syntax

client.describe_service_updates(
    ServiceUpdateName='string',
    ClusterNames=[
        'string',
    ],
    Status=[
        'available'|'in-progress'|'complete'|'scheduled',
    ],
    MaxResults=123,
    NextToken='string'
)
type ServiceUpdateName

string

param ServiceUpdateName

The unique ID of the service update to describe.

type ClusterNames

list

param ClusterNames

The list of cluster names to identify service updates to apply

  • (string) --

type Status

list

param Status

The status(es) of the service updates to filter on

  • (string) --

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'ServiceUpdates': [
        {
            'ClusterName': 'string',
            'ServiceUpdateName': 'string',
            'ReleaseDate': datetime(2015, 1, 1),
            'Description': 'string',
            'Status': 'available'|'in-progress'|'complete'|'scheduled',
            'Type': 'security-update',
            'NodesUpdated': 'string',
            'AutoUpdateStartDate': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • ServiceUpdates (list) --

      A list of service updates

      • (dict) --

        An update that you can apply to your MemoryDB clusters.

        • ClusterName (string) --

          The name of the cluster to which the service update applies

        • ServiceUpdateName (string) --

          The unique ID of the service update

        • ReleaseDate (datetime) --

          The date when the service update is initially available

        • Description (string) --

          Provides details of the service update

        • Status (string) --

          The status of the service update

        • Type (string) --

          Reflects the nature of the service update

        • NodesUpdated (string) --

          A list of nodes updated by the service update

        • AutoUpdateStartDate (datetime) --

          The date at which the service update will be automatically applied

ResetParameterGroup (new) Link ¶

Modifies the parameters of a parameter group to the engine or system default value. You can reset specific parameters by submitting a list of parameter names. To reset the entire parameter group, specify the AllParameters and ParameterGroupName parameters.

See also: AWS API Documentation

Request Syntax

client.reset_parameter_group(
    ParameterGroupName='string',
    AllParameters=True|False,
    ParameterNames=[
        'string',
    ]
)
type ParameterGroupName

string

param ParameterGroupName

[REQUIRED]

The name of the parameter group to reset.

type AllParameters

boolean

param AllParameters

If true, all parameters in the parameter group are reset to their default values. If false, only the parameters listed by ParameterNames are reset to their default values.

type ParameterNames

list

param ParameterNames

An array of parameter names to reset to their default values. If AllParameters is true, do not use ParameterNames. If AllParameters is false, you must specify the name of at least one parameter to reset.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'ParameterGroup': {
        'Name': 'string',
        'Family': 'string',
        'Description': 'string',
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ParameterGroup (dict) --

      The parameter group being reset.

      • Name (string) --

        The name of the parameter group

      • Family (string) --

        The name of the parameter group family that this parameter group is compatible with.

      • Description (string) --

        A description of the parameter group

      • ARN (string) --

        The Amazon Resource Name (ARN) of the parameter group

UpdateSubnetGroup (new) Link ¶

Updates a subnet group. For more information, see Updating a subnet group

See also: AWS API Documentation

Request Syntax

client.update_subnet_group(
    SubnetGroupName='string',
    Description='string',
    SubnetIds=[
        'string',
    ]
)
type SubnetGroupName

string

param SubnetGroupName

[REQUIRED]

The name of the subnet group

type Description

string

param Description

A description of the subnet group

type SubnetIds

list

param SubnetIds

The EC2 subnet IDs for the subnet group.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'SubnetGroup': {
        'Name': 'string',
        'Description': 'string',
        'VpcId': 'string',
        'Subnets': [
            {
                'Identifier': 'string',
                'AvailabilityZone': {
                    'Name': 'string'
                }
            },
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • SubnetGroup (dict) --

      The updated subnet group

      • Name (string) --

        The name of the subnet group

      • Description (string) --

        A description of the subnet group

      • VpcId (string) --

        The Amazon Virtual Private Cloud identifier (VPC ID) of the subnet group.

      • Subnets (list) --

        A list of subnets associated with the subnet group.

        • (dict) --

          Represents the subnet associated with a cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with MemoryDB.

          • Identifier (string) --

            The unique identifier for the subnet.

          • AvailabilityZone (dict) --

            The Availability Zone where the subnet resides

            • Name (string) --

              The name of the Availability Zone.

      • ARN (string) --

        The ARN (Amazon Resource Name) of the subnet group.

UntagResource (new) Link ¶

Use this operation to remove tags on a resource

See also: AWS API Documentation

Request Syntax

client.untag_resource(
    ResourceArn='string',
    TagKeys=[
        'string',
    ]
)
type ResourceArn

string

param ResourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the resource to which the tags are to be removed

type TagKeys

list

param TagKeys

[REQUIRED]

The list of keys of the tags that are to be removed

  • (string) --

rtype

dict

returns

Response Syntax

{
    'TagList': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • TagList (list) --

      The list of tags removed

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

UpdateCluster (new) Link ¶

Modifies the settings for a cluster. You can use this operation to change one or more cluster configuration settings by specifying the settings and the new values.

See also: AWS API Documentation

Request Syntax

client.update_cluster(
    ClusterName='string',
    Description='string',
    SecurityGroupIds=[
        'string',
    ],
    MaintenanceWindow='string',
    SnsTopicArn='string',
    SnsTopicStatus='string',
    ParameterGroupName='string',
    SnapshotWindow='string',
    SnapshotRetentionLimit=123,
    NodeType='string',
    EngineVersion='string',
    ReplicaConfiguration={
        'ReplicaCount': 123
    },
    ShardConfiguration={
        'ShardCount': 123
    },
    ACLName='string'
)
type ClusterName

string

param ClusterName

[REQUIRED]

The name of the cluster to update

type Description

string

param Description

The description of the cluster to update

type SecurityGroupIds

list

param SecurityGroupIds

The SecurityGroupIds to update

  • (string) --

type MaintenanceWindow

string

param MaintenanceWindow

The maintenance window to update

type SnsTopicArn

string

param SnsTopicArn

The SNS topic ARN to update

type SnsTopicStatus

string

param SnsTopicStatus

The status of the Amazon SNS notification topic. Notifications are sent only if the status is active.

type ParameterGroupName

string

param ParameterGroupName

The name of the parameter group to update

type SnapshotWindow

string

param SnapshotWindow

The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your cluster.

type SnapshotRetentionLimit

integer

param SnapshotRetentionLimit

The number of days for which MemoryDB retains automatic cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

type NodeType

string

param NodeType

A valid node type that you want to scale this cluster up or down to.

type EngineVersion

string

param EngineVersion

The upgraded version of the engine to be run on the nodes. You can upgrade to a newer engine version, but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster and create it anew with the earlier engine version.

type ReplicaConfiguration

dict

param ReplicaConfiguration

The number of replicas that will reside in each shard

  • ReplicaCount (integer) --

    The number of replicas to scale up or down to

type ShardConfiguration

dict

param ShardConfiguration

The number of shards in the cluster

  • ShardCount (integer) --

    The number of shards in the cluster

type ACLName

string

param ACLName

The Access Control List that is associated with the cluster

rtype

dict

returns

Response Syntax

{
    'Cluster': {
        'Name': 'string',
        'Description': 'string',
        'Status': 'string',
        'PendingUpdates': {
            'Resharding': {
                'SlotMigration': {
                    'ProgressPercentage': 123.0
                }
            },
            'ACLs': {
                'ACLToApply': 'string'
            },
            'ServiceUpdates': [
                {
                    'ServiceUpdateName': 'string',
                    'Status': 'available'|'in-progress'|'complete'|'scheduled'
                },
            ]
        },
        'NumberOfShards': 123,
        'Shards': [
            {
                'Name': 'string',
                'Status': 'string',
                'Slots': 'string',
                'Nodes': [
                    {
                        'Name': 'string',
                        'Status': 'string',
                        'AvailabilityZone': 'string',
                        'CreateTime': datetime(2015, 1, 1),
                        'Endpoint': {
                            'Address': 'string',
                            'Port': 123
                        }
                    },
                ],
                'NumberOfNodes': 123
            },
        ],
        'AvailabilityMode': 'singleaz'|'multiaz',
        'ClusterEndpoint': {
            'Address': 'string',
            'Port': 123
        },
        'NodeType': 'string',
        'EngineVersion': 'string',
        'EnginePatchVersion': 'string',
        'ParameterGroupName': 'string',
        'ParameterGroupStatus': 'string',
        'SecurityGroups': [
            {
                'SecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'SubnetGroupName': 'string',
        'TLSEnabled': True|False,
        'KmsKeyId': 'string',
        'ARN': 'string',
        'SnsTopicArn': 'string',
        'SnsTopicStatus': 'string',
        'SnapshotRetentionLimit': 123,
        'MaintenanceWindow': 'string',
        'SnapshotWindow': 'string',
        'ACLName': 'string',
        'AutoMinorVersionUpgrade': True|False
    }
}

Response Structure

  • (dict) --

    • Cluster (dict) --

      The updated cluster

      • Name (string) --

        The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

      • Description (string) --

        A description of the cluster

      • Status (string) --

        The status of the cluster. For example, Available, Updating, Creating.

      • PendingUpdates (dict) --

        A group of settings that are currently being applied.

        • Resharding (dict) --

          The status of an online resharding operation.

          • SlotMigration (dict) --

            The status of the online resharding slot migration

            • ProgressPercentage (float) --

              The percentage of the slot migration that is complete.

        • ACLs (dict) --

          A list of ACLs associated with the cluster that are being updated

          • ACLToApply (string) --

            A list of ACLs pending to be applied.

        • ServiceUpdates (list) --

          A list of service updates being applied to the cluster

          • (dict) --

            Update action that has yet to be processed for the corresponding apply/stop request

            • ServiceUpdateName (string) --

              The unique ID of the service update

            • Status (string) --

              The status of the service update

      • NumberOfShards (integer) --

        The number of shards in the cluster

      • Shards (list) --

        A list of shards that are members of the cluster.

        • (dict) --

          Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

          • Name (string) --

            The name of the shard

          • Status (string) --

            The current state of this replication group - creating, available, modifying, deleting.

          • Slots (string) --

            The keyspace for this shard.

          • Nodes (list) --

            A list containing information about individual nodes within the shard

            • (dict) --

              Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

              • Name (string) --

                The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

              • Status (string) --

                The status of the service update on the node

              • AvailabilityZone (string) --

                The Availability Zone in which the node resides

              • CreateTime (datetime) --

                The date and time when the node was created.

              • Endpoint (dict) --

                The hostname for connecting to this node.

                • Address (string) --

                  The DNS hostname of the node.

                • Port (integer) --

                  The port number that the engine is listening on.

          • NumberOfNodes (integer) --

            The number of nodes in the shard

      • AvailabilityMode (string) --

        Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

      • ClusterEndpoint (dict) --

        The cluster's configuration endpoint

        • Address (string) --

          The DNS hostname of the node.

        • Port (integer) --

          The port number that the engine is listening on.

      • NodeType (string) --

        The cluster's node type

      • EngineVersion (string) --

        The Redis engine version used by the cluster

      • EnginePatchVersion (string) --

        The Redis engine patch version used by the cluster

      • ParameterGroupName (string) --

        The name of the parameter group used by the cluster

      • ParameterGroupStatus (string) --

        The status of the parameter group used by the cluster, for example 'active' or 'applying'.

      • SecurityGroups (list) --

        A list of security groups used by the cluster

        • (dict) --

          Represents a single security group and its status.

          • SecurityGroupId (string) --

            The identifier of the security group.

          • Status (string) --

            The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

      • SubnetGroupName (string) --

        The name of the subnet group used by the cluster

      • TLSEnabled (boolean) --

        A flag to indicate if In-transit encryption is enabled

      • KmsKeyId (string) --

        The ID of the KMS key used to encrypt the cluster

      • ARN (string) --

        The Amazon Resource Name (ARN) of the cluster.

      • SnsTopicArn (string) --

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

      • SnsTopicStatus (string) --

        The SNS topic must be in Active status to receive notifications

      • SnapshotRetentionLimit (integer) --

        The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

      • MaintenanceWindow (string) --

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

      • SnapshotWindow (string) --

        The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

      • ACLName (string) --

        The name of the Access Control List associated with this cluster.

      • AutoMinorVersionUpgrade (boolean) --

        When set to true, the cluster will automatically receive minor engine version upgrades after launch.

DescribeACLs (new) Link ¶

Returns a list of ACLs

See also: AWS API Documentation

Request Syntax

client.describe_acls(
    ACLName='string',
    MaxResults=123,
    NextToken='string'
)
type ACLName

string

param ACLName

The name of the ACL

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'ACLs': [
        {
            'Name': 'string',
            'Status': 'string',
            'UserNames': [
                'string',
            ],
            'MinimumEngineVersion': 'string',
            'PendingChanges': {
                'UserNamesToRemove': [
                    'string',
                ],
                'UserNamesToAdd': [
                    'string',
                ]
            },
            'Clusters': [
                'string',
            ],
            'ARN': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • ACLs (list) --

      The list of ACLs

      • (dict) --

        An Access Control List. You can authenticate users with Access Contol Lists. ACLs enable you to control cluster access by grouping users. These Access control lists are designed as a way to organize access to clusters.

        • Name (string) --

          The name of the Access Control List

        • Status (string) --

          Indicates ACL status. Can be "creating", "active", "modifying", "deleting".

        • UserNames (list) --

          The list of user names that belong to the ACL.

          • (string) --

        • MinimumEngineVersion (string) --

          The minimum engine version supported for the ACL

        • PendingChanges (dict) --

          A list of updates being applied to the ACL.

          • UserNamesToRemove (list) --

            A list of user names being removed from the ACL

            • (string) --

          • UserNamesToAdd (list) --

            A list of users being added to the ACL

            • (string) --

        • Clusters (list) --

          A list of clusters associated with the ACL.

          • (string) --

        • ARN (string) --

          The Amazon Resource Name (ARN) of the ACL

    • NextToken (string) --

      If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

DeleteSubnetGroup (new) Link ¶

Deletes a subnet group. You cannot delete a default subnet group or one that is associated with any clusters.

See also: AWS API Documentation

Request Syntax

client.delete_subnet_group(
    SubnetGroupName='string'
)
type SubnetGroupName

string

param SubnetGroupName

[REQUIRED]

The name of the subnet group to delete

rtype

dict

returns

Response Syntax

{
    'SubnetGroup': {
        'Name': 'string',
        'Description': 'string',
        'VpcId': 'string',
        'Subnets': [
            {
                'Identifier': 'string',
                'AvailabilityZone': {
                    'Name': 'string'
                }
            },
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • SubnetGroup (dict) --

      The subnet group object that has been deleted.

      • Name (string) --

        The name of the subnet group

      • Description (string) --

        A description of the subnet group

      • VpcId (string) --

        The Amazon Virtual Private Cloud identifier (VPC ID) of the subnet group.

      • Subnets (list) --

        A list of subnets associated with the subnet group.

        • (dict) --

          Represents the subnet associated with a cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with MemoryDB.

          • Identifier (string) --

            The unique identifier for the subnet.

          • AvailabilityZone (dict) --

            The Availability Zone where the subnet resides

            • Name (string) --

              The name of the Availability Zone.

      • ARN (string) --

        The ARN (Amazon Resource Name) of the subnet group.

DescribeEngineVersions (new) Link ¶

Returns a list of the available Redis engine versions.

See also: AWS API Documentation

Request Syntax

client.describe_engine_versions(
    EngineVersion='string',
    ParameterGroupFamily='string',
    MaxResults=123,
    NextToken='string',
    DefaultOnly=True|False
)
type EngineVersion

string

param EngineVersion

The Redis engine version

type ParameterGroupFamily

string

param ParameterGroupFamily

The name of a specific parameter group family to return details for.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

type DefaultOnly

boolean

param DefaultOnly

If true, specifies that only the default version of the specified engine or engine and major version combination is to be returned.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'EngineVersions': [
        {
            'EngineVersion': 'string',
            'EnginePatchVersion': 'string',
            'ParameterGroupFamily': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • EngineVersions (list) --

      A list of engine version details. Each element in the list contains detailed information about one engine version.

      • (dict) --

        Provides details of the Redis engine version

        • EngineVersion (string) --

          The engine version

        • EnginePatchVersion (string) --

          The patched engine version

        • ParameterGroupFamily (string) --

          Specifies the name of the parameter group family to which the engine default parameters apply.

BatchUpdateCluster (new) Link ¶

Apply the service update to a list of clusters supplied. For more information on service updates and applying them, see Applying the service updates.

See also: AWS API Documentation

Request Syntax

client.batch_update_cluster(
    ClusterNames=[
        'string',
    ],
    ServiceUpdate={
        'ServiceUpdateNameToApply': 'string'
    }
)
type ClusterNames

list

param ClusterNames

[REQUIRED]

The cluster names to apply the updates.

  • (string) --

type ServiceUpdate

dict

param ServiceUpdate

The unique ID of the service update

  • ServiceUpdateNameToApply (string) --

    The unique ID of the service update

rtype

dict

returns

Response Syntax

{
    'ProcessedClusters': [
        {
            'Name': 'string',
            'Description': 'string',
            'Status': 'string',
            'PendingUpdates': {
                'Resharding': {
                    'SlotMigration': {
                        'ProgressPercentage': 123.0
                    }
                },
                'ACLs': {
                    'ACLToApply': 'string'
                },
                'ServiceUpdates': [
                    {
                        'ServiceUpdateName': 'string',
                        'Status': 'available'|'in-progress'|'complete'|'scheduled'
                    },
                ]
            },
            'NumberOfShards': 123,
            'Shards': [
                {
                    'Name': 'string',
                    'Status': 'string',
                    'Slots': 'string',
                    'Nodes': [
                        {
                            'Name': 'string',
                            'Status': 'string',
                            'AvailabilityZone': 'string',
                            'CreateTime': datetime(2015, 1, 1),
                            'Endpoint': {
                                'Address': 'string',
                                'Port': 123
                            }
                        },
                    ],
                    'NumberOfNodes': 123
                },
            ],
            'AvailabilityMode': 'singleaz'|'multiaz',
            'ClusterEndpoint': {
                'Address': 'string',
                'Port': 123
            },
            'NodeType': 'string',
            'EngineVersion': 'string',
            'EnginePatchVersion': 'string',
            'ParameterGroupName': 'string',
            'ParameterGroupStatus': 'string',
            'SecurityGroups': [
                {
                    'SecurityGroupId': 'string',
                    'Status': 'string'
                },
            ],
            'SubnetGroupName': 'string',
            'TLSEnabled': True|False,
            'KmsKeyId': 'string',
            'ARN': 'string',
            'SnsTopicArn': 'string',
            'SnsTopicStatus': 'string',
            'SnapshotRetentionLimit': 123,
            'MaintenanceWindow': 'string',
            'SnapshotWindow': 'string',
            'ACLName': 'string',
            'AutoMinorVersionUpgrade': True|False
        },
    ],
    'UnprocessedClusters': [
        {
            'ClusterName': 'string',
            'ErrorType': 'string',
            'ErrorMessage': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ProcessedClusters (list) --

      The list of clusters that have been updated.

      • (dict) --

        Contains all of the attributes of a specific cluster.

        • Name (string) --

          The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

        • Description (string) --

          A description of the cluster

        • Status (string) --

          The status of the cluster. For example, Available, Updating, Creating.

        • PendingUpdates (dict) --

          A group of settings that are currently being applied.

          • Resharding (dict) --

            The status of an online resharding operation.

            • SlotMigration (dict) --

              The status of the online resharding slot migration

              • ProgressPercentage (float) --

                The percentage of the slot migration that is complete.

          • ACLs (dict) --

            A list of ACLs associated with the cluster that are being updated

            • ACLToApply (string) --

              A list of ACLs pending to be applied.

          • ServiceUpdates (list) --

            A list of service updates being applied to the cluster

            • (dict) --

              Update action that has yet to be processed for the corresponding apply/stop request

              • ServiceUpdateName (string) --

                The unique ID of the service update

              • Status (string) --

                The status of the service update

        • NumberOfShards (integer) --

          The number of shards in the cluster

        • Shards (list) --

          A list of shards that are members of the cluster.

          • (dict) --

            Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

            • Name (string) --

              The name of the shard

            • Status (string) --

              The current state of this replication group - creating, available, modifying, deleting.

            • Slots (string) --

              The keyspace for this shard.

            • Nodes (list) --

              A list containing information about individual nodes within the shard

              • (dict) --

                Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

                • Name (string) --

                  The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

                • Status (string) --

                  The status of the service update on the node

                • AvailabilityZone (string) --

                  The Availability Zone in which the node resides

                • CreateTime (datetime) --

                  The date and time when the node was created.

                • Endpoint (dict) --

                  The hostname for connecting to this node.

                  • Address (string) --

                    The DNS hostname of the node.

                  • Port (integer) --

                    The port number that the engine is listening on.

            • NumberOfNodes (integer) --

              The number of nodes in the shard

        • AvailabilityMode (string) --

          Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

        • ClusterEndpoint (dict) --

          The cluster's configuration endpoint

          • Address (string) --

            The DNS hostname of the node.

          • Port (integer) --

            The port number that the engine is listening on.

        • NodeType (string) --

          The cluster's node type

        • EngineVersion (string) --

          The Redis engine version used by the cluster

        • EnginePatchVersion (string) --

          The Redis engine patch version used by the cluster

        • ParameterGroupName (string) --

          The name of the parameter group used by the cluster

        • ParameterGroupStatus (string) --

          The status of the parameter group used by the cluster, for example 'active' or 'applying'.

        • SecurityGroups (list) --

          A list of security groups used by the cluster

          • (dict) --

            Represents a single security group and its status.

            • SecurityGroupId (string) --

              The identifier of the security group.

            • Status (string) --

              The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

        • SubnetGroupName (string) --

          The name of the subnet group used by the cluster

        • TLSEnabled (boolean) --

          A flag to indicate if In-transit encryption is enabled

        • KmsKeyId (string) --

          The ID of the KMS key used to encrypt the cluster

        • ARN (string) --

          The Amazon Resource Name (ARN) of the cluster.

        • SnsTopicArn (string) --

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

        • SnsTopicStatus (string) --

          The SNS topic must be in Active status to receive notifications

        • SnapshotRetentionLimit (integer) --

          The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        • MaintenanceWindow (string) --

          Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        • SnapshotWindow (string) --

          The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

        • ACLName (string) --

          The name of the Access Control List associated with this cluster.

        • AutoMinorVersionUpgrade (boolean) --

          When set to true, the cluster will automatically receive minor engine version upgrades after launch.

    • UnprocessedClusters (list) --

      The list of clusters where updates have not been applied.

      • (dict) --

        A cluster whose updates have failed

        • ClusterName (string) --

          The name of the cluster

        • ErrorType (string) --

          The error type associated with the update failure

        • ErrorMessage (string) --

          The error message associated with the update failure

ListTags (new) Link ¶

Lists all tags currently on a named resource. A tag is a key-value pair where the key and value are case-sensitive. You can use tags to categorize and track your MemoryDB resources. For more information, see Tagging your MemoryDB resources

See also: AWS API Documentation

Request Syntax

client.list_tags(
    ResourceArn='string'
)
type ResourceArn

string

param ResourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the resource for which you want the list of tags

rtype

dict

returns

Response Syntax

{
    'TagList': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • TagList (list) --

      A list of tags as key-value pairs.

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

DescribeSnapshots (new) Link ¶

Returns information about cluster snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cluster.

See also: AWS API Documentation

Request Syntax

client.describe_snapshots(
    ClusterName='string',
    SnapshotName='string',
    Source='string',
    NextToken='string',
    MaxResults=123,
    ShowDetail=True|False
)
type ClusterName

string

param ClusterName

A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cluster are described.

type SnapshotName

string

param SnapshotName

A user-supplied name of the snapshot. If this parameter is specified, only this named snapshot is described.

type Source

string

param Source

If set to system, the output shows snapshots that were automatically created by MemoryDB. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type ShowDetail

boolean

param ShowDetail

A Boolean value which if true, the shard configuration is included in the snapshot description.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'Snapshots': [
        {
            '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)
                    },
                ]
            }
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • Snapshots (list) --

      A list of snapshots. Each item in the list contains detailed information about one 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

          • 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

FailoverShard (new) Link ¶

Used to failover a shard

See also: AWS API Documentation

Request Syntax

client.failover_shard(
    ClusterName='string',
    ShardName='string'
)
type ClusterName

string

param ClusterName

[REQUIRED]

The cluster being failed over

type ShardName

string

param ShardName

[REQUIRED]

The name of the shard

rtype

dict

returns

Response Syntax

{
    'Cluster': {
        'Name': 'string',
        'Description': 'string',
        'Status': 'string',
        'PendingUpdates': {
            'Resharding': {
                'SlotMigration': {
                    'ProgressPercentage': 123.0
                }
            },
            'ACLs': {
                'ACLToApply': 'string'
            },
            'ServiceUpdates': [
                {
                    'ServiceUpdateName': 'string',
                    'Status': 'available'|'in-progress'|'complete'|'scheduled'
                },
            ]
        },
        'NumberOfShards': 123,
        'Shards': [
            {
                'Name': 'string',
                'Status': 'string',
                'Slots': 'string',
                'Nodes': [
                    {
                        'Name': 'string',
                        'Status': 'string',
                        'AvailabilityZone': 'string',
                        'CreateTime': datetime(2015, 1, 1),
                        'Endpoint': {
                            'Address': 'string',
                            'Port': 123
                        }
                    },
                ],
                'NumberOfNodes': 123
            },
        ],
        'AvailabilityMode': 'singleaz'|'multiaz',
        'ClusterEndpoint': {
            'Address': 'string',
            'Port': 123
        },
        'NodeType': 'string',
        'EngineVersion': 'string',
        'EnginePatchVersion': 'string',
        'ParameterGroupName': 'string',
        'ParameterGroupStatus': 'string',
        'SecurityGroups': [
            {
                'SecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'SubnetGroupName': 'string',
        'TLSEnabled': True|False,
        'KmsKeyId': 'string',
        'ARN': 'string',
        'SnsTopicArn': 'string',
        'SnsTopicStatus': 'string',
        'SnapshotRetentionLimit': 123,
        'MaintenanceWindow': 'string',
        'SnapshotWindow': 'string',
        'ACLName': 'string',
        'AutoMinorVersionUpgrade': True|False
    }
}

Response Structure

  • (dict) --

    • Cluster (dict) --

      The cluster being failed over

      • Name (string) --

        The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

      • Description (string) --

        A description of the cluster

      • Status (string) --

        The status of the cluster. For example, Available, Updating, Creating.

      • PendingUpdates (dict) --

        A group of settings that are currently being applied.

        • Resharding (dict) --

          The status of an online resharding operation.

          • SlotMigration (dict) --

            The status of the online resharding slot migration

            • ProgressPercentage (float) --

              The percentage of the slot migration that is complete.

        • ACLs (dict) --

          A list of ACLs associated with the cluster that are being updated

          • ACLToApply (string) --

            A list of ACLs pending to be applied.

        • ServiceUpdates (list) --

          A list of service updates being applied to the cluster

          • (dict) --

            Update action that has yet to be processed for the corresponding apply/stop request

            • ServiceUpdateName (string) --

              The unique ID of the service update

            • Status (string) --

              The status of the service update

      • NumberOfShards (integer) --

        The number of shards in the cluster

      • Shards (list) --

        A list of shards that are members of the cluster.

        • (dict) --

          Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

          • Name (string) --

            The name of the shard

          • Status (string) --

            The current state of this replication group - creating, available, modifying, deleting.

          • Slots (string) --

            The keyspace for this shard.

          • Nodes (list) --

            A list containing information about individual nodes within the shard

            • (dict) --

              Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

              • Name (string) --

                The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

              • Status (string) --

                The status of the service update on the node

              • AvailabilityZone (string) --

                The Availability Zone in which the node resides

              • CreateTime (datetime) --

                The date and time when the node was created.

              • Endpoint (dict) --

                The hostname for connecting to this node.

                • Address (string) --

                  The DNS hostname of the node.

                • Port (integer) --

                  The port number that the engine is listening on.

          • NumberOfNodes (integer) --

            The number of nodes in the shard

      • AvailabilityMode (string) --

        Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

      • ClusterEndpoint (dict) --

        The cluster's configuration endpoint

        • Address (string) --

          The DNS hostname of the node.

        • Port (integer) --

          The port number that the engine is listening on.

      • NodeType (string) --

        The cluster's node type

      • EngineVersion (string) --

        The Redis engine version used by the cluster

      • EnginePatchVersion (string) --

        The Redis engine patch version used by the cluster

      • ParameterGroupName (string) --

        The name of the parameter group used by the cluster

      • ParameterGroupStatus (string) --

        The status of the parameter group used by the cluster, for example 'active' or 'applying'.

      • SecurityGroups (list) --

        A list of security groups used by the cluster

        • (dict) --

          Represents a single security group and its status.

          • SecurityGroupId (string) --

            The identifier of the security group.

          • Status (string) --

            The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

      • SubnetGroupName (string) --

        The name of the subnet group used by the cluster

      • TLSEnabled (boolean) --

        A flag to indicate if In-transit encryption is enabled

      • KmsKeyId (string) --

        The ID of the KMS key used to encrypt the cluster

      • ARN (string) --

        The Amazon Resource Name (ARN) of the cluster.

      • SnsTopicArn (string) --

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

      • SnsTopicStatus (string) --

        The SNS topic must be in Active status to receive notifications

      • SnapshotRetentionLimit (integer) --

        The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

      • MaintenanceWindow (string) --

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

      • SnapshotWindow (string) --

        The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

      • ACLName (string) --

        The name of the Access Control List associated with this cluster.

      • AutoMinorVersionUpgrade (boolean) --

        When set to true, the cluster will automatically receive minor engine version upgrades after launch.

UpdateParameterGroup (new) Link ¶

Updates the parameters of a parameter group. You can modify up to 20 parameters in a single request by submitting a list parameter name and value pairs.

See also: AWS API Documentation

Request Syntax

client.update_parameter_group(
    ParameterGroupName='string',
    ParameterNameValues=[
        {
            'ParameterName': 'string',
            'ParameterValue': 'string'
        },
    ]
)
type ParameterGroupName

string

param ParameterGroupName

[REQUIRED]

The name of the parameter group to update.

type ParameterNameValues

list

param ParameterNameValues

[REQUIRED]

An array of parameter names and values for the parameter update. You must supply at least one parameter name and value; subsequent arguments are optional. A maximum of 20 parameters may be updated per request.

  • (dict) --

    Describes a name-value pair that is used to update the value of a parameter.

    • ParameterName (string) --

      The name of the parameter

    • ParameterValue (string) --

      The value of the parameter

rtype

dict

returns

Response Syntax

{
    'ParameterGroup': {
        'Name': 'string',
        'Family': 'string',
        'Description': 'string',
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ParameterGroup (dict) --

      The updated parameter group

      • Name (string) --

        The name of the parameter group

      • Family (string) --

        The name of the parameter group family that this parameter group is compatible with.

      • Description (string) --

        A description of the parameter group

      • ARN (string) --

        The Amazon Resource Name (ARN) of the parameter group

CopySnapshot (new) Link ¶

Makes a copy of an existing snapshot.

See also: AWS API Documentation

Request Syntax

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

string

param SourceSnapshotName

[REQUIRED]

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

type TargetSnapshotName

string

param TargetSnapshotName

[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.

type TargetBucket

string

param TargetBucket

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.

type KmsKeyId

string

param KmsKeyId

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

type Tags

list

param Tags

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.

rtype

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)
                },
            ]
        }
    }
}

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

        • 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

CreateCluster (new) Link ¶

Creates a cluster. All nodes in the cluster run the same protocol-compliant engine software.

See also: AWS API Documentation

Request Syntax

client.create_cluster(
    ClusterName='string',
    NodeType='string',
    ParameterGroupName='string',
    Description='string',
    NumShards=123,
    NumReplicasPerShard=123,
    SubnetGroupName='string',
    SecurityGroupIds=[
        'string',
    ],
    MaintenanceWindow='string',
    Port=123,
    SnsTopicArn='string',
    TLSEnabled=True|False,
    KmsKeyId='string',
    SnapshotArns=[
        'string',
    ],
    SnapshotName='string',
    SnapshotRetentionLimit=123,
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    SnapshotWindow='string',
    ACLName='string',
    EngineVersion='string',
    AutoMinorVersionUpgrade=True|False
)
type ClusterName

string

param ClusterName

[REQUIRED]

The name of the cluster. This value must be unique as it also serves as the cluster identifier.

type NodeType

string

param NodeType

[REQUIRED]

The compute and memory capacity of the nodes in the cluster.

type ParameterGroupName

string

param ParameterGroupName

The name of the parameter group associated with the cluster.

type Description

string

param Description

An optional description of the cluster.

type NumShards

integer

param NumShards

The number of shards the cluster will contain.

Clusters can have up to 500 shards, with your data partitioned across the shards. For example, you can choose to configure a 500 node cluster that ranges between 83 shards (one primary and 5 replicas per shard) and 500 shards (single primary and no replicas). Make sure there are enough available IP addresses to accommodate the increase. Common pitfalls include the subnets in the subnet group have too small a CIDR range or the subnets are shared and heavily used by other clusters.

type NumReplicasPerShard

integer

param NumReplicasPerShard

The number of replicas to apply to each shard. The limit is 5.

type SubnetGroupName

string

param SubnetGroupName

The name of the subnet group to be used for the cluster.

type SecurityGroupIds

list

param SecurityGroupIds

A list of security group names to associate with this cluster.

  • (string) --

type MaintenanceWindow

string

param MaintenanceWindow

Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

type Port

integer

param Port

The port number on which each of the nodes accepts connections.

type SnsTopicArn

string

param SnsTopicArn

The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

type TLSEnabled

boolean

param TLSEnabled

A flag to enable in-transit encryption on the cluster.

type KmsKeyId

string

param KmsKeyId

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

type SnapshotArns

list

param SnapshotArns

A list of Amazon Resource Names (ARN) that uniquely identify the RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new cluster. The Amazon S3 object name in the ARN cannot contain any commas.

  • (string) --

type SnapshotName

string

param SnapshotName

The name of a snapshot from which to restore data into the new cluster. The snapshot status changes to restoring while the new cluster is being created.

type SnapshotRetentionLimit

integer

param SnapshotRetentionLimit

The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

type Tags

list

param Tags

A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=myKey, Value=myKeyValue. You can include multiple tags as shown following: Key=myKey, Value=myKeyValue Key=mySecondKey, Value=mySecondKeyValue.

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

type SnapshotWindow

string

param SnapshotWindow

The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard.

Example: 05:00-09:00

If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

type ACLName

string

param ACLName

[REQUIRED]

The name of the Access Control List to associate with the cluster.

type EngineVersion

string

param EngineVersion

The version number of the Redis engine to be used for the cluster.

type AutoMinorVersionUpgrade

boolean

param AutoMinorVersionUpgrade

When set to true, the cluster will automatically receive minor engine version upgrades after launch.

rtype

dict

returns

Response Syntax

{
    'Cluster': {
        'Name': 'string',
        'Description': 'string',
        'Status': 'string',
        'PendingUpdates': {
            'Resharding': {
                'SlotMigration': {
                    'ProgressPercentage': 123.0
                }
            },
            'ACLs': {
                'ACLToApply': 'string'
            },
            'ServiceUpdates': [
                {
                    'ServiceUpdateName': 'string',
                    'Status': 'available'|'in-progress'|'complete'|'scheduled'
                },
            ]
        },
        'NumberOfShards': 123,
        'Shards': [
            {
                'Name': 'string',
                'Status': 'string',
                'Slots': 'string',
                'Nodes': [
                    {
                        'Name': 'string',
                        'Status': 'string',
                        'AvailabilityZone': 'string',
                        'CreateTime': datetime(2015, 1, 1),
                        'Endpoint': {
                            'Address': 'string',
                            'Port': 123
                        }
                    },
                ],
                'NumberOfNodes': 123
            },
        ],
        'AvailabilityMode': 'singleaz'|'multiaz',
        'ClusterEndpoint': {
            'Address': 'string',
            'Port': 123
        },
        'NodeType': 'string',
        'EngineVersion': 'string',
        'EnginePatchVersion': 'string',
        'ParameterGroupName': 'string',
        'ParameterGroupStatus': 'string',
        'SecurityGroups': [
            {
                'SecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'SubnetGroupName': 'string',
        'TLSEnabled': True|False,
        'KmsKeyId': 'string',
        'ARN': 'string',
        'SnsTopicArn': 'string',
        'SnsTopicStatus': 'string',
        'SnapshotRetentionLimit': 123,
        'MaintenanceWindow': 'string',
        'SnapshotWindow': 'string',
        'ACLName': 'string',
        'AutoMinorVersionUpgrade': True|False
    }
}

Response Structure

  • (dict) --

    • Cluster (dict) --

      The newly-created cluster.

      • Name (string) --

        The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

      • Description (string) --

        A description of the cluster

      • Status (string) --

        The status of the cluster. For example, Available, Updating, Creating.

      • PendingUpdates (dict) --

        A group of settings that are currently being applied.

        • Resharding (dict) --

          The status of an online resharding operation.

          • SlotMigration (dict) --

            The status of the online resharding slot migration

            • ProgressPercentage (float) --

              The percentage of the slot migration that is complete.

        • ACLs (dict) --

          A list of ACLs associated with the cluster that are being updated

          • ACLToApply (string) --

            A list of ACLs pending to be applied.

        • ServiceUpdates (list) --

          A list of service updates being applied to the cluster

          • (dict) --

            Update action that has yet to be processed for the corresponding apply/stop request

            • ServiceUpdateName (string) --

              The unique ID of the service update

            • Status (string) --

              The status of the service update

      • NumberOfShards (integer) --

        The number of shards in the cluster

      • Shards (list) --

        A list of shards that are members of the cluster.

        • (dict) --

          Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

          • Name (string) --

            The name of the shard

          • Status (string) --

            The current state of this replication group - creating, available, modifying, deleting.

          • Slots (string) --

            The keyspace for this shard.

          • Nodes (list) --

            A list containing information about individual nodes within the shard

            • (dict) --

              Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

              • Name (string) --

                The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

              • Status (string) --

                The status of the service update on the node

              • AvailabilityZone (string) --

                The Availability Zone in which the node resides

              • CreateTime (datetime) --

                The date and time when the node was created.

              • Endpoint (dict) --

                The hostname for connecting to this node.

                • Address (string) --

                  The DNS hostname of the node.

                • Port (integer) --

                  The port number that the engine is listening on.

          • NumberOfNodes (integer) --

            The number of nodes in the shard

      • AvailabilityMode (string) --

        Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

      • ClusterEndpoint (dict) --

        The cluster's configuration endpoint

        • Address (string) --

          The DNS hostname of the node.

        • Port (integer) --

          The port number that the engine is listening on.

      • NodeType (string) --

        The cluster's node type

      • EngineVersion (string) --

        The Redis engine version used by the cluster

      • EnginePatchVersion (string) --

        The Redis engine patch version used by the cluster

      • ParameterGroupName (string) --

        The name of the parameter group used by the cluster

      • ParameterGroupStatus (string) --

        The status of the parameter group used by the cluster, for example 'active' or 'applying'.

      • SecurityGroups (list) --

        A list of security groups used by the cluster

        • (dict) --

          Represents a single security group and its status.

          • SecurityGroupId (string) --

            The identifier of the security group.

          • Status (string) --

            The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

      • SubnetGroupName (string) --

        The name of the subnet group used by the cluster

      • TLSEnabled (boolean) --

        A flag to indicate if In-transit encryption is enabled

      • KmsKeyId (string) --

        The ID of the KMS key used to encrypt the cluster

      • ARN (string) --

        The Amazon Resource Name (ARN) of the cluster.

      • SnsTopicArn (string) --

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

      • SnsTopicStatus (string) --

        The SNS topic must be in Active status to receive notifications

      • SnapshotRetentionLimit (integer) --

        The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

      • MaintenanceWindow (string) --

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

      • SnapshotWindow (string) --

        The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

      • ACLName (string) --

        The name of the Access Control List associated with this cluster.

      • AutoMinorVersionUpgrade (boolean) --

        When set to true, the cluster will automatically receive minor engine version upgrades after launch.

DescribeSubnetGroups (new) Link ¶

Returns a list of subnet group descriptions. If a subnet group name is specified, the list contains only the description of that group.

See also: AWS API Documentation

Request Syntax

client.describe_subnet_groups(
    SubnetGroupName='string',
    MaxResults=123,
    NextToken='string'
)
type SubnetGroupName

string

param SubnetGroupName

The name of the subnet group to return details for.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'SubnetGroups': [
        {
            'Name': 'string',
            'Description': 'string',
            'VpcId': 'string',
            'Subnets': [
                {
                    'Identifier': 'string',
                    'AvailabilityZone': {
                        'Name': 'string'
                    }
                },
            ],
            'ARN': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • SubnetGroups (list) --

      A list of subnet groups. Each element in the list contains detailed information about one group.

      • (dict) --

        Represents the output of one of the following operations:

        • CreateSubnetGroup

        • UpdateSubnetGroup

        A subnet group is a collection of subnets (typically private) that you can designate for your clusters running in an Amazon Virtual Private Cloud (VPC) environment.

        • Name (string) --

          The name of the subnet group

        • Description (string) --

          A description of the subnet group

        • VpcId (string) --

          The Amazon Virtual Private Cloud identifier (VPC ID) of the subnet group.

        • Subnets (list) --

          A list of subnets associated with the subnet group.

          • (dict) --

            Represents the subnet associated with a cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with MemoryDB.

            • Identifier (string) --

              The unique identifier for the subnet.

            • AvailabilityZone (dict) --

              The Availability Zone where the subnet resides

              • Name (string) --

                The name of the Availability Zone.

        • ARN (string) --

          The ARN (Amazon Resource Name) of the subnet group.

DescribeUsers (new) Link ¶

Returns a list of users.

See also: AWS API Documentation

Request Syntax

client.describe_users(
    UserName='string',
    Filters=[
        {
            'Name': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    MaxResults=123,
    NextToken='string'
)
type UserName

string

param UserName

The name of the user

type Filters

list

param Filters

Filter to determine the list of users to return.

  • (dict) --

    Used to streamline results of a search based on the property being filtered.

    • Name (string) -- [REQUIRED]

      The property being filtered. For example, UserName.

    • Values (list) -- [REQUIRED]

      The property values to filter on. For example, "user-123".

      • (string) --

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'Users': [
        {
            'Name': 'string',
            'Status': 'string',
            'AccessString': 'string',
            'ACLNames': [
                'string',
            ],
            'MinimumEngineVersion': 'string',
            'Authentication': {
                'Type': 'password'|'no-password',
                'PasswordCount': 123
            },
            'ARN': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Users (list) --

      A list of users.

      • (dict) --

        You create users and assign them specific permissions by using an access string. You assign the users to Access Control Lists aligned with a specific role (administrators, human resources) that are then deployed to one or more MemoryDB clusters.

        • Name (string) --

          The name of the user

        • Status (string) --

          Indicates the user status. Can be "active", "modifying" or "deleting".

        • AccessString (string) --

          Access permissions string used for this user.

        • ACLNames (list) --

          The names of the Access Control Lists to which the user belongs

          • (string) --

        • MinimumEngineVersion (string) --

          The minimum engine version supported for the user

        • Authentication (dict) --

          Denotes whether the user requires a password to authenticate.

          • Type (string) --

            Indicates whether the user requires a password to authenticate.

          • PasswordCount (integer) --

            The number of passwords belonging to the user. The maximum is two.

        • ARN (string) --

          The Amazon Resource Name (ARN) of the user.

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

CreateUser (new) Link ¶

Creates a MemoryDB user. For more information, see Authenticating users with Access Contol Lists (ACLs).

See also: AWS API Documentation

Request Syntax

client.create_user(
    UserName='string',
    AuthenticationMode={
        'Type': 'password',
        'Passwords': [
            'string',
        ]
    },
    AccessString='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type UserName

string

param UserName

[REQUIRED]

The name of the user. This value must be unique as it also serves as the user identifier.

type AuthenticationMode

dict

param AuthenticationMode

[REQUIRED]

Denotes the user's authentication properties, such as whether it requires a password to authenticate.

  • Type (string) --

    Indicates whether the user requires a password to authenticate. All newly-created users require a password.

  • Passwords (list) --

    The password(s) used for authentication

    • (string) --

type AccessString

string

param AccessString

[REQUIRED]

Access permissions string used for this user.

type Tags

list

param Tags

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.

rtype

dict

returns

Response Syntax

{
    'User': {
        'Name': 'string',
        'Status': 'string',
        'AccessString': 'string',
        'ACLNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'Authentication': {
            'Type': 'password'|'no-password',
            'PasswordCount': 123
        },
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • User (dict) --

      The newly-created user.

      • Name (string) --

        The name of the user

      • Status (string) --

        Indicates the user status. Can be "active", "modifying" or "deleting".

      • AccessString (string) --

        Access permissions string used for this user.

      • ACLNames (list) --

        The names of the Access Control Lists to which the user belongs

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the user

      • Authentication (dict) --

        Denotes whether the user requires a password to authenticate.

        • Type (string) --

          Indicates whether the user requires a password to authenticate.

        • PasswordCount (integer) --

          The number of passwords belonging to the user. The maximum is two.

      • ARN (string) --

        The Amazon Resource Name (ARN) of the user.

DescribeEvents (new) Link ¶

Returns events related to clusters, security groups, and parameter groups. You can obtain events specific to a particular cluster, security group, or parameter group by providing the name as a parameter. By default, only the events occurring within the last hour are returned; however, you can retrieve up to 14 days' worth of events if necessary.

See also: AWS API Documentation

Request Syntax

client.describe_events(
    SourceName='string',
    SourceType='node'|'parameter-group'|'subnet-group'|'cluster'|'user'|'acl',
    StartTime=datetime(2015, 1, 1),
    EndTime=datetime(2015, 1, 1),
    Duration=123,
    MaxResults=123,
    NextToken='string'
)
type SourceName

string

param SourceName

The identifier of the event source for which events are returned. If not specified, all sources are included in the response.

type SourceType

string

param SourceType

The event source to retrieve events for. If no value is specified, all events are returned.

type StartTime

datetime

param StartTime

The beginning of the time interval to retrieve events for, specified in ISO 8601 format. Example: 2017-03-30T07:03:49.555Z

type EndTime

datetime

param EndTime

The end of the time interval for which to retrieve events, specified in ISO 8601 format. Example: 2017-03-30T07:03:49.555Z

type Duration

integer

param Duration

The number of minutes worth of events to retrieve.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'Events': [
        {
            'SourceName': 'string',
            'SourceType': 'node'|'parameter-group'|'subnet-group'|'cluster'|'user'|'acl',
            'Message': 'string',
            'Date': datetime(2015, 1, 1)
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • Events (list) --

      A list of events. Each element in the list contains detailed information about one event.

      • (dict) --

        Represents a single occurrence of something interesting within the system. Some examples of events are creating a cluster or adding or removing a node.

        • SourceName (string) --

          The name for the source of the event. For example, if the event occurred at the cluster level, the identifier would be the name of the cluster.

        • SourceType (string) --

          Specifies the origin of this event - a cluster, a parameter group, a security group, etc.

        • Message (string) --

          The text of the event.

        • Date (datetime) --

          The date and time when the event occurred.

CreateSnapshot (new) Link ¶

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

See also: AWS API Documentation

Request Syntax

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

string

param ClusterName

[REQUIRED]

The snapshot is created from this cluster.

type SnapshotName

string

param SnapshotName

[REQUIRED]

A name for the snapshot being created.

type KmsKeyId

string

param KmsKeyId

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

type Tags

list

param Tags

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.

rtype

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)
                },
            ]
        }
    }
}

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

UpdateUser (new) Link ¶

Changes user password(s) and/or access string.

See also: AWS API Documentation

Request Syntax

client.update_user(
    UserName='string',
    AuthenticationMode={
        'Type': 'password',
        'Passwords': [
            'string',
        ]
    },
    AccessString='string'
)
type UserName

string

param UserName

[REQUIRED]

The name of the user

type AuthenticationMode

dict

param AuthenticationMode

Denotes the user's authentication properties, such as whether it requires a password to authenticate.

  • Type (string) --

    Indicates whether the user requires a password to authenticate. All newly-created users require a password.

  • Passwords (list) --

    The password(s) used for authentication

    • (string) --

type AccessString

string

param AccessString

Access permissions string used for this user.

rtype

dict

returns

Response Syntax

{
    'User': {
        'Name': 'string',
        'Status': 'string',
        'AccessString': 'string',
        'ACLNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'Authentication': {
            'Type': 'password'|'no-password',
            'PasswordCount': 123
        },
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • User (dict) --

      The updated user

      • Name (string) --

        The name of the user

      • Status (string) --

        Indicates the user status. Can be "active", "modifying" or "deleting".

      • AccessString (string) --

        Access permissions string used for this user.

      • ACLNames (list) --

        The names of the Access Control Lists to which the user belongs

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the user

      • Authentication (dict) --

        Denotes whether the user requires a password to authenticate.

        • Type (string) --

          Indicates whether the user requires a password to authenticate.

        • PasswordCount (integer) --

          The number of passwords belonging to the user. The maximum is two.

      • ARN (string) --

        The Amazon Resource Name (ARN) of the user.

CreateACL (new) Link ¶

Creates an Access Control List. For more information, see Authenticating users with Access Contol Lists (ACLs).

See also: AWS API Documentation

Request Syntax

client.create_acl(
    ACLName='string',
    UserNames=[
        'string',
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type ACLName

string

param ACLName

[REQUIRED]

The name of the Access Control List.

type UserNames

list

param UserNames

The list of users that belong to the Access Control List.

  • (string) --

type Tags

list

param Tags

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.

rtype

dict

returns

Response Syntax

{
    'ACL': {
        'Name': 'string',
        'Status': 'string',
        'UserNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'PendingChanges': {
            'UserNamesToRemove': [
                'string',
            ],
            'UserNamesToAdd': [
                'string',
            ]
        },
        'Clusters': [
            'string',
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ACL (dict) --

      The newly-created Access Control List.

      • Name (string) --

        The name of the Access Control List

      • Status (string) --

        Indicates ACL status. Can be "creating", "active", "modifying", "deleting".

      • UserNames (list) --

        The list of user names that belong to the ACL.

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the ACL

      • PendingChanges (dict) --

        A list of updates being applied to the ACL.

        • UserNamesToRemove (list) --

          A list of user names being removed from the ACL

          • (string) --

        • UserNamesToAdd (list) --

          A list of users being added to the ACL

          • (string) --

      • Clusters (list) --

        A list of clusters associated with the ACL.

        • (string) --

      • ARN (string) --

        The Amazon Resource Name (ARN) of the ACL

DeleteCluster (new) Link ¶

Deletes a cluster. It also deletes all associated nodes and node endpoints

See also: AWS API Documentation

Request Syntax

client.delete_cluster(
    ClusterName='string',
    FinalSnapshotName='string'
)
type ClusterName

string

param ClusterName

[REQUIRED]

The name of the cluster to be deleted

type FinalSnapshotName

string

param FinalSnapshotName

The user-supplied name of a final cluster snapshot. This is the unique name that identifies the snapshot. MemoryDB creates the snapshot, and then deletes the cluster immediately afterward.

rtype

dict

returns

Response Syntax

{
    'Cluster': {
        'Name': 'string',
        'Description': 'string',
        'Status': 'string',
        'PendingUpdates': {
            'Resharding': {
                'SlotMigration': {
                    'ProgressPercentage': 123.0
                }
            },
            'ACLs': {
                'ACLToApply': 'string'
            },
            'ServiceUpdates': [
                {
                    'ServiceUpdateName': 'string',
                    'Status': 'available'|'in-progress'|'complete'|'scheduled'
                },
            ]
        },
        'NumberOfShards': 123,
        'Shards': [
            {
                'Name': 'string',
                'Status': 'string',
                'Slots': 'string',
                'Nodes': [
                    {
                        'Name': 'string',
                        'Status': 'string',
                        'AvailabilityZone': 'string',
                        'CreateTime': datetime(2015, 1, 1),
                        'Endpoint': {
                            'Address': 'string',
                            'Port': 123
                        }
                    },
                ],
                'NumberOfNodes': 123
            },
        ],
        'AvailabilityMode': 'singleaz'|'multiaz',
        'ClusterEndpoint': {
            'Address': 'string',
            'Port': 123
        },
        'NodeType': 'string',
        'EngineVersion': 'string',
        'EnginePatchVersion': 'string',
        'ParameterGroupName': 'string',
        'ParameterGroupStatus': 'string',
        'SecurityGroups': [
            {
                'SecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'SubnetGroupName': 'string',
        'TLSEnabled': True|False,
        'KmsKeyId': 'string',
        'ARN': 'string',
        'SnsTopicArn': 'string',
        'SnsTopicStatus': 'string',
        'SnapshotRetentionLimit': 123,
        'MaintenanceWindow': 'string',
        'SnapshotWindow': 'string',
        'ACLName': 'string',
        'AutoMinorVersionUpgrade': True|False
    }
}

Response Structure

  • (dict) --

    • Cluster (dict) --

      The cluster object that has been deleted

      • Name (string) --

        The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

      • Description (string) --

        A description of the cluster

      • Status (string) --

        The status of the cluster. For example, Available, Updating, Creating.

      • PendingUpdates (dict) --

        A group of settings that are currently being applied.

        • Resharding (dict) --

          The status of an online resharding operation.

          • SlotMigration (dict) --

            The status of the online resharding slot migration

            • ProgressPercentage (float) --

              The percentage of the slot migration that is complete.

        • ACLs (dict) --

          A list of ACLs associated with the cluster that are being updated

          • ACLToApply (string) --

            A list of ACLs pending to be applied.

        • ServiceUpdates (list) --

          A list of service updates being applied to the cluster

          • (dict) --

            Update action that has yet to be processed for the corresponding apply/stop request

            • ServiceUpdateName (string) --

              The unique ID of the service update

            • Status (string) --

              The status of the service update

      • NumberOfShards (integer) --

        The number of shards in the cluster

      • Shards (list) --

        A list of shards that are members of the cluster.

        • (dict) --

          Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

          • Name (string) --

            The name of the shard

          • Status (string) --

            The current state of this replication group - creating, available, modifying, deleting.

          • Slots (string) --

            The keyspace for this shard.

          • Nodes (list) --

            A list containing information about individual nodes within the shard

            • (dict) --

              Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

              • Name (string) --

                The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

              • Status (string) --

                The status of the service update on the node

              • AvailabilityZone (string) --

                The Availability Zone in which the node resides

              • CreateTime (datetime) --

                The date and time when the node was created.

              • Endpoint (dict) --

                The hostname for connecting to this node.

                • Address (string) --

                  The DNS hostname of the node.

                • Port (integer) --

                  The port number that the engine is listening on.

          • NumberOfNodes (integer) --

            The number of nodes in the shard

      • AvailabilityMode (string) --

        Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

      • ClusterEndpoint (dict) --

        The cluster's configuration endpoint

        • Address (string) --

          The DNS hostname of the node.

        • Port (integer) --

          The port number that the engine is listening on.

      • NodeType (string) --

        The cluster's node type

      • EngineVersion (string) --

        The Redis engine version used by the cluster

      • EnginePatchVersion (string) --

        The Redis engine patch version used by the cluster

      • ParameterGroupName (string) --

        The name of the parameter group used by the cluster

      • ParameterGroupStatus (string) --

        The status of the parameter group used by the cluster, for example 'active' or 'applying'.

      • SecurityGroups (list) --

        A list of security groups used by the cluster

        • (dict) --

          Represents a single security group and its status.

          • SecurityGroupId (string) --

            The identifier of the security group.

          • Status (string) --

            The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

      • SubnetGroupName (string) --

        The name of the subnet group used by the cluster

      • TLSEnabled (boolean) --

        A flag to indicate if In-transit encryption is enabled

      • KmsKeyId (string) --

        The ID of the KMS key used to encrypt the cluster

      • ARN (string) --

        The Amazon Resource Name (ARN) of the cluster.

      • SnsTopicArn (string) --

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

      • SnsTopicStatus (string) --

        The SNS topic must be in Active status to receive notifications

      • SnapshotRetentionLimit (integer) --

        The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

      • MaintenanceWindow (string) --

        Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

      • SnapshotWindow (string) --

        The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

      • ACLName (string) --

        The name of the Access Control List associated with this cluster.

      • AutoMinorVersionUpgrade (boolean) --

        When set to true, the cluster will automatically receive minor engine version upgrades after launch.

DescribeParameterGroups (new) Link ¶

Returns a list of parameter group descriptions. If a parameter group name is specified, the list contains only the descriptions for that group.

See also: AWS API Documentation

Request Syntax

client.describe_parameter_groups(
    ParameterGroupName='string',
    MaxResults=123,
    NextToken='string'
)
type ParameterGroupName

string

param ParameterGroupName

The name of a specific parameter group to return details for.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'ParameterGroups': [
        {
            'Name': 'string',
            'Family': 'string',
            'Description': 'string',
            'ARN': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • ParameterGroups (list) --

      A list of parameter groups. Each element in the list contains detailed information about one parameter group.

      • (dict) --

        Represents the output of a CreateParameterGroup operation. A parameter group represents a combination of specific values for the parameters that are passed to the engine software during startup.

        • Name (string) --

          The name of the parameter group

        • Family (string) --

          The name of the parameter group family that this parameter group is compatible with.

        • Description (string) --

          A description of the parameter group

        • ARN (string) --

          The Amazon Resource Name (ARN) of the parameter group

DeleteUser (new) Link ¶

Deletes a user. The user will be removed from all ACLs and in turn removed from all clusters.

See also: AWS API Documentation

Request Syntax

client.delete_user(
    UserName='string'
)
type UserName

string

param UserName

[REQUIRED]

The name of the user to delete

rtype

dict

returns

Response Syntax

{
    'User': {
        'Name': 'string',
        'Status': 'string',
        'AccessString': 'string',
        'ACLNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'Authentication': {
            'Type': 'password'|'no-password',
            'PasswordCount': 123
        },
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • User (dict) --

      The user object that has been deleted.

      • Name (string) --

        The name of the user

      • Status (string) --

        Indicates the user status. Can be "active", "modifying" or "deleting".

      • AccessString (string) --

        Access permissions string used for this user.

      • ACLNames (list) --

        The names of the Access Control Lists to which the user belongs

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the user

      • Authentication (dict) --

        Denotes whether the user requires a password to authenticate.

        • Type (string) --

          Indicates whether the user requires a password to authenticate.

        • PasswordCount (integer) --

          The number of passwords belonging to the user. The maximum is two.

      • ARN (string) --

        The Amazon Resource Name (ARN) of the user.

DeleteACL (new) Link ¶

Deletes an Access Control List. The ACL must first be disassociated from the cluster before it can be deleted. For more information, see Authenticating users with Access Contol Lists (ACLs).

See also: AWS API Documentation

Request Syntax

client.delete_acl(
    ACLName='string'
)
type ACLName

string

param ACLName

[REQUIRED]

The name of the Access Control List to delete

rtype

dict

returns

Response Syntax

{
    'ACL': {
        'Name': 'string',
        'Status': 'string',
        'UserNames': [
            'string',
        ],
        'MinimumEngineVersion': 'string',
        'PendingChanges': {
            'UserNamesToRemove': [
                'string',
            ],
            'UserNamesToAdd': [
                'string',
            ]
        },
        'Clusters': [
            'string',
        ],
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ACL (dict) --

      The Access Control List object that has been deleted.

      • Name (string) --

        The name of the Access Control List

      • Status (string) --

        Indicates ACL status. Can be "creating", "active", "modifying", "deleting".

      • UserNames (list) --

        The list of user names that belong to the ACL.

        • (string) --

      • MinimumEngineVersion (string) --

        The minimum engine version supported for the ACL

      • PendingChanges (dict) --

        A list of updates being applied to the ACL.

        • UserNamesToRemove (list) --

          A list of user names being removed from the ACL

          • (string) --

        • UserNamesToAdd (list) --

          A list of users being added to the ACL

          • (string) --

      • Clusters (list) --

        A list of clusters associated with the ACL.

        • (string) --

      • ARN (string) --

        The Amazon Resource Name (ARN) of the ACL

TagResource (new) Link ¶

A tag is a key-value pair where the key and value are case-sensitive. 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. For more information, see Resource-level permissions.

For example, you can use cost-allocation tags to your MemoryDB resources, Amazon generates a cost allocation report as a comma-separated value (CSV) file with your usage and costs aggregated by your tags. You can apply tags that represent business categories (such as cost centers, application names, or owners) to organize your costs across multiple services. For more information, see Using Cost Allocation Tags.

See also: AWS API Documentation

Request Syntax

client.tag_resource(
    ResourceArn='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type ResourceArn

string

param ResourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the resource to which the tags are to be added

type Tags

list

param Tags

[REQUIRED]

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.

rtype

dict

returns

Response Syntax

{
    'TagList': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • TagList (list) --

      A list of tags as key-value pairs.

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

DeleteSnapshot (new) Link ¶

Deletes an existing snapshot. When you receive a successful response from this operation, MemoryDB immediately begins deleting the snapshot; you cannot cancel or revert this operation.

See also: AWS API Documentation

Request Syntax

client.delete_snapshot(
    SnapshotName='string'
)
type SnapshotName

string

param SnapshotName

[REQUIRED]

The name of the snapshot to delete

rtype

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)
                },
            ]
        }
    }
}

Response Structure

  • (dict) --

    • Snapshot (dict) --

      The snapshot object that has been deleted.

      • 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

CreateParameterGroup (new) Link ¶

Creates a new MemoryDB parameter group. A parameter group is a collection of parameters and their values that are applied to all of the nodes in any cluster. For more information, see Configuring engine parameters using parameter groups.

See also: AWS API Documentation

Request Syntax

client.create_parameter_group(
    ParameterGroupName='string',
    Family='string',
    Description='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type ParameterGroupName

string

param ParameterGroupName

[REQUIRED]

The name of the parameter group.

type Family

string

param Family

[REQUIRED]

The name of the parameter group family that the parameter group can be used with.

type Description

string

param Description

An optional description of the parameter group.

type Tags

list

param Tags

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.

rtype

dict

returns

Response Syntax

{
    'ParameterGroup': {
        'Name': 'string',
        'Family': 'string',
        'Description': 'string',
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ParameterGroup (dict) --

      The newly-created parameter group.

      • Name (string) --

        The name of the parameter group

      • Family (string) --

        The name of the parameter group family that this parameter group is compatible with.

      • Description (string) --

        A description of the parameter group

      • ARN (string) --

        The Amazon Resource Name (ARN) of the parameter group

DescribeParameters (new) Link ¶

Returns the detailed parameter list for a particular parameter group.

See also: AWS API Documentation

Request Syntax

client.describe_parameters(
    ParameterGroupName='string',
    MaxResults=123,
    NextToken='string'
)
type ParameterGroupName

string

param ParameterGroupName

[REQUIRED]

he name of a specific parameter group to return details for.

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'Parameters': [
        {
            'Name': 'string',
            'Value': 'string',
            'Description': 'string',
            'DataType': 'string',
            'AllowedValues': 'string',
            'MinimumEngineVersion': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • Parameters (list) --

      A list of parameters specific to a particular parameter group. Each element in the list contains detailed information about one parameter.

      • (dict) --

        Describes an individual setting that controls some aspect of MemoryDB behavior.

        • Name (string) --

          The name of the parameter

        • Value (string) --

          The value of the parameter

        • Description (string) --

          A description of the parameter

        • DataType (string) --

          The parameter's data type

        • AllowedValues (string) --

          The valid range of values for the parameter.

        • MinimumEngineVersion (string) --

          The earliest engine version to which the parameter can apply.

ListAllowedNodeTypeUpdates (new) Link ¶

Lists all available node types that you can scale to from your cluster's current node type. When you use the UpdateCluster operation to scale your cluster, the value of the NodeType parameter must be one of the node types returned by this operation.

See also: AWS API Documentation

Request Syntax

client.list_allowed_node_type_updates(
    ClusterName='string'
)
type ClusterName

string

param ClusterName

[REQUIRED]

The name of the cluster you want to scale. MemoryDB uses the cluster name to identify the current node type being used by this cluster, and from that to create a list of node types you can scale up to.

rtype

dict

returns

Response Syntax

{
    'ScaleUpNodeTypes': [
        'string',
    ],
    'ScaleDownNodeTypes': [
        'string',
    ]
}

Response Structure

  • (dict) --

    • ScaleUpNodeTypes (list) --

      A list node types which you can use to scale up your cluster.

      • (string) --

    • ScaleDownNodeTypes (list) --

      A list node types which you can use to scale down your cluster.

      • (string) --

DeleteParameterGroup (new) Link ¶

Deletes the specified parameter group. You cannot delete a parameter group if it is associated with any clusters. You cannot delete the default parameter groups in your account.

See also: AWS API Documentation

Request Syntax

client.delete_parameter_group(
    ParameterGroupName='string'
)
type ParameterGroupName

string

param ParameterGroupName

[REQUIRED]

The name of the parameter group to delete.

rtype

dict

returns

Response Syntax

{
    'ParameterGroup': {
        'Name': 'string',
        'Family': 'string',
        'Description': 'string',
        'ARN': 'string'
    }
}

Response Structure

  • (dict) --

    • ParameterGroup (dict) --

      The parameter group that has been deleted.

      • Name (string) --

        The name of the parameter group

      • Family (string) --

        The name of the parameter group family that this parameter group is compatible with.

      • Description (string) --

        A description of the parameter group

      • ARN (string) --

        The Amazon Resource Name (ARN) of the parameter group

DescribeClusters (new) Link ¶

Returns information about all provisioned clusters if no cluster identifier is specified, or about a specific cluster if a cluster name is supplied.

See also: AWS API Documentation

Request Syntax

client.describe_clusters(
    ClusterName='string',
    MaxResults=123,
    NextToken='string',
    ShowShardDetails=True|False
)
type ClusterName

string

param ClusterName

The name of the cluster

type MaxResults

integer

param MaxResults

The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type NextToken

string

param NextToken

An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

type ShowShardDetails

boolean

param ShowShardDetails

An optional flag that can be included in the request to retrieve information about the individual shard(s).

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'Clusters': [
        {
            'Name': 'string',
            'Description': 'string',
            'Status': 'string',
            'PendingUpdates': {
                'Resharding': {
                    'SlotMigration': {
                        'ProgressPercentage': 123.0
                    }
                },
                'ACLs': {
                    'ACLToApply': 'string'
                },
                'ServiceUpdates': [
                    {
                        'ServiceUpdateName': 'string',
                        'Status': 'available'|'in-progress'|'complete'|'scheduled'
                    },
                ]
            },
            'NumberOfShards': 123,
            'Shards': [
                {
                    'Name': 'string',
                    'Status': 'string',
                    'Slots': 'string',
                    'Nodes': [
                        {
                            'Name': 'string',
                            'Status': 'string',
                            'AvailabilityZone': 'string',
                            'CreateTime': datetime(2015, 1, 1),
                            'Endpoint': {
                                'Address': 'string',
                                'Port': 123
                            }
                        },
                    ],
                    'NumberOfNodes': 123
                },
            ],
            'AvailabilityMode': 'singleaz'|'multiaz',
            'ClusterEndpoint': {
                'Address': 'string',
                'Port': 123
            },
            'NodeType': 'string',
            'EngineVersion': 'string',
            'EnginePatchVersion': 'string',
            'ParameterGroupName': 'string',
            'ParameterGroupStatus': 'string',
            'SecurityGroups': [
                {
                    'SecurityGroupId': 'string',
                    'Status': 'string'
                },
            ],
            'SubnetGroupName': 'string',
            'TLSEnabled': True|False,
            'KmsKeyId': 'string',
            'ARN': 'string',
            'SnsTopicArn': 'string',
            'SnsTopicStatus': 'string',
            'SnapshotRetentionLimit': 123,
            'MaintenanceWindow': 'string',
            'SnapshotWindow': 'string',
            'ACLName': 'string',
            'AutoMinorVersionUpgrade': True|False
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

    • Clusters (list) --

      A list of clusters

      • (dict) --

        Contains all of the attributes of a specific cluster.

        • Name (string) --

          The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.

        • Description (string) --

          A description of the cluster

        • Status (string) --

          The status of the cluster. For example, Available, Updating, Creating.

        • PendingUpdates (dict) --

          A group of settings that are currently being applied.

          • Resharding (dict) --

            The status of an online resharding operation.

            • SlotMigration (dict) --

              The status of the online resharding slot migration

              • ProgressPercentage (float) --

                The percentage of the slot migration that is complete.

          • ACLs (dict) --

            A list of ACLs associated with the cluster that are being updated

            • ACLToApply (string) --

              A list of ACLs pending to be applied.

          • ServiceUpdates (list) --

            A list of service updates being applied to the cluster

            • (dict) --

              Update action that has yet to be processed for the corresponding apply/stop request

              • ServiceUpdateName (string) --

                The unique ID of the service update

              • Status (string) --

                The status of the service update

        • NumberOfShards (integer) --

          The number of shards in the cluster

        • Shards (list) --

          A list of shards that are members of the cluster.

          • (dict) --

            Represents a collection of nodes in a cluster. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

            • Name (string) --

              The name of the shard

            • Status (string) --

              The current state of this replication group - creating, available, modifying, deleting.

            • Slots (string) --

              The keyspace for this shard.

            • Nodes (list) --

              A list containing information about individual nodes within the shard

              • (dict) --

                Represents an individual node within a cluster. Each node runs its own instance of the cluster's protocol-compliant caching software.

                • Name (string) --

                  The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster name, shard name and node name uniquely identifies every node used in a customer's Amazon account.

                • Status (string) --

                  The status of the service update on the node

                • AvailabilityZone (string) --

                  The Availability Zone in which the node resides

                • CreateTime (datetime) --

                  The date and time when the node was created.

                • Endpoint (dict) --

                  The hostname for connecting to this node.

                  • Address (string) --

                    The DNS hostname of the node.

                  • Port (integer) --

                    The port number that the engine is listening on.

            • NumberOfNodes (integer) --

              The number of nodes in the shard

        • AvailabilityMode (string) --

          Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).

        • ClusterEndpoint (dict) --

          The cluster's configuration endpoint

          • Address (string) --

            The DNS hostname of the node.

          • Port (integer) --

            The port number that the engine is listening on.

        • NodeType (string) --

          The cluster's node type

        • EngineVersion (string) --

          The Redis engine version used by the cluster

        • EnginePatchVersion (string) --

          The Redis engine patch version used by the cluster

        • ParameterGroupName (string) --

          The name of the parameter group used by the cluster

        • ParameterGroupStatus (string) --

          The status of the parameter group used by the cluster, for example 'active' or 'applying'.

        • SecurityGroups (list) --

          A list of security groups used by the cluster

          • (dict) --

            Represents a single security group and its status.

            • SecurityGroupId (string) --

              The identifier of the security group.

            • Status (string) --

              The status of the security group membership. The status changes whenever a security group is modified, or when the security groups assigned to a cluster are modified.

        • SubnetGroupName (string) --

          The name of the subnet group used by the cluster

        • TLSEnabled (boolean) --

          A flag to indicate if In-transit encryption is enabled

        • KmsKeyId (string) --

          The ID of the KMS key used to encrypt the cluster

        • ARN (string) --

          The Amazon Resource Name (ARN) of the cluster.

        • SnsTopicArn (string) --

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

        • SnsTopicStatus (string) --

          The SNS topic must be in Active status to receive notifications

        • SnapshotRetentionLimit (integer) --

          The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.

        • MaintenanceWindow (string) --

          Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.

        • SnapshotWindow (string) --

          The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time range.

        • ACLName (string) --

          The name of the Access Control List associated with this cluster.

        • AutoMinorVersionUpgrade (boolean) --

          When set to true, the cluster will automatically receive minor engine version upgrades after launch.