:doc:`MemoryDB <../../memorydb>` / Paginator / DescribeClusters

****************
DescribeClusters
****************



.. py:class:: MemoryDB.Paginator.DescribeClusters

  ::

    
    paginator = client.get_paginator('describe_clusters')

  
  

  .. py:method:: paginate(**kwargs)

    Creates an iterator that will paginate through responses from :py:meth:`MemoryDB.Client.describe_clusters`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/memorydb-2021-01-01/DescribeClusters>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          ClusterName='string',
          ShowShardDetails=True|False,
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type ClusterName: string
    :param ClusterName: 

      The name of the cluster.

      

    
    :type ShowShardDetails: boolean
    :param ShowShardDetails: 

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

      

    
    :type PaginationConfig: dict
    :param PaginationConfig: 

      A dictionary that provides parameters to control pagination.

      

    
      - **MaxItems** *(integer) --* 

        The total number of items to return. If the total number of items available is more than the value specified in max-items then a ``NextToken`` will be provided in the output that you can use to resume pagination.

        

      
      - **PageSize** *(integer) --* 

        The size of each page.

        

      
      - **StartingToken** *(string) --* 

        A token to specify where to start paginating. This is the ``NextToken`` from a previous response.

        

      
    
    
    :rtype: dict
    :returns: 
      
      **Response Syntax**

      
      ::

        {
            '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'
                            },
                        ]
                    },
                    'MultiRegionClusterName': 'string',
                    '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',
                    'Engine': '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,
                    'DataTiering': 'true'|'false',
                    'NetworkType': 'ipv4'|'ipv6'|'dual_stack',
                    'IpDiscovery': 'ipv4'|'ipv6'
                },
            ]
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **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

                    
              
            
          
            

            - **MultiRegionClusterName** *(string) --* 

              The name of the multi-Region cluster that this cluster belongs to.

              
            

            - **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

              
            

            - **Engine** *(string) --* 

              The name of the engine used by the cluster.

              
            

            - **EngineVersion** *(string) --* 

              The Redis OSS engine version used by the cluster

              
            

            - **EnginePatchVersion** *(string) --* 

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

              
            

            - **DataTiering** *(string) --* 

              Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter must be set when using r6gd nodes. For more information, see `Data tiering <https://docs.aws.amazon.com/memorydb/latest/devguide/data-tiering.html>`__.

              
            

            - **NetworkType** *(string) --* 

              The IP address type for the cluster. Returns 'ipv4' for IPv4 only, 'ipv6' for IPv6 only, or 'dual-stack' if the cluster supports both IPv4 and IPv6 addressing.

              
            

            - **IpDiscovery** *(string) --* 

              The mechanism that the cluster uses to discover IP addresses. Returns 'ipv4' when DNS endpoints resolve to IPv4 addresses, or 'ipv6' when DNS endpoints resolve to IPv6 addresses.

              
        
      
    