drs / Client / describe_source_servers

describe_source_servers#

drs.Client.describe_source_servers(**kwargs)#

Lists all Source Servers or multiple Source Servers filtered by ID.

See also: AWS API Documentation

Request Syntax

response = client.describe_source_servers(
    filters={
        'hardwareId': 'string',
        'sourceServerIDs': [
            'string',
        ],
        'stagingAccountIDs': [
            'string',
        ]
    },
    maxResults=123,
    nextToken='string'
)
Parameters:
  • filters (dict) –

    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) –

  • maxResults (integer) – Maximum number of Source Servers to retrieve.

  • nextToken (string) – The token of the next Source Server to retrieve.

Return type:

dict

Returns:

Response Syntax

{
    'items': [
        {
            '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
                    },
                ],
                'stagingAvailabilityZone': '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'
            },
            '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) –

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

          • stagingAvailabilityZone (string) –

            AWS Availability zone into which data is being replicated.

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

        • 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) –

      The token of the next Source Server to retrieve.

Exceptions

  • drs.Client.exceptions.InternalServerException

  • drs.Client.exceptions.ThrottlingException

  • drs.Client.exceptions.ValidationException

  • drs.Client.exceptions.UninitializedAccountException