:doc:`drs <../../drs>` / Paginator / DescribeSourceServers

*********************
DescribeSourceServers
*********************



.. py:class:: drs.Paginator.DescribeSourceServers

  ::

    
    paginator = client.get_paginator('describe_source_servers')

  
  

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

    Creates an iterator that will paginate through responses from :py:meth:`drs.Client.describe_source_servers`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DescribeSourceServers>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          filters={
              'hardwareId': 'string',
              'sourceServerIDs': [
                  'string',
              ],
              'stagingAccountIDs': [
                  'string',
              ]
          },
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type filters: dict
    :param filters: 

      A set of filters by which to return Source Servers.

      

    
      - **hardwareId** *(string) --* 

        An ID that describes the hardware of the Source Server. This is either an EC2 instance id, a VMware uuid or a mac address.

        

      
      - **sourceServerIDs** *(list) --* 

        An array of Source Servers IDs that should be returned. An empty array means all Source Servers.

        

      
        - *(string) --* 

        
    
      - **stagingAccountIDs** *(list) --* 

        An array of staging account IDs that extended source servers belong to. An empty array means all source servers will be shown.

        

      
        - *(string) --* 

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

      
      ::

        {
            'items': [
                {
                    'agentVersion': 'string',
                    'arn': 'string',
                    'dataReplicationInfo': {
                        'dataReplicationError': {
                            'error': 'AGENT_NOT_SEEN'|'SNAPSHOTS_FAILURE'|'NOT_CONVERGING'|'UNSTABLE_NETWORK'|'FAILED_TO_CREATE_SECURITY_GROUP'|'FAILED_TO_LAUNCH_REPLICATION_SERVER'|'FAILED_TO_BOOT_REPLICATION_SERVER'|'FAILED_TO_AUTHENTICATE_WITH_SERVICE'|'FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE'|'FAILED_TO_CREATE_STAGING_DISKS'|'FAILED_TO_ATTACH_STAGING_DISKS'|'FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT'|'FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER'|'FAILED_TO_START_DATA_TRANSFER',
                            'rawError': 'string'
                        },
                        'dataReplicationInitiation': {
                            'nextAttemptDateTime': 'string',
                            'startDateTime': 'string',
                            'steps': [
                                {
                                    'name': 'WAIT'|'CREATE_SECURITY_GROUP'|'LAUNCH_REPLICATION_SERVER'|'BOOT_REPLICATION_SERVER'|'AUTHENTICATE_WITH_SERVICE'|'DOWNLOAD_REPLICATION_SOFTWARE'|'CREATE_STAGING_DISKS'|'ATTACH_STAGING_DISKS'|'PAIR_REPLICATION_SERVER_WITH_AGENT'|'CONNECT_AGENT_TO_REPLICATION_SERVER'|'START_DATA_TRANSFER',
                                    'status': 'NOT_STARTED'|'IN_PROGRESS'|'SUCCEEDED'|'FAILED'|'SKIPPED'
                                },
                            ]
                        },
                        'dataReplicationState': 'STOPPED'|'INITIATING'|'INITIAL_SYNC'|'BACKLOG'|'CREATING_SNAPSHOT'|'CONTINUOUS'|'PAUSED'|'RESCAN'|'STALLED'|'DISCONNECTED',
                        'etaDateTime': 'string',
                        'lagDuration': 'string',
                        'replicatedDisks': [
                            {
                                'backloggedStorageBytes': 123,
                                'deviceName': 'string',
                                'replicatedStorageBytes': 123,
                                'rescannedStorageBytes': 123,
                                'totalStorageBytes': 123,
                                'volumeStatus': 'REGULAR'|'CONTAINS_MARKETPLACE_PRODUCT_CODES'|'MISSING_VOLUME_ATTRIBUTES'|'MISSING_VOLUME_ATTRIBUTES_AND_PRECHECK_UNAVAILABLE'|'PENDING'
                            },
                        ],
                        'stagingAvailabilityZone': 'string',
                        'stagingOutpostArn': 'string'
                    },
                    'lastLaunchResult': 'NOT_STARTED'|'PENDING'|'SUCCEEDED'|'FAILED',
                    'lifeCycle': {
                        'addedToServiceDateTime': 'string',
                        'elapsedReplicationDuration': 'string',
                        'firstByteDateTime': 'string',
                        'lastLaunch': {
                            'initiated': {
                                'apiCallDateTime': 'string',
                                'jobID': 'string',
                                'type': 'RECOVERY'|'DRILL'
                            },
                            'status': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED'
                        },
                        'lastSeenByServiceDateTime': 'string'
                    },
                    'recoveryInstanceId': 'string',
                    'replicationDirection': 'FAILOVER'|'FAILBACK',
                    'reversedDirectionSourceServerArn': 'string',
                    'sourceCloudProperties': {
                        'originAccountID': 'string',
                        'originAvailabilityZone': 'string',
                        'originRegion': 'string',
                        'sourceOutpostArn': 'string'
                    },
                    'sourceNetworkID': 'string',
                    'sourceProperties': {
                        'cpus': [
                            {
                                'cores': 123,
                                'modelName': 'string'
                            },
                        ],
                        'disks': [
                            {
                                'bytes': 123,
                                'deviceName': 'string'
                            },
                        ],
                        'identificationHints': {
                            'awsInstanceID': 'string',
                            'fqdn': 'string',
                            'hostname': 'string',
                            'vmWareUuid': 'string'
                        },
                        'lastUpdatedDateTime': 'string',
                        'networkInterfaces': [
                            {
                                'ips': [
                                    'string',
                                ],
                                'isPrimary': True|False,
                                'macAddress': 'string'
                            },
                        ],
                        'os': {
                            'fullString': 'string'
                        },
                        'ramBytes': 123,
                        'recommendedInstanceType': 'string',
                        'supportsNitroInstances': True|False
                    },
                    'sourceServerID': 'string',
                    'stagingArea': {
                        'errorMessage': 'string',
                        'stagingAccountID': 'string',
                        'stagingSourceServerArn': 'string',
                        'status': 'EXTENDED'|'EXTENSION_ERROR'|'NOT_EXTENDED'
                    },
                    'tags': {
                        'string': 'string'
                    }
                },
            ],
            'NextToken': 'string'
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **items** *(list) --* 

          An array of Source Servers.

          
          

          - *(dict) --* 
            

            - **agentVersion** *(string) --* 

              The version of the DRS agent installed on the source server

              
            

            - **arn** *(string) --* 

              The ARN of the Source Server.

              
            

            - **dataReplicationInfo** *(dict) --* 

              The Data Replication Info of the Source Server.

              
              

              - **dataReplicationError** *(dict) --* 

                Error in data replication.

                
                

                - **error** *(string) --* 

                  Error in data replication.

                  
                

                - **rawError** *(string) --* 

                  Error in data replication.

                  
            
              

              - **dataReplicationInitiation** *(dict) --* 

                Information about whether the data replication has been initiated.

                
                

                - **nextAttemptDateTime** *(string) --* 

                  The date and time of the next attempt to initiate data replication.

                  
                

                - **startDateTime** *(string) --* 

                  The date and time of the current attempt to initiate data replication.

                  
                

                - **steps** *(list) --* 

                  The steps of the current attempt to initiate data replication.

                  
                  

                  - *(dict) --* 

                    Data replication initiation step.

                    
                    

                    - **name** *(string) --* 

                      The name of the step.

                      
                    

                    - **status** *(string) --* 

                      The status of the step.

                      
                
              
            
              

              - **dataReplicationState** *(string) --* 

                The state of the data replication.

                
              

              - **etaDateTime** *(string) --* 

                An estimate of when the data replication will be completed.

                
              

              - **lagDuration** *(string) --* 

                Data replication lag duration.

                
              

              - **replicatedDisks** *(list) --* 

                The disks that should be replicated.

                
                

                - *(dict) --* 

                  A disk that should be replicated.

                  
                  

                  - **backloggedStorageBytes** *(integer) --* 

                    The size of the replication backlog in bytes.

                    
                  

                  - **deviceName** *(string) --* 

                    The name of the device.

                    
                  

                  - **replicatedStorageBytes** *(integer) --* 

                    The amount of data replicated so far in bytes.

                    
                  

                  - **rescannedStorageBytes** *(integer) --* 

                    The amount of data to be rescanned in bytes.

                    
                  

                  - **totalStorageBytes** *(integer) --* 

                    The total amount of data to be replicated in bytes.

                    
                  

                  - **volumeStatus** *(string) --* 

                    The status of the volume.

                    
              
            
              

              - **stagingAvailabilityZone** *(string) --* 

                AWS Availability zone into which data is being replicated.

                
              

              - **stagingOutpostArn** *(string) --* 

                The ARN of the staging Outpost

                
          
            

            - **lastLaunchResult** *(string) --* 

              The status of the last recovery launch of this Source Server.

              
            

            - **lifeCycle** *(dict) --* 

              The lifecycle information of this Source Server.

              
              

              - **addedToServiceDateTime** *(string) --* 

                The date and time of when the Source Server was added to the service.

                
              

              - **elapsedReplicationDuration** *(string) --* 

                The amount of time that the Source Server has been replicating for.

                
              

              - **firstByteDateTime** *(string) --* 

                The date and time of the first byte that was replicated from the Source Server.

                
              

              - **lastLaunch** *(dict) --* 

                An object containing information regarding the last launch of the Source Server.

                
                

                - **initiated** *(dict) --* 

                  An object containing information regarding the initiation of the last launch of a Source Server.

                  
                  

                  - **apiCallDateTime** *(string) --* 

                    The date and time the last Source Server launch was initiated.

                    
                  

                  - **jobID** *(string) --* 

                    The ID of the Job that was used to last launch the Source Server.

                    
                  

                  - **type** *(string) --* 

                    The Job type that was used to last launch the Source Server.

                    
              
                

                - **status** *(string) --* 

                  Status of Source Server's last launch.

                  
            
              

              - **lastSeenByServiceDateTime** *(string) --* 

                The date and time this Source Server was last seen by the service.

                
          
            

            - **recoveryInstanceId** *(string) --* 

              The ID of the Recovery Instance associated with this Source Server.

              
            

            - **replicationDirection** *(string) --* 

              Replication direction of the Source Server.

              
            

            - **reversedDirectionSourceServerArn** *(string) --* 

              For EC2-originated Source Servers which have been failed over and then failed back, this value will mean the ARN of the Source Server on the opposite replication direction.

              
            

            - **sourceCloudProperties** *(dict) --* 

              Source cloud properties of the Source Server.

              
              

              - **originAccountID** *(string) --* 

                AWS Account ID for an EC2-originated Source Server.

                
              

              - **originAvailabilityZone** *(string) --* 

                AWS Availability Zone for an EC2-originated Source Server.

                
              

              - **originRegion** *(string) --* 

                AWS Region for an EC2-originated Source Server.

                
              

              - **sourceOutpostArn** *(string) --* 

                The ARN of the source Outpost

                
          
            

            - **sourceNetworkID** *(string) --* 

              ID of the Source Network which is protecting this Source Server's network.

              
            

            - **sourceProperties** *(dict) --* 

              The source properties of the Source Server.

              
              

              - **cpus** *(list) --* 

                An array of CPUs.

                
                

                - *(dict) --* 

                  Information about a server's CPU.

                  
                  

                  - **cores** *(integer) --* 

                    The number of CPU cores.

                    
                  

                  - **modelName** *(string) --* 

                    The model name of the CPU.

                    
              
            
              

              - **disks** *(list) --* 

                An array of disks.

                
                

                - *(dict) --* 

                  An object representing a data storage device on a server.

                  
                  

                  - **bytes** *(integer) --* 

                    The amount of storage on the disk in bytes.

                    
                  

                  - **deviceName** *(string) --* 

                    The disk or device name.

                    
              
            
              

              - **identificationHints** *(dict) --* 

                Hints used to uniquely identify a machine.

                
                

                - **awsInstanceID** *(string) --* 

                  AWS Instance ID identification hint.

                  
                

                - **fqdn** *(string) --* 

                  Fully Qualified Domain Name identification hint.

                  
                

                - **hostname** *(string) --* 

                  Hostname identification hint.

                  
                

                - **vmWareUuid** *(string) --* 

                  vCenter VM path identification hint.

                  
            
              

              - **lastUpdatedDateTime** *(string) --* 

                The date and time the Source Properties were last updated on.

                
              

              - **networkInterfaces** *(list) --* 

                An array of network interfaces.

                
                

                - *(dict) --* 

                  Network interface.

                  
                  

                  - **ips** *(list) --* 

                    Network interface IPs.

                    
                    

                    - *(string) --* 
                
                  

                  - **isPrimary** *(boolean) --* 

                    Whether this is the primary network interface.

                    
                  

                  - **macAddress** *(string) --* 

                    The MAC address of the network interface.

                    
              
            
              

              - **os** *(dict) --* 

                Operating system.

                
                

                - **fullString** *(string) --* 

                  The long name of the Operating System.

                  
            
              

              - **ramBytes** *(integer) --* 

                The amount of RAM in bytes.

                
              

              - **recommendedInstanceType** *(string) --* 

                The recommended EC2 instance type that will be used when recovering the Source Server.

                
              

              - **supportsNitroInstances** *(boolean) --* 

                Are EC2 nitro instance types supported when recovering the Source Server.

                
          
            

            - **sourceServerID** *(string) --* 

              The ID of the Source Server.

              
            

            - **stagingArea** *(dict) --* 

              The staging area of the source server.

              
              

              - **errorMessage** *(string) --* 

                Shows an error message that occurred when DRS tried to access the staging source server. In this case StagingArea$status will have value EXTENSION_ERROR

                
              

              - **stagingAccountID** *(string) --* 

                Account ID of the account to which source server belongs. If this source server is extended - shows Account ID of staging source server.

                
              

              - **stagingSourceServerArn** *(string) --* 

                Arn of the staging source server if this source server is extended

                
              

              - **status** *(string) --* 

                Status of Source server extension. Possible values: (a) NOT_EXTENDED - This is a source server that is replicating in the current account. (b) EXTENDED - Source server is extended from a staging source server. In this case, the value of stagingSourceServerArn is pointing to the Arn of the source server in the staging account. (c) EXTENSION_ERROR - Some issue occurred when accessing staging source server. In this case, errorMessage field will contain an error message that explains what happened.

                
          
            

            - **tags** *(dict) --* 

              The tags associated with the Source Server.

              
              

              - *(string) --* 
                

                - *(string) --* 
          
        
        
      
        

        - **NextToken** *(string) --* 

          A token to resume pagination.

          
    