Elastic Disaster Recovery Service

2023/06/13 - Elastic Disaster Recovery Service - 8 new 19 updated api methods

Changes  Added APIs to support network replication and recovery using AWS Elastic Disaster Recovery.

StopSourceNetworkReplication (new) Link ¶

Stops replication for a Source Network. This action would make the Source Network unprotected.

See also: AWS API Documentation

Request Syntax

client.stop_source_network_replication(
    sourceNetworkID='string'
)
type sourceNetworkID

string

param sourceNetworkID

[REQUIRED]

ID of the Source Network to stop replication.

rtype

dict

returns

Response Syntax

{
    'sourceNetwork': {
        'arn': 'string',
        'cfnStackName': 'string',
        'lastRecovery': {
            'apiCallDateTime': datetime(2015, 1, 1),
            'jobID': 'string',
            'lastRecoveryResult': 'NOT_STARTED'|'IN_PROGRESS'|'SUCCESS'|'FAIL'|'PARTIAL_SUCCESS'|'ASSOCIATE_SUCCESS'|'ASSOCIATE_FAIL'
        },
        'launchedVpcID': 'string',
        'replicationStatus': 'STOPPED'|'IN_PROGRESS'|'PROTECTED'|'ERROR',
        'replicationStatusDetails': 'string',
        'sourceAccountID': 'string',
        'sourceNetworkID': 'string',
        'sourceRegion': 'string',
        'sourceVpcID': 'string',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • sourceNetwork (dict) --

      Source Network which was requested to stop replication.

      • arn (string) --

        The ARN of the Source Network.

      • cfnStackName (string) --

        CloudFormation stack name that was deployed for recovering the Source Network.

      • lastRecovery (dict) --

        An object containing information regarding the last recovery of the Source Network.

        • apiCallDateTime (datetime) --

          The date and time the last Source Network recovery was initiated.

        • jobID (string) --

          The ID of the Job that was used to last recover the Source Network.

        • lastRecoveryResult (string) --

          The status of the last recovery status of this Source Network.

      • launchedVpcID (string) --

        ID of the recovered VPC following Source Network recovery.

      • replicationStatus (string) --

        Status of Source Network Replication. Possible values: (a) STOPPED - Source Network is not replicating. (b) IN_PROGRESS - Source Network is being replicated. (c) PROTECTED - Source Network was replicated successfully and is being synchronized for changes. (d) ERROR - Source Network replication has failed

      • replicationStatusDetails (string) --

        Error details in case Source Network replication status is ERROR.

      • sourceAccountID (string) --

        Account ID containing the VPC protected by the Source Network.

      • sourceNetworkID (string) --

        Source Network ID.

      • sourceRegion (string) --

        Region containing the VPC protected by the Source Network.

      • sourceVpcID (string) --

        VPC ID protected by the Source Network.

      • tags (dict) --

        A list of tags associated with the Source Network.

        • (string) --

          • (string) --

StartSourceNetworkRecovery (new) Link ¶

Deploy VPC for the specified Source Network and modify launch templates to use this network. The VPC will be deployed using a dedicated CloudFormation stack.

See also: AWS API Documentation

Request Syntax

client.start_source_network_recovery(
    deployAsNew=True|False,
    sourceNetworks=[
        {
            'cfnStackName': 'string',
            'sourceNetworkID': 'string'
        },
    ],
    tags={
        'string': 'string'
    }
)
type deployAsNew

boolean

param deployAsNew

Don't update existing CloudFormation Stack, recover the network using a new stack.

type sourceNetworks

list

param sourceNetworks

[REQUIRED]

The Source Networks that we want to start a Recovery Job for.

  • (dict) --

    An object representing the Source Network to recover.

    • cfnStackName (string) --

      CloudFormation stack name to be used for recovering the network.

    • sourceNetworkID (string) -- [REQUIRED]

      The ID of the Source Network you want to recover.

type tags

dict

param tags

The tags to be associated with the Source Network recovery Job.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
        'jobID': 'string',
        'participatingResources': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'participatingResourceID': {
                    'sourceNetworkID': 'string'
                }
            },
        ],
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'recoveryInstanceID': 'string',
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
    }
}

Response Structure

  • (dict) --

    • job (dict) --

      The Source Network recovery Job.

      • arn (string) --

        The ARN of a Job.

      • creationDateTime (string) --

        The date and time of when the Job was created.

      • endDateTime (string) --

        The date and time of when the Job ended.

      • initiatedBy (string) --

        A string representing who initiated the Job.

      • jobID (string) --

        The ID of the Job.

      • participatingResources (list) --

        A list of resources that the Job is acting upon.

        • (dict) --

          Represents a resource participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating resource.

          • participatingResourceID (dict) --

            The ID of a participating resource.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkID (string) --

              Source Network ID.

      • participatingServers (list) --

        A list of servers that the Job is acting upon.

        • (dict) --

          Represents a server participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating server.

          • recoveryInstanceID (string) --

            The Recovery Instance ID of a participating server.

          • sourceServerID (string) --

            The Source Server ID of a participating server.

      • status (string) --

        The status of the Job.

      • tags (dict) --

        A list of tags associated with the Job.

        • (string) --

          • (string) --

      • type (string) --

        The type of the Job.

CreateSourceNetwork (new) Link ¶

Create a new Source Network resource for a provided VPC ID.

See also: AWS API Documentation

Request Syntax

client.create_source_network(
    originAccountID='string',
    originRegion='string',
    tags={
        'string': 'string'
    },
    vpcID='string'
)
type originAccountID

string

param originAccountID

[REQUIRED]

Account containing the VPC to protect.

type originRegion

string

param originRegion

[REQUIRED]

Region containing the VPC to protect.

type tags

dict

param tags

A set of tags to be associated with the Source Network resource.

  • (string) --

    • (string) --

type vpcID

string

param vpcID

[REQUIRED]

Which VPC ID to protect.

rtype

dict

returns

Response Syntax

{
    'sourceNetworkID': 'string'
}

Response Structure

  • (dict) --

    • sourceNetworkID (string) --

      ID of the created Source Network.

StartSourceNetworkReplication (new) Link ¶

Starts replication for a Source Network. This action would make the Source Network protected.

See also: AWS API Documentation

Request Syntax

client.start_source_network_replication(
    sourceNetworkID='string'
)
type sourceNetworkID

string

param sourceNetworkID

[REQUIRED]

ID of the Source Network to replicate.

rtype

dict

returns

Response Syntax

{
    'sourceNetwork': {
        'arn': 'string',
        'cfnStackName': 'string',
        'lastRecovery': {
            'apiCallDateTime': datetime(2015, 1, 1),
            'jobID': 'string',
            'lastRecoveryResult': 'NOT_STARTED'|'IN_PROGRESS'|'SUCCESS'|'FAIL'|'PARTIAL_SUCCESS'|'ASSOCIATE_SUCCESS'|'ASSOCIATE_FAIL'
        },
        'launchedVpcID': 'string',
        'replicationStatus': 'STOPPED'|'IN_PROGRESS'|'PROTECTED'|'ERROR',
        'replicationStatusDetails': 'string',
        'sourceAccountID': 'string',
        'sourceNetworkID': 'string',
        'sourceRegion': 'string',
        'sourceVpcID': 'string',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • sourceNetwork (dict) --

      Source Network which was requested for replication.

      • arn (string) --

        The ARN of the Source Network.

      • cfnStackName (string) --

        CloudFormation stack name that was deployed for recovering the Source Network.

      • lastRecovery (dict) --

        An object containing information regarding the last recovery of the Source Network.

        • apiCallDateTime (datetime) --

          The date and time the last Source Network recovery was initiated.

        • jobID (string) --

          The ID of the Job that was used to last recover the Source Network.

        • lastRecoveryResult (string) --

          The status of the last recovery status of this Source Network.

      • launchedVpcID (string) --

        ID of the recovered VPC following Source Network recovery.

      • replicationStatus (string) --

        Status of Source Network Replication. Possible values: (a) STOPPED - Source Network is not replicating. (b) IN_PROGRESS - Source Network is being replicated. (c) PROTECTED - Source Network was replicated successfully and is being synchronized for changes. (d) ERROR - Source Network replication has failed

      • replicationStatusDetails (string) --

        Error details in case Source Network replication status is ERROR.

      • sourceAccountID (string) --

        Account ID containing the VPC protected by the Source Network.

      • sourceNetworkID (string) --

        Source Network ID.

      • sourceRegion (string) --

        Region containing the VPC protected by the Source Network.

      • sourceVpcID (string) --

        VPC ID protected by the Source Network.

      • tags (dict) --

        A list of tags associated with the Source Network.

        • (string) --

          • (string) --

DescribeSourceNetworks (new) Link ¶

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

See also: AWS API Documentation

Request Syntax

client.describe_source_networks(
    filters={
        'originAccountID': 'string',
        'originRegion': 'string',
        'sourceNetworkIDs': [
            'string',
        ]
    },
    maxResults=123,
    nextToken='string'
)
type filters

dict

param filters

A set of filters by which to return Source Networks.

  • originAccountID (string) --

    Filter Source Networks by account ID containing the protected VPCs.

  • originRegion (string) --

    Filter Source Networks by the region containing the protected VPCs.

  • sourceNetworkIDs (list) --

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

    • (string) --

type maxResults

integer

param maxResults

Maximum number of Source Networks to retrieve.

type nextToken

string

param nextToken

The token of the next Source Networks to retrieve.

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'arn': 'string',
            'cfnStackName': 'string',
            'lastRecovery': {
                'apiCallDateTime': datetime(2015, 1, 1),
                'jobID': 'string',
                'lastRecoveryResult': 'NOT_STARTED'|'IN_PROGRESS'|'SUCCESS'|'FAIL'|'PARTIAL_SUCCESS'|'ASSOCIATE_SUCCESS'|'ASSOCIATE_FAIL'
            },
            'launchedVpcID': 'string',
            'replicationStatus': 'STOPPED'|'IN_PROGRESS'|'PROTECTED'|'ERROR',
            'replicationStatusDetails': 'string',
            'sourceAccountID': 'string',
            'sourceNetworkID': 'string',
            'sourceRegion': 'string',
            'sourceVpcID': 'string',
            'tags': {
                'string': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      An array of Source Networks.

      • (dict) --

        The ARN of the Source Network.

        • arn (string) --

          The ARN of the Source Network.

        • cfnStackName (string) --

          CloudFormation stack name that was deployed for recovering the Source Network.

        • lastRecovery (dict) --

          An object containing information regarding the last recovery of the Source Network.

          • apiCallDateTime (datetime) --

            The date and time the last Source Network recovery was initiated.

          • jobID (string) --

            The ID of the Job that was used to last recover the Source Network.

          • lastRecoveryResult (string) --

            The status of the last recovery status of this Source Network.

        • launchedVpcID (string) --

          ID of the recovered VPC following Source Network recovery.

        • replicationStatus (string) --

          Status of Source Network Replication. Possible values: (a) STOPPED - Source Network is not replicating. (b) IN_PROGRESS - Source Network is being replicated. (c) PROTECTED - Source Network was replicated successfully and is being synchronized for changes. (d) ERROR - Source Network replication has failed

        • replicationStatusDetails (string) --

          Error details in case Source Network replication status is ERROR.

        • sourceAccountID (string) --

          Account ID containing the VPC protected by the Source Network.

        • sourceNetworkID (string) --

          Source Network ID.

        • sourceRegion (string) --

          Region containing the VPC protected by the Source Network.

        • sourceVpcID (string) --

          VPC ID protected by the Source Network.

        • tags (dict) --

          A list of tags associated with the Source Network.

          • (string) --

            • (string) --

    • nextToken (string) --

      The token of the next Source Networks to retrieve.

AssociateSourceNetworkStack (new) Link ¶

Associate a Source Network to an existing CloudFormation Stack and modify launch templates to use this network. Can be used for reverting to previously deployed CloudFormation stacks.

See also: AWS API Documentation

Request Syntax

client.associate_source_network_stack(
    cfnStackName='string',
    sourceNetworkID='string'
)
type cfnStackName

string

param cfnStackName

[REQUIRED]

CloudFormation template to associate with a Source Network.

type sourceNetworkID

string

param sourceNetworkID

[REQUIRED]

The Source Network ID to associate with CloudFormation template.

rtype

dict

returns

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
        'jobID': 'string',
        'participatingResources': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'participatingResourceID': {
                    'sourceNetworkID': 'string'
                }
            },
        ],
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'recoveryInstanceID': 'string',
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
    }
}

Response Structure

  • (dict) --

    • job (dict) --

      The Source Network association Job.

      • arn (string) --

        The ARN of a Job.

      • creationDateTime (string) --

        The date and time of when the Job was created.

      • endDateTime (string) --

        The date and time of when the Job ended.

      • initiatedBy (string) --

        A string representing who initiated the Job.

      • jobID (string) --

        The ID of the Job.

      • participatingResources (list) --

        A list of resources that the Job is acting upon.

        • (dict) --

          Represents a resource participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating resource.

          • participatingResourceID (dict) --

            The ID of a participating resource.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkID (string) --

              Source Network ID.

      • participatingServers (list) --

        A list of servers that the Job is acting upon.

        • (dict) --

          Represents a server participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating server.

          • recoveryInstanceID (string) --

            The Recovery Instance ID of a participating server.

          • sourceServerID (string) --

            The Source Server ID of a participating server.

      • status (string) --

        The status of the Job.

      • tags (dict) --

        A list of tags associated with the Job.

        • (string) --

          • (string) --

      • type (string) --

        The type of the Job.

DeleteSourceNetwork (new) Link ¶

Delete Source Network resource.

See also: AWS API Documentation

Request Syntax

client.delete_source_network(
    sourceNetworkID='string'
)
type sourceNetworkID

string

param sourceNetworkID

[REQUIRED]

ID of the Source Network to delete.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ExportSourceNetworkCfnTemplate (new) Link ¶

Export the Source Network CloudFormation template to an S3 bucket.

See also: AWS API Documentation

Request Syntax

client.export_source_network_cfn_template(
    sourceNetworkID='string'
)
type sourceNetworkID

string

param sourceNetworkID

[REQUIRED]

The Source Network ID to export its CloudFormation template to an S3 bucket.

rtype

dict

returns

Response Syntax

{
    's3DestinationUrl': 'string'
}

Response Structure

  • (dict) --

    • s3DestinationUrl (string) --

      S3 bucket URL where the Source Network CloudFormation template was exported to.

CreateExtendedSourceServer (updated) Link ¶
Changes (response)
{'sourceServer': {'sourceNetworkID': 'string'}}

Create an extended source server in the target Account based on the source server in staging account.

See also: AWS API Documentation

Request Syntax

client.create_extended_source_server(
    sourceServerArn='string',
    tags={
        'string': 'string'
    }
)
type sourceServerArn

string

param sourceServerArn

[REQUIRED]

This defines the ARN of the source server in staging Account based on which you want to create an extended source server.

type tags

dict

param tags

A list of tags associated with the extended source server.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'sourceServer': {
        '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'
        },
        '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'
        }
    }
}

Response Structure

  • (dict) --

    • sourceServer (dict) --

      Created extended 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.

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

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

CreateLaunchConfigurationTemplate (updated) Link ¶
Changes (request, response)
Request
{'exportBucketArn': 'string'}
Response
{'launchConfigurationTemplate': {'exportBucketArn': 'string'}}

Creates a new Launch Configuration Template.

See also: AWS API Documentation

Request Syntax

client.create_launch_configuration_template(
    copyPrivateIp=True|False,
    copyTags=True|False,
    exportBucketArn='string',
    launchDisposition='STOPPED'|'STARTED',
    licensing={
        'osByol': True|False
    },
    tags={
        'string': 'string'
    },
    targetInstanceTypeRightSizingMethod='NONE'|'BASIC'
)
type copyPrivateIp

boolean

param copyPrivateIp

Copy private IP.

type copyTags

boolean

param copyTags

Copy tags.

type exportBucketArn

string

param exportBucketArn

S3 bucket ARN to export Source Network templates.

type launchDisposition

string

param launchDisposition

Launch disposition.

type licensing

dict

param licensing

Licensing.

  • osByol (boolean) --

    Whether to enable "Bring your own license" or not.

type tags

dict

param tags

Request to associate tags during creation of a Launch Configuration Template.

  • (string) --

    • (string) --

type targetInstanceTypeRightSizingMethod

string

param targetInstanceTypeRightSizingMethod

Target instance type right-sizing method.

rtype

dict

returns

Response Syntax

{
    'launchConfigurationTemplate': {
        'arn': 'string',
        'copyPrivateIp': True|False,
        'copyTags': True|False,
        'exportBucketArn': 'string',
        'launchConfigurationTemplateID': 'string',
        'launchDisposition': 'STOPPED'|'STARTED',
        'licensing': {
            'osByol': True|False
        },
        'tags': {
            'string': 'string'
        },
        'targetInstanceTypeRightSizingMethod': 'NONE'|'BASIC'
    }
}

Response Structure

  • (dict) --

    • launchConfigurationTemplate (dict) --

      Created Launch Configuration Template.

      • arn (string) --

        ARN of the Launch Configuration Template.

      • copyPrivateIp (boolean) --

        Copy private IP.

      • copyTags (boolean) --

        Copy tags.

      • exportBucketArn (string) --

        S3 bucket ARN to export Source Network templates.

      • launchConfigurationTemplateID (string) --

        ID of the Launch Configuration Template.

      • launchDisposition (string) --

        Launch disposition.

      • licensing (dict) --

        Licensing.

        • osByol (boolean) --

          Whether to enable "Bring your own license" or not.

      • tags (dict) --

        Tags of the Launch Configuration Template.

        • (string) --

          • (string) --

      • targetInstanceTypeRightSizingMethod (string) --

        Target instance type right-sizing method.

CreateReplicationConfigurationTemplate (updated) Link ¶
Changes (both)
{'ebsEncryption': {'NONE'}}

Creates a new ReplicationConfigurationTemplate.

See also: AWS API Documentation

Request Syntax

client.create_replication_configuration_template(
    associateDefaultSecurityGroup=True|False,
    autoReplicateNewDisks=True|False,
    bandwidthThrottling=123,
    createPublicIP=True|False,
    dataPlaneRouting='PRIVATE_IP'|'PUBLIC_IP',
    defaultLargeStagingDiskType='GP2'|'GP3'|'ST1'|'AUTO',
    ebsEncryption='DEFAULT'|'CUSTOM'|'NONE',
    ebsEncryptionKeyArn='string',
    pitPolicy=[
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    replicationServerInstanceType='string',
    replicationServersSecurityGroupsIDs=[
        'string',
    ],
    stagingAreaSubnetId='string',
    stagingAreaTags={
        'string': 'string'
    },
    tags={
        'string': 'string'
    },
    useDedicatedReplicationServer=True|False
)
type associateDefaultSecurityGroup

boolean

param associateDefaultSecurityGroup

[REQUIRED]

Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

type autoReplicateNewDisks

boolean

param autoReplicateNewDisks

Whether to allow the AWS replication agent to automatically replicate newly added disks.

type bandwidthThrottling

integer

param bandwidthThrottling

[REQUIRED]

Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

type createPublicIP

boolean

param createPublicIP

[REQUIRED]

Whether to create a Public IP for the Recovery Instance by default.

type dataPlaneRouting

string

param dataPlaneRouting

[REQUIRED]

The data plane routing mechanism that will be used for replication.

type defaultLargeStagingDiskType

string

param defaultLargeStagingDiskType

[REQUIRED]

The Staging Disk EBS volume type to be used during replication.

type ebsEncryption

string

param ebsEncryption

[REQUIRED]

The type of EBS encryption to be used during replication.

type ebsEncryptionKeyArn

string

param ebsEncryptionKeyArn

The ARN of the EBS encryption key to be used during replication.

type pitPolicy

list

param pitPolicy

[REQUIRED]

The Point in time (PIT) policy to manage snapshots taken during replication.

  • (dict) --

    A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

    • enabled (boolean) --

      Whether this rule is enabled or not.

    • interval (integer) -- [REQUIRED]

      How often, in the chosen units, a snapshot should be taken.

    • retentionDuration (integer) -- [REQUIRED]

      The duration to retain a snapshot for, in the chosen units.

    • ruleID (integer) --

      The ID of the rule.

    • units (string) -- [REQUIRED]

      The units used to measure the interval and retentionDuration.

type replicationServerInstanceType

string

param replicationServerInstanceType

[REQUIRED]

The instance type to be used for the replication server.

type replicationServersSecurityGroupsIDs

list

param replicationServersSecurityGroupsIDs

[REQUIRED]

The security group IDs that will be used by the replication server.

  • (string) --

type stagingAreaSubnetId

string

param stagingAreaSubnetId

[REQUIRED]

The subnet to be used by the replication staging area.

type stagingAreaTags

dict

param stagingAreaTags

[REQUIRED]

A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

  • (string) --

    • (string) --

type tags

dict

param tags

A set of tags to be associated with the Replication Configuration Template resource.

  • (string) --

    • (string) --

type useDedicatedReplicationServer

boolean

param useDedicatedReplicationServer

[REQUIRED]

Whether to use a dedicated Replication Server in the replication staging area.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'associateDefaultSecurityGroup': True|False,
    'autoReplicateNewDisks': True|False,
    'bandwidthThrottling': 123,
    'createPublicIP': True|False,
    'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
    'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
    'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
    'ebsEncryptionKeyArn': 'string',
    'pitPolicy': [
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    'replicationConfigurationTemplateID': 'string',
    'replicationServerInstanceType': 'string',
    'replicationServersSecurityGroupsIDs': [
        'string',
    ],
    'stagingAreaSubnetId': 'string',
    'stagingAreaTags': {
        'string': 'string'
    },
    'tags': {
        'string': 'string'
    },
    'useDedicatedReplicationServer': True|False
}

Response Structure

  • (dict) --

    • arn (string) --

      The Replication Configuration Template ARN.

    • associateDefaultSecurityGroup (boolean) --

      Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

    • autoReplicateNewDisks (boolean) --

      Whether to allow the AWS replication agent to automatically replicate newly added disks.

    • bandwidthThrottling (integer) --

      Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

    • createPublicIP (boolean) --

      Whether to create a Public IP for the Recovery Instance by default.

    • dataPlaneRouting (string) --

      The data plane routing mechanism that will be used for replication.

    • defaultLargeStagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication.

    • ebsEncryption (string) --

      The type of EBS encryption to be used during replication.

    • ebsEncryptionKeyArn (string) --

      The ARN of the EBS encryption key to be used during replication.

    • pitPolicy (list) --

      The Point in time (PIT) policy to manage snapshots taken during replication.

      • (dict) --

        A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

        • enabled (boolean) --

          Whether this rule is enabled or not.

        • interval (integer) --

          How often, in the chosen units, a snapshot should be taken.

        • retentionDuration (integer) --

          The duration to retain a snapshot for, in the chosen units.

        • ruleID (integer) --

          The ID of the rule.

        • units (string) --

          The units used to measure the interval and retentionDuration.

    • replicationConfigurationTemplateID (string) --

      The Replication Configuration Template ID.

    • replicationServerInstanceType (string) --

      The instance type to be used for the replication server.

    • replicationServersSecurityGroupsIDs (list) --

      The security group IDs that will be used by the replication server.

      • (string) --

    • stagingAreaSubnetId (string) --

      The subnet to be used by the replication staging area.

    • stagingAreaTags (dict) --

      A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

      • (string) --

        • (string) --

    • tags (dict) --

      A set of tags to be associated with the Replication Configuration Template resource.

      • (string) --

        • (string) --

    • useDedicatedReplicationServer (boolean) --

      Whether to use a dedicated Replication Server in the replication staging area.

DescribeJobLogItems (updated) Link ¶
Changes (response)
{'items': {'event': {'DEPLOY_NETWORK_CONFIGURATION_END',
                     'DEPLOY_NETWORK_CONFIGURATION_FAILED',
                     'DEPLOY_NETWORK_CONFIGURATION_START',
                     'NETWORK_RECOVERY_FAIL',
                     'UPDATE_LAUNCH_TEMPLATE_END',
                     'UPDATE_LAUNCH_TEMPLATE_FAILED',
                     'UPDATE_LAUNCH_TEMPLATE_START',
                     'UPDATE_NETWORK_CONFIGURATION_END',
                     'UPDATE_NETWORK_CONFIGURATION_FAILED',
                     'UPDATE_NETWORK_CONFIGURATION_START'},
           'eventData': {'eventResourceData': {'sourceNetworkData': {'sourceNetworkID': 'string',
                                                                     'sourceVpc': 'string',
                                                                     'stackName': 'string',
                                                                     'targetVpc': 'string'}}}}}

Retrieves a detailed Job log with pagination.

See also: AWS API Documentation

Request Syntax

client.describe_job_log_items(
    jobID='string',
    maxResults=123,
    nextToken='string'
)
type jobID

string

param jobID

[REQUIRED]

The ID of the Job for which Job log items will be retrieved.

type maxResults

integer

param maxResults

Maximum number of Job log items to retrieve.

type nextToken

string

param nextToken

The token of the next Job log items to retrieve.

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'event': 'JOB_START'|'SERVER_SKIPPED'|'CLEANUP_START'|'CLEANUP_END'|'CLEANUP_FAIL'|'SNAPSHOT_START'|'SNAPSHOT_END'|'SNAPSHOT_FAIL'|'USING_PREVIOUS_SNAPSHOT'|'USING_PREVIOUS_SNAPSHOT_FAILED'|'CONVERSION_START'|'CONVERSION_END'|'CONVERSION_FAIL'|'LAUNCH_START'|'LAUNCH_FAILED'|'JOB_CANCEL'|'JOB_END'|'DEPLOY_NETWORK_CONFIGURATION_START'|'DEPLOY_NETWORK_CONFIGURATION_END'|'DEPLOY_NETWORK_CONFIGURATION_FAILED'|'UPDATE_NETWORK_CONFIGURATION_START'|'UPDATE_NETWORK_CONFIGURATION_END'|'UPDATE_NETWORK_CONFIGURATION_FAILED'|'UPDATE_LAUNCH_TEMPLATE_START'|'UPDATE_LAUNCH_TEMPLATE_END'|'UPDATE_LAUNCH_TEMPLATE_FAILED'|'NETWORK_RECOVERY_FAIL',
            'eventData': {
                'conversionProperties': {
                    'dataTimestamp': 'string',
                    'forceUefi': True|False,
                    'rootVolumeName': 'string',
                    'volumeToConversionMap': {
                        'string': {
                            'string': 'string'
                        }
                    },
                    'volumeToVolumeSize': {
                        'string': 123
                    }
                },
                'conversionServerID': 'string',
                'eventResourceData': {
                    'sourceNetworkData': {
                        'sourceNetworkID': 'string',
                        'sourceVpc': 'string',
                        'stackName': 'string',
                        'targetVpc': 'string'
                    }
                },
                'rawError': 'string',
                'sourceServerID': 'string',
                'targetInstanceID': 'string'
            },
            'logDateTime': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      An array of Job log items.

      • (dict) --

        A log outputted by a Job.

        • event (string) --

          The event represents the type of a log.

        • eventData (dict) --

          Metadata associated with a Job log.

          • conversionProperties (dict) --

            Properties of a conversion job

            • dataTimestamp (string) --

              The timestamp of when the snapshot being converted was taken

            • forceUefi (boolean) --

              Whether the volume being converted uses UEFI or not

            • rootVolumeName (string) --

              The root volume name of a conversion job

            • volumeToConversionMap (dict) --

              A mapping between the volumes being converted and the converted snapshot ids

              • (string) --

                • (dict) --

                  • (string) --

                    • (string) --

            • volumeToVolumeSize (dict) --

              A mapping between the volumes and their sizes

              • (string) --

                • (integer) --

          • conversionServerID (string) --

            The ID of a conversion server.

          • eventResourceData (dict) --

            Properties of resource related to a job event.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkData. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkData (dict) --

              Source Network properties.

              • sourceNetworkID (string) --

                Source Network ID.

              • sourceVpc (string) --

                VPC ID protected by the Source Network.

              • stackName (string) --

                CloudFormation stack name that was deployed for recovering the Source Network.

              • targetVpc (string) --

                ID of the recovered VPC following Source Network recovery.

          • rawError (string) --

            A string representing a job error.

          • sourceServerID (string) --

            The ID of a Source Server.

          • targetInstanceID (string) --

            The ID of a Recovery Instance.

        • logDateTime (string) --

          The date and time the log was taken.

    • nextToken (string) --

      The token of the next Job log items to retrieve.

DescribeJobs (updated) Link ¶
Changes (response)
{'items': {'initiatedBy': {'ASSOCIATE_NETWORK_RECOVERY',
                           'CREATE_NETWORK_RECOVERY',
                           'UPDATE_NETWORK_RECOVERY'},
           'participatingResources': [{'launchStatus': 'PENDING | IN_PROGRESS '
                                                       '| LAUNCHED | FAILED | '
                                                       'TERMINATED',
                                       'participatingResourceID': {'sourceNetworkID': 'string'}}]}}

Returns a list of Jobs. Use the JobsID and fromDate and toDate filters to limit which jobs are returned. The response is sorted by creationDataTime - latest date first. Jobs are created by the StartRecovery, TerminateRecoveryInstances and StartFailbackLaunch APIs. Jobs are also created by DiagnosticLaunch and TerminateDiagnosticInstances, which are APIs available only to Support and only used in response to relevant support tickets.

See also: AWS API Documentation

Request Syntax

client.describe_jobs(
    filters={
        'fromDate': 'string',
        'jobIDs': [
            'string',
        ],
        'toDate': 'string'
    },
    maxResults=123,
    nextToken='string'
)
type filters

dict

param filters

A set of filters by which to return Jobs.

  • fromDate (string) --

    The start date in a date range query.

  • jobIDs (list) --

    An array of Job IDs that should be returned. An empty array means all jobs.

    • (string) --

  • toDate (string) --

    The end date in a date range query.

type maxResults

integer

param maxResults

Maximum number of Jobs to retrieve.

type nextToken

string

param nextToken

The token of the next Job to retrieve.

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'arn': 'string',
            'creationDateTime': 'string',
            'endDateTime': 'string',
            'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
            'jobID': 'string',
            'participatingResources': [
                {
                    'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                    'participatingResourceID': {
                        'sourceNetworkID': 'string'
                    }
                },
            ],
            'participatingServers': [
                {
                    'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                    'recoveryInstanceID': 'string',
                    'sourceServerID': 'string'
                },
            ],
            'status': 'PENDING'|'STARTED'|'COMPLETED',
            'tags': {
                'string': 'string'
            },
            'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      An array of Jobs.

      • (dict) --

        A job is an asynchronous workflow.

        • arn (string) --

          The ARN of a Job.

        • creationDateTime (string) --

          The date and time of when the Job was created.

        • endDateTime (string) --

          The date and time of when the Job ended.

        • initiatedBy (string) --

          A string representing who initiated the Job.

        • jobID (string) --

          The ID of the Job.

        • participatingResources (list) --

          A list of resources that the Job is acting upon.

          • (dict) --

            Represents a resource participating in an asynchronous Job.

            • launchStatus (string) --

              The launch status of a participating resource.

            • participatingResourceID (dict) --

              The ID of a participating resource.

              Note

              This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

              'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
              • sourceNetworkID (string) --

                Source Network ID.

        • participatingServers (list) --

          A list of servers that the Job is acting upon.

          • (dict) --

            Represents a server participating in an asynchronous Job.

            • launchStatus (string) --

              The launch status of a participating server.

            • recoveryInstanceID (string) --

              The Recovery Instance ID of a participating server.

            • sourceServerID (string) --

              The Source Server ID of a participating server.

        • status (string) --

          The status of the Job.

        • tags (dict) --

          A list of tags associated with the Job.

          • (string) --

            • (string) --

        • type (string) --

          The type of the Job.

    • nextToken (string) --

      The token of the next Job to retrieve.

DescribeLaunchConfigurationTemplates (updated) Link ¶
Changes (response)
{'items': {'exportBucketArn': 'string'}}

Lists all Launch Configuration Templates, filtered by Launch Configuration Template IDs

See also: AWS API Documentation

Request Syntax

client.describe_launch_configuration_templates(
    launchConfigurationTemplateIDs=[
        'string',
    ],
    maxResults=123,
    nextToken='string'
)
type launchConfigurationTemplateIDs

list

param launchConfigurationTemplateIDs

Request to filter Launch Configuration Templates list by Launch Configuration Template ID.

  • (string) --

type maxResults

integer

param maxResults

Maximum results to be returned in DescribeLaunchConfigurationTemplates.

type nextToken

string

param nextToken

The token of the next Launch Configuration Template to retrieve.

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'arn': 'string',
            'copyPrivateIp': True|False,
            'copyTags': True|False,
            'exportBucketArn': 'string',
            'launchConfigurationTemplateID': 'string',
            'launchDisposition': 'STOPPED'|'STARTED',
            'licensing': {
                'osByol': True|False
            },
            'tags': {
                'string': 'string'
            },
            'targetInstanceTypeRightSizingMethod': 'NONE'|'BASIC'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      List of items returned by DescribeLaunchConfigurationTemplates.

      • (dict) --

        Account level Launch Configuration Template.

        • arn (string) --

          ARN of the Launch Configuration Template.

        • copyPrivateIp (boolean) --

          Copy private IP.

        • copyTags (boolean) --

          Copy tags.

        • exportBucketArn (string) --

          S3 bucket ARN to export Source Network templates.

        • launchConfigurationTemplateID (string) --

          ID of the Launch Configuration Template.

        • launchDisposition (string) --

          Launch disposition.

        • licensing (dict) --

          Licensing.

          • osByol (boolean) --

            Whether to enable "Bring your own license" or not.

        • tags (dict) --

          Tags of the Launch Configuration Template.

          • (string) --

            • (string) --

        • targetInstanceTypeRightSizingMethod (string) --

          Target instance type right-sizing method.

    • nextToken (string) --

      The token of the next Launch Configuration Template to retrieve.

DescribeReplicationConfigurationTemplates (updated) Link ¶
Changes (response)
{'items': {'ebsEncryption': {'NONE'}}}

Lists all ReplicationConfigurationTemplates, filtered by Source Server IDs.

See also: AWS API Documentation

Request Syntax

client.describe_replication_configuration_templates(
    maxResults=123,
    nextToken='string',
    replicationConfigurationTemplateIDs=[
        'string',
    ]
)
type maxResults

integer

param maxResults

Maximum number of Replication Configuration Templates to retrieve.

type nextToken

string

param nextToken

The token of the next Replication Configuration Template to retrieve.

type replicationConfigurationTemplateIDs

list

param replicationConfigurationTemplateIDs

The IDs of the Replication Configuration Templates to retrieve. An empty list means all Replication Configuration Templates.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'items': [
        {
            'arn': 'string',
            'associateDefaultSecurityGroup': True|False,
            'autoReplicateNewDisks': True|False,
            'bandwidthThrottling': 123,
            'createPublicIP': True|False,
            'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
            'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
            'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
            'ebsEncryptionKeyArn': 'string',
            'pitPolicy': [
                {
                    'enabled': True|False,
                    'interval': 123,
                    'retentionDuration': 123,
                    'ruleID': 123,
                    'units': 'MINUTE'|'HOUR'|'DAY'
                },
            ],
            'replicationConfigurationTemplateID': 'string',
            'replicationServerInstanceType': 'string',
            'replicationServersSecurityGroupsIDs': [
                'string',
            ],
            'stagingAreaSubnetId': 'string',
            'stagingAreaTags': {
                'string': 'string'
            },
            'tags': {
                'string': 'string'
            },
            'useDedicatedReplicationServer': True|False
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      An array of Replication Configuration Templates.

      • (dict) --

        • arn (string) --

          The Replication Configuration Template ARN.

        • associateDefaultSecurityGroup (boolean) --

          Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

        • autoReplicateNewDisks (boolean) --

          Whether to allow the AWS replication agent to automatically replicate newly added disks.

        • bandwidthThrottling (integer) --

          Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

        • createPublicIP (boolean) --

          Whether to create a Public IP for the Recovery Instance by default.

        • dataPlaneRouting (string) --

          The data plane routing mechanism that will be used for replication.

        • defaultLargeStagingDiskType (string) --

          The Staging Disk EBS volume type to be used during replication.

        • ebsEncryption (string) --

          The type of EBS encryption to be used during replication.

        • ebsEncryptionKeyArn (string) --

          The ARN of the EBS encryption key to be used during replication.

        • pitPolicy (list) --

          The Point in time (PIT) policy to manage snapshots taken during replication.

          • (dict) --

            A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

            • enabled (boolean) --

              Whether this rule is enabled or not.

            • interval (integer) --

              How often, in the chosen units, a snapshot should be taken.

            • retentionDuration (integer) --

              The duration to retain a snapshot for, in the chosen units.

            • ruleID (integer) --

              The ID of the rule.

            • units (string) --

              The units used to measure the interval and retentionDuration.

        • replicationConfigurationTemplateID (string) --

          The Replication Configuration Template ID.

        • replicationServerInstanceType (string) --

          The instance type to be used for the replication server.

        • replicationServersSecurityGroupsIDs (list) --

          The security group IDs that will be used by the replication server.

          • (string) --

        • stagingAreaSubnetId (string) --

          The subnet to be used by the replication staging area.

        • stagingAreaTags (dict) --

          A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

          • (string) --

            • (string) --

        • tags (dict) --

          A set of tags to be associated with the Replication Configuration Template resource.

          • (string) --

            • (string) --

        • useDedicatedReplicationServer (boolean) --

          Whether to use a dedicated Replication Server in the replication staging area.

    • nextToken (string) --

      The token of the next Replication Configuration Template to retrieve.

DescribeSourceServers (updated) Link ¶
Changes (response)
{'items': {'sourceNetworkID': 'string'}}

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

See also: AWS API Documentation

Request Syntax

client.describe_source_servers(
    filters={
        'hardwareId': 'string',
        'sourceServerIDs': [
            'string',
        ],
        'stagingAccountIDs': [
            'string',
        ]
    },
    maxResults=123,
    nextToken='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 maxResults

integer

param maxResults

Maximum number of Source Servers to retrieve.

type nextToken

string

param nextToken

The token of the next Source Server to retrieve.

rtype

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

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

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

      The token of the next Source Server to retrieve.

DisconnectSourceServer (updated) Link ¶
Changes (response)
{'sourceNetworkID': 'string'}

Disconnects a specific Source Server from Elastic Disaster Recovery. Data replication is stopped immediately. All AWS resources created by Elastic Disaster Recovery for enabling the replication of the Source Server will be terminated / deleted within 90 minutes. You cannot disconnect a Source Server if it has a Recovery Instance. If the agent on the Source Server has not been prevented from communicating with the Elastic Disaster Recovery service, then it will receive a command to uninstall itself (within approximately 10 minutes). The following properties of the SourceServer will be changed immediately: dataReplicationInfo.dataReplicationState will be set to DISCONNECTED; The totalStorageBytes property for each of dataReplicationInfo.replicatedDisks will be set to zero; dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will be nullified.

See also: AWS API Documentation

Request Syntax

client.disconnect_source_server(
    sourceServerID='string'
)
type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Server to disconnect.

rtype

dict

returns

Response Syntax

{
    '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'
    },
    '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'
    }
}

Response Structure

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

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

GetReplicationConfiguration (updated) Link ¶
Changes (response)
{'ebsEncryption': {'NONE'}}

Gets a ReplicationConfiguration, filtered by Source Server ID.

See also: AWS API Documentation

Request Syntax

client.get_replication_configuration(
    sourceServerID='string'
)
type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Serve for this Replication Configuration.r

rtype

dict

returns

Response Syntax

{
    'associateDefaultSecurityGroup': True|False,
    'autoReplicateNewDisks': True|False,
    'bandwidthThrottling': 123,
    'createPublicIP': True|False,
    'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
    'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
    'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
    'ebsEncryptionKeyArn': 'string',
    'name': 'string',
    'pitPolicy': [
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    'replicatedDisks': [
        {
            'deviceName': 'string',
            'iops': 123,
            'isBootDisk': True|False,
            'optimizedStagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'stagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'throughput': 123
        },
    ],
    'replicationServerInstanceType': 'string',
    'replicationServersSecurityGroupsIDs': [
        'string',
    ],
    'sourceServerID': 'string',
    'stagingAreaSubnetId': 'string',
    'stagingAreaTags': {
        'string': 'string'
    },
    'useDedicatedReplicationServer': True|False
}

Response Structure

  • (dict) --

    • associateDefaultSecurityGroup (boolean) --

      Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

    • autoReplicateNewDisks (boolean) --

      Whether to allow the AWS replication agent to automatically replicate newly added disks.

    • bandwidthThrottling (integer) --

      Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

    • createPublicIP (boolean) --

      Whether to create a Public IP for the Recovery Instance by default.

    • dataPlaneRouting (string) --

      The data plane routing mechanism that will be used for replication.

    • defaultLargeStagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication.

    • ebsEncryption (string) --

      The type of EBS encryption to be used during replication.

    • ebsEncryptionKeyArn (string) --

      The ARN of the EBS encryption key to be used during replication.

    • name (string) --

      The name of the Replication Configuration.

    • pitPolicy (list) --

      The Point in time (PIT) policy to manage snapshots taken during replication.

      • (dict) --

        A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

        • enabled (boolean) --

          Whether this rule is enabled or not.

        • interval (integer) --

          How often, in the chosen units, a snapshot should be taken.

        • retentionDuration (integer) --

          The duration to retain a snapshot for, in the chosen units.

        • ruleID (integer) --

          The ID of the rule.

        • units (string) --

          The units used to measure the interval and retentionDuration.

    • replicatedDisks (list) --

      The configuration of the disks of the Source Server to be replicated.

      • (dict) --

        The configuration of a disk of the Source Server to be replicated.

        • deviceName (string) --

          The name of the device.

        • iops (integer) --

          The requested number of I/O operations per second (IOPS).

        • isBootDisk (boolean) --

          Whether to boot from this disk or not.

        • optimizedStagingDiskType (string) --

          The Staging Disk EBS volume type to be used during replication when stagingDiskType is set to Auto. This is a read-only field.

        • stagingDiskType (string) --

          The Staging Disk EBS volume type to be used during replication.

        • throughput (integer) --

          The throughput to use for the EBS volume in MiB/s. This parameter is valid only for gp3 volumes.

    • replicationServerInstanceType (string) --

      The instance type to be used for the replication server.

    • replicationServersSecurityGroupsIDs (list) --

      The security group IDs that will be used by the replication server.

      • (string) --

    • sourceServerID (string) --

      The ID of the Source Server for this Replication Configuration.

    • stagingAreaSubnetId (string) --

      The subnet to be used by the replication staging area.

    • stagingAreaTags (dict) --

      A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

      • (string) --

        • (string) --

    • useDedicatedReplicationServer (boolean) --

      Whether to use a dedicated Replication Server in the replication staging area.

RetryDataReplication (updated) Link ¶
Changes (response)
{'sourceNetworkID': 'string'}

WARNING: RetryDataReplication is deprecated. Causes the data replication initiation sequence to begin immediately upon next Handshake for the specified Source Server ID, regardless of when the previous initiation started. This command will work only if the Source Server is stalled or is in a DISCONNECTED or STOPPED state.

!DANGER!

This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.

See also: AWS API Documentation

Request Syntax

client.retry_data_replication(
    sourceServerID='string'
)
type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Server whose data replication should be retried.

rtype

dict

returns

Response Syntax

{
    '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'
    },
    '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'
    }
}

Response Structure

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

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

StartFailbackLaunch (updated) Link ¶
Changes (response)
{'job': {'initiatedBy': {'ASSOCIATE_NETWORK_RECOVERY',
                         'CREATE_NETWORK_RECOVERY',
                         'UPDATE_NETWORK_RECOVERY'},
         'participatingResources': [{'launchStatus': 'PENDING | IN_PROGRESS | '
                                                     'LAUNCHED | FAILED | '
                                                     'TERMINATED',
                                     'participatingResourceID': {'sourceNetworkID': 'string'}}]}}

Initiates a Job for launching the machine that is being failed back to from the specified Recovery Instance. This will run conversion on the failback client and will reboot your machine, thus completing the failback process.

See also: AWS API Documentation

Request Syntax

client.start_failback_launch(
    recoveryInstanceIDs=[
        'string',
    ],
    tags={
        'string': 'string'
    }
)
type recoveryInstanceIDs

list

param recoveryInstanceIDs

[REQUIRED]

The IDs of the Recovery Instance whose failback launch we want to request.

  • (string) --

type tags

dict

param tags

The tags to be associated with the failback launch Job.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
        'jobID': 'string',
        'participatingResources': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'participatingResourceID': {
                    'sourceNetworkID': 'string'
                }
            },
        ],
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'recoveryInstanceID': 'string',
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
    }
}

Response Structure

  • (dict) --

    • job (dict) --

      The failback launch Job.

      • arn (string) --

        The ARN of a Job.

      • creationDateTime (string) --

        The date and time of when the Job was created.

      • endDateTime (string) --

        The date and time of when the Job ended.

      • initiatedBy (string) --

        A string representing who initiated the Job.

      • jobID (string) --

        The ID of the Job.

      • participatingResources (list) --

        A list of resources that the Job is acting upon.

        • (dict) --

          Represents a resource participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating resource.

          • participatingResourceID (dict) --

            The ID of a participating resource.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkID (string) --

              Source Network ID.

      • participatingServers (list) --

        A list of servers that the Job is acting upon.

        • (dict) --

          Represents a server participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating server.

          • recoveryInstanceID (string) --

            The Recovery Instance ID of a participating server.

          • sourceServerID (string) --

            The Source Server ID of a participating server.

      • status (string) --

        The status of the Job.

      • tags (dict) --

        A list of tags associated with the Job.

        • (string) --

          • (string) --

      • type (string) --

        The type of the Job.

StartRecovery (updated) Link ¶
Changes (response)
{'job': {'initiatedBy': {'ASSOCIATE_NETWORK_RECOVERY',
                         'CREATE_NETWORK_RECOVERY',
                         'UPDATE_NETWORK_RECOVERY'},
         'participatingResources': [{'launchStatus': 'PENDING | IN_PROGRESS | '
                                                     'LAUNCHED | FAILED | '
                                                     'TERMINATED',
                                     'participatingResourceID': {'sourceNetworkID': 'string'}}]}}

Launches Recovery Instances for the specified Source Servers. For each Source Server you may choose a point in time snapshot to launch from, or use an on demand snapshot.

See also: AWS API Documentation

Request Syntax

client.start_recovery(
    isDrill=True|False,
    sourceServers=[
        {
            'recoverySnapshotID': 'string',
            'sourceServerID': 'string'
        },
    ],
    tags={
        'string': 'string'
    }
)
type isDrill

boolean

param isDrill

Whether this Source Server Recovery operation is a drill or not.

type sourceServers

list

param sourceServers

[REQUIRED]

The Source Servers that we want to start a Recovery Job for.

  • (dict) --

    An object representing the Source Server to recover.

    • recoverySnapshotID (string) --

      The ID of a Recovery Snapshot we want to recover from. Omit this field to launch from the latest data by taking an on-demand snapshot.

    • sourceServerID (string) -- [REQUIRED]

      The ID of the Source Server you want to recover.

type tags

dict

param tags

The tags to be associated with the Recovery Job.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
        'jobID': 'string',
        'participatingResources': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'participatingResourceID': {
                    'sourceNetworkID': 'string'
                }
            },
        ],
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'recoveryInstanceID': 'string',
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
    }
}

Response Structure

  • (dict) --

    • job (dict) --

      The Recovery Job.

      • arn (string) --

        The ARN of a Job.

      • creationDateTime (string) --

        The date and time of when the Job was created.

      • endDateTime (string) --

        The date and time of when the Job ended.

      • initiatedBy (string) --

        A string representing who initiated the Job.

      • jobID (string) --

        The ID of the Job.

      • participatingResources (list) --

        A list of resources that the Job is acting upon.

        • (dict) --

          Represents a resource participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating resource.

          • participatingResourceID (dict) --

            The ID of a participating resource.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkID (string) --

              Source Network ID.

      • participatingServers (list) --

        A list of servers that the Job is acting upon.

        • (dict) --

          Represents a server participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating server.

          • recoveryInstanceID (string) --

            The Recovery Instance ID of a participating server.

          • sourceServerID (string) --

            The Source Server ID of a participating server.

      • status (string) --

        The status of the Job.

      • tags (dict) --

        A list of tags associated with the Job.

        • (string) --

          • (string) --

      • type (string) --

        The type of the Job.

StartReplication (updated) Link ¶
Changes (response)
{'sourceServer': {'sourceNetworkID': 'string'}}

Starts replication for a stopped Source Server. This action would make the Source Server protected again and restart billing for it.

See also: AWS API Documentation

Request Syntax

client.start_replication(
    sourceServerID='string'
)
type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Server to start replication for.

rtype

dict

returns

Response Syntax

{
    'sourceServer': {
        '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'
        },
        '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'
        }
    }
}

Response Structure

  • (dict) --

    • sourceServer (dict) --

      The Source Server that this action was targeted on.

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

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

StopReplication (updated) Link ¶
Changes (response)
{'sourceServer': {'sourceNetworkID': 'string'}}

Stops replication for a Source Server. This action would make the Source Server unprotected, delete its existing snapshots and stop billing for it.

See also: AWS API Documentation

Request Syntax

client.stop_replication(
    sourceServerID='string'
)
type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Server to stop replication for.

rtype

dict

returns

Response Syntax

{
    'sourceServer': {
        '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'
        },
        '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'
        }
    }
}

Response Structure

  • (dict) --

    • sourceServer (dict) --

      The Source Server that this action was targeted on.

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

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

TerminateRecoveryInstances (updated) Link ¶
Changes (response)
{'job': {'initiatedBy': {'ASSOCIATE_NETWORK_RECOVERY',
                         'CREATE_NETWORK_RECOVERY',
                         'UPDATE_NETWORK_RECOVERY'},
         'participatingResources': [{'launchStatus': 'PENDING | IN_PROGRESS | '
                                                     'LAUNCHED | FAILED | '
                                                     'TERMINATED',
                                     'participatingResourceID': {'sourceNetworkID': 'string'}}]}}

Initiates a Job for terminating the EC2 resources associated with the specified Recovery Instances, and then will delete the Recovery Instances from the Elastic Disaster Recovery service.

See also: AWS API Documentation

Request Syntax

client.terminate_recovery_instances(
    recoveryInstanceIDs=[
        'string',
    ]
)
type recoveryInstanceIDs

list

param recoveryInstanceIDs

[REQUIRED]

The IDs of the Recovery Instances that should be terminated.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'job': {
        'arn': 'string',
        'creationDateTime': 'string',
        'endDateTime': 'string',
        'initiatedBy': 'START_RECOVERY'|'START_DRILL'|'FAILBACK'|'DIAGNOSTIC'|'TERMINATE_RECOVERY_INSTANCES'|'TARGET_ACCOUNT'|'CREATE_NETWORK_RECOVERY'|'UPDATE_NETWORK_RECOVERY'|'ASSOCIATE_NETWORK_RECOVERY',
        'jobID': 'string',
        'participatingResources': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'participatingResourceID': {
                    'sourceNetworkID': 'string'
                }
            },
        ],
        'participatingServers': [
            {
                'launchStatus': 'PENDING'|'IN_PROGRESS'|'LAUNCHED'|'FAILED'|'TERMINATED',
                'recoveryInstanceID': 'string',
                'sourceServerID': 'string'
            },
        ],
        'status': 'PENDING'|'STARTED'|'COMPLETED',
        'tags': {
            'string': 'string'
        },
        'type': 'LAUNCH'|'TERMINATE'|'CREATE_CONVERTED_SNAPSHOT'
    }
}

Response Structure

  • (dict) --

    • job (dict) --

      The Job for terminating the Recovery Instances.

      • arn (string) --

        The ARN of a Job.

      • creationDateTime (string) --

        The date and time of when the Job was created.

      • endDateTime (string) --

        The date and time of when the Job ended.

      • initiatedBy (string) --

        A string representing who initiated the Job.

      • jobID (string) --

        The ID of the Job.

      • participatingResources (list) --

        A list of resources that the Job is acting upon.

        • (dict) --

          Represents a resource participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating resource.

          • participatingResourceID (dict) --

            The ID of a participating resource.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: sourceNetworkID. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            • sourceNetworkID (string) --

              Source Network ID.

      • participatingServers (list) --

        A list of servers that the Job is acting upon.

        • (dict) --

          Represents a server participating in an asynchronous Job.

          • launchStatus (string) --

            The launch status of a participating server.

          • recoveryInstanceID (string) --

            The Recovery Instance ID of a participating server.

          • sourceServerID (string) --

            The Source Server ID of a participating server.

      • status (string) --

        The status of the Job.

      • tags (dict) --

        A list of tags associated with the Job.

        • (string) --

          • (string) --

      • type (string) --

        The type of the Job.

UpdateLaunchConfigurationTemplate (updated) Link ¶
Changes (request, response)
Request
{'exportBucketArn': 'string'}
Response
{'launchConfigurationTemplate': {'exportBucketArn': 'string'}}

Updates an existing Launch Configuration Template by ID.

See also: AWS API Documentation

Request Syntax

client.update_launch_configuration_template(
    copyPrivateIp=True|False,
    copyTags=True|False,
    exportBucketArn='string',
    launchConfigurationTemplateID='string',
    launchDisposition='STOPPED'|'STARTED',
    licensing={
        'osByol': True|False
    },
    targetInstanceTypeRightSizingMethod='NONE'|'BASIC'
)
type copyPrivateIp

boolean

param copyPrivateIp

Copy private IP.

type copyTags

boolean

param copyTags

Copy tags.

type exportBucketArn

string

param exportBucketArn

S3 bucket ARN to export Source Network templates.

type launchConfigurationTemplateID

string

param launchConfigurationTemplateID

[REQUIRED]

Launch Configuration Template ID.

type launchDisposition

string

param launchDisposition

Launch disposition.

type licensing

dict

param licensing

Licensing.

  • osByol (boolean) --

    Whether to enable "Bring your own license" or not.

type targetInstanceTypeRightSizingMethod

string

param targetInstanceTypeRightSizingMethod

Target instance type right-sizing method.

rtype

dict

returns

Response Syntax

{
    'launchConfigurationTemplate': {
        'arn': 'string',
        'copyPrivateIp': True|False,
        'copyTags': True|False,
        'exportBucketArn': 'string',
        'launchConfigurationTemplateID': 'string',
        'launchDisposition': 'STOPPED'|'STARTED',
        'licensing': {
            'osByol': True|False
        },
        'tags': {
            'string': 'string'
        },
        'targetInstanceTypeRightSizingMethod': 'NONE'|'BASIC'
    }
}

Response Structure

  • (dict) --

    • launchConfigurationTemplate (dict) --

      Updated Launch Configuration Template.

      • arn (string) --

        ARN of the Launch Configuration Template.

      • copyPrivateIp (boolean) --

        Copy private IP.

      • copyTags (boolean) --

        Copy tags.

      • exportBucketArn (string) --

        S3 bucket ARN to export Source Network templates.

      • launchConfigurationTemplateID (string) --

        ID of the Launch Configuration Template.

      • launchDisposition (string) --

        Launch disposition.

      • licensing (dict) --

        Licensing.

        • osByol (boolean) --

          Whether to enable "Bring your own license" or not.

      • tags (dict) --

        Tags of the Launch Configuration Template.

        • (string) --

          • (string) --

      • targetInstanceTypeRightSizingMethod (string) --

        Target instance type right-sizing method.

UpdateReplicationConfiguration (updated) Link ¶
Changes (both)
{'ebsEncryption': {'NONE'}}

Allows you to update a ReplicationConfiguration by Source Server ID.

See also: AWS API Documentation

Request Syntax

client.update_replication_configuration(
    associateDefaultSecurityGroup=True|False,
    autoReplicateNewDisks=True|False,
    bandwidthThrottling=123,
    createPublicIP=True|False,
    dataPlaneRouting='PRIVATE_IP'|'PUBLIC_IP',
    defaultLargeStagingDiskType='GP2'|'GP3'|'ST1'|'AUTO',
    ebsEncryption='DEFAULT'|'CUSTOM'|'NONE',
    ebsEncryptionKeyArn='string',
    name='string',
    pitPolicy=[
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    replicatedDisks=[
        {
            'deviceName': 'string',
            'iops': 123,
            'isBootDisk': True|False,
            'optimizedStagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'stagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'throughput': 123
        },
    ],
    replicationServerInstanceType='string',
    replicationServersSecurityGroupsIDs=[
        'string',
    ],
    sourceServerID='string',
    stagingAreaSubnetId='string',
    stagingAreaTags={
        'string': 'string'
    },
    useDedicatedReplicationServer=True|False
)
type associateDefaultSecurityGroup

boolean

param associateDefaultSecurityGroup

Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

type autoReplicateNewDisks

boolean

param autoReplicateNewDisks

Whether to allow the AWS replication agent to automatically replicate newly added disks.

type bandwidthThrottling

integer

param bandwidthThrottling

Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

type createPublicIP

boolean

param createPublicIP

Whether to create a Public IP for the Recovery Instance by default.

type dataPlaneRouting

string

param dataPlaneRouting

The data plane routing mechanism that will be used for replication.

type defaultLargeStagingDiskType

string

param defaultLargeStagingDiskType

The Staging Disk EBS volume type to be used during replication.

type ebsEncryption

string

param ebsEncryption

The type of EBS encryption to be used during replication.

type ebsEncryptionKeyArn

string

param ebsEncryptionKeyArn

The ARN of the EBS encryption key to be used during replication.

type name

string

param name

The name of the Replication Configuration.

type pitPolicy

list

param pitPolicy

The Point in time (PIT) policy to manage snapshots taken during replication.

  • (dict) --

    A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

    • enabled (boolean) --

      Whether this rule is enabled or not.

    • interval (integer) -- [REQUIRED]

      How often, in the chosen units, a snapshot should be taken.

    • retentionDuration (integer) -- [REQUIRED]

      The duration to retain a snapshot for, in the chosen units.

    • ruleID (integer) --

      The ID of the rule.

    • units (string) -- [REQUIRED]

      The units used to measure the interval and retentionDuration.

type replicatedDisks

list

param replicatedDisks

The configuration of the disks of the Source Server to be replicated.

  • (dict) --

    The configuration of a disk of the Source Server to be replicated.

    • deviceName (string) --

      The name of the device.

    • iops (integer) --

      The requested number of I/O operations per second (IOPS).

    • isBootDisk (boolean) --

      Whether to boot from this disk or not.

    • optimizedStagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication when stagingDiskType is set to Auto. This is a read-only field.

    • stagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication.

    • throughput (integer) --

      The throughput to use for the EBS volume in MiB/s. This parameter is valid only for gp3 volumes.

type replicationServerInstanceType

string

param replicationServerInstanceType

The instance type to be used for the replication server.

type replicationServersSecurityGroupsIDs

list

param replicationServersSecurityGroupsIDs

The security group IDs that will be used by the replication server.

  • (string) --

type sourceServerID

string

param sourceServerID

[REQUIRED]

The ID of the Source Server for this Replication Configuration.

type stagingAreaSubnetId

string

param stagingAreaSubnetId

The subnet to be used by the replication staging area.

type stagingAreaTags

dict

param stagingAreaTags

A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

  • (string) --

    • (string) --

type useDedicatedReplicationServer

boolean

param useDedicatedReplicationServer

Whether to use a dedicated Replication Server in the replication staging area.

rtype

dict

returns

Response Syntax

{
    'associateDefaultSecurityGroup': True|False,
    'autoReplicateNewDisks': True|False,
    'bandwidthThrottling': 123,
    'createPublicIP': True|False,
    'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
    'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
    'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
    'ebsEncryptionKeyArn': 'string',
    'name': 'string',
    'pitPolicy': [
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    'replicatedDisks': [
        {
            'deviceName': 'string',
            'iops': 123,
            'isBootDisk': True|False,
            'optimizedStagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'stagingDiskType': 'AUTO'|'GP2'|'GP3'|'IO1'|'SC1'|'ST1'|'STANDARD',
            'throughput': 123
        },
    ],
    'replicationServerInstanceType': 'string',
    'replicationServersSecurityGroupsIDs': [
        'string',
    ],
    'sourceServerID': 'string',
    'stagingAreaSubnetId': 'string',
    'stagingAreaTags': {
        'string': 'string'
    },
    'useDedicatedReplicationServer': True|False
}

Response Structure

  • (dict) --

    • associateDefaultSecurityGroup (boolean) --

      Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration.

    • autoReplicateNewDisks (boolean) --

      Whether to allow the AWS replication agent to automatically replicate newly added disks.

    • bandwidthThrottling (integer) --

      Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

    • createPublicIP (boolean) --

      Whether to create a Public IP for the Recovery Instance by default.

    • dataPlaneRouting (string) --

      The data plane routing mechanism that will be used for replication.

    • defaultLargeStagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication.

    • ebsEncryption (string) --

      The type of EBS encryption to be used during replication.

    • ebsEncryptionKeyArn (string) --

      The ARN of the EBS encryption key to be used during replication.

    • name (string) --

      The name of the Replication Configuration.

    • pitPolicy (list) --

      The Point in time (PIT) policy to manage snapshots taken during replication.

      • (dict) --

        A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

        • enabled (boolean) --

          Whether this rule is enabled or not.

        • interval (integer) --

          How often, in the chosen units, a snapshot should be taken.

        • retentionDuration (integer) --

          The duration to retain a snapshot for, in the chosen units.

        • ruleID (integer) --

          The ID of the rule.

        • units (string) --

          The units used to measure the interval and retentionDuration.

    • replicatedDisks (list) --

      The configuration of the disks of the Source Server to be replicated.

      • (dict) --

        The configuration of a disk of the Source Server to be replicated.

        • deviceName (string) --

          The name of the device.

        • iops (integer) --

          The requested number of I/O operations per second (IOPS).

        • isBootDisk (boolean) --

          Whether to boot from this disk or not.

        • optimizedStagingDiskType (string) --

          The Staging Disk EBS volume type to be used during replication when stagingDiskType is set to Auto. This is a read-only field.

        • stagingDiskType (string) --

          The Staging Disk EBS volume type to be used during replication.

        • throughput (integer) --

          The throughput to use for the EBS volume in MiB/s. This parameter is valid only for gp3 volumes.

    • replicationServerInstanceType (string) --

      The instance type to be used for the replication server.

    • replicationServersSecurityGroupsIDs (list) --

      The security group IDs that will be used by the replication server.

      • (string) --

    • sourceServerID (string) --

      The ID of the Source Server for this Replication Configuration.

    • stagingAreaSubnetId (string) --

      The subnet to be used by the replication staging area.

    • stagingAreaTags (dict) --

      A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

      • (string) --

        • (string) --

    • useDedicatedReplicationServer (boolean) --

      Whether to use a dedicated Replication Server in the replication staging area.

UpdateReplicationConfigurationTemplate (updated) Link ¶
Changes (both)
{'ebsEncryption': {'NONE'}}

Updates a ReplicationConfigurationTemplate by ID.

See also: AWS API Documentation

Request Syntax

client.update_replication_configuration_template(
    arn='string',
    associateDefaultSecurityGroup=True|False,
    autoReplicateNewDisks=True|False,
    bandwidthThrottling=123,
    createPublicIP=True|False,
    dataPlaneRouting='PRIVATE_IP'|'PUBLIC_IP',
    defaultLargeStagingDiskType='GP2'|'GP3'|'ST1'|'AUTO',
    ebsEncryption='DEFAULT'|'CUSTOM'|'NONE',
    ebsEncryptionKeyArn='string',
    pitPolicy=[
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    replicationConfigurationTemplateID='string',
    replicationServerInstanceType='string',
    replicationServersSecurityGroupsIDs=[
        'string',
    ],
    stagingAreaSubnetId='string',
    stagingAreaTags={
        'string': 'string'
    },
    useDedicatedReplicationServer=True|False
)
type arn

string

param arn

The Replication Configuration Template ARN.

type associateDefaultSecurityGroup

boolean

param associateDefaultSecurityGroup

Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

type autoReplicateNewDisks

boolean

param autoReplicateNewDisks

Whether to allow the AWS replication agent to automatically replicate newly added disks.

type bandwidthThrottling

integer

param bandwidthThrottling

Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

type createPublicIP

boolean

param createPublicIP

Whether to create a Public IP for the Recovery Instance by default.

type dataPlaneRouting

string

param dataPlaneRouting

The data plane routing mechanism that will be used for replication.

type defaultLargeStagingDiskType

string

param defaultLargeStagingDiskType

The Staging Disk EBS volume type to be used during replication.

type ebsEncryption

string

param ebsEncryption

The type of EBS encryption to be used during replication.

type ebsEncryptionKeyArn

string

param ebsEncryptionKeyArn

The ARN of the EBS encryption key to be used during replication.

type pitPolicy

list

param pitPolicy

The Point in time (PIT) policy to manage snapshots taken during replication.

  • (dict) --

    A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

    • enabled (boolean) --

      Whether this rule is enabled or not.

    • interval (integer) -- [REQUIRED]

      How often, in the chosen units, a snapshot should be taken.

    • retentionDuration (integer) -- [REQUIRED]

      The duration to retain a snapshot for, in the chosen units.

    • ruleID (integer) --

      The ID of the rule.

    • units (string) -- [REQUIRED]

      The units used to measure the interval and retentionDuration.

type replicationConfigurationTemplateID

string

param replicationConfigurationTemplateID

[REQUIRED]

The Replication Configuration Template ID.

type replicationServerInstanceType

string

param replicationServerInstanceType

The instance type to be used for the replication server.

type replicationServersSecurityGroupsIDs

list

param replicationServersSecurityGroupsIDs

The security group IDs that will be used by the replication server.

  • (string) --

type stagingAreaSubnetId

string

param stagingAreaSubnetId

The subnet to be used by the replication staging area.

type stagingAreaTags

dict

param stagingAreaTags

A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

  • (string) --

    • (string) --

type useDedicatedReplicationServer

boolean

param useDedicatedReplicationServer

Whether to use a dedicated Replication Server in the replication staging area.

rtype

dict

returns

Response Syntax

{
    'arn': 'string',
    'associateDefaultSecurityGroup': True|False,
    'autoReplicateNewDisks': True|False,
    'bandwidthThrottling': 123,
    'createPublicIP': True|False,
    'dataPlaneRouting': 'PRIVATE_IP'|'PUBLIC_IP',
    'defaultLargeStagingDiskType': 'GP2'|'GP3'|'ST1'|'AUTO',
    'ebsEncryption': 'DEFAULT'|'CUSTOM'|'NONE',
    'ebsEncryptionKeyArn': 'string',
    'pitPolicy': [
        {
            'enabled': True|False,
            'interval': 123,
            'retentionDuration': 123,
            'ruleID': 123,
            'units': 'MINUTE'|'HOUR'|'DAY'
        },
    ],
    'replicationConfigurationTemplateID': 'string',
    'replicationServerInstanceType': 'string',
    'replicationServersSecurityGroupsIDs': [
        'string',
    ],
    'stagingAreaSubnetId': 'string',
    'stagingAreaTags': {
        'string': 'string'
    },
    'tags': {
        'string': 'string'
    },
    'useDedicatedReplicationServer': True|False
}

Response Structure

  • (dict) --

    • arn (string) --

      The Replication Configuration Template ARN.

    • associateDefaultSecurityGroup (boolean) --

      Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.

    • autoReplicateNewDisks (boolean) --

      Whether to allow the AWS replication agent to automatically replicate newly added disks.

    • bandwidthThrottling (integer) --

      Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.

    • createPublicIP (boolean) --

      Whether to create a Public IP for the Recovery Instance by default.

    • dataPlaneRouting (string) --

      The data plane routing mechanism that will be used for replication.

    • defaultLargeStagingDiskType (string) --

      The Staging Disk EBS volume type to be used during replication.

    • ebsEncryption (string) --

      The type of EBS encryption to be used during replication.

    • ebsEncryptionKeyArn (string) --

      The ARN of the EBS encryption key to be used during replication.

    • pitPolicy (list) --

      The Point in time (PIT) policy to manage snapshots taken during replication.

      • (dict) --

        A rule in the Point in Time (PIT) policy representing when to take snapshots and how long to retain them for.

        • enabled (boolean) --

          Whether this rule is enabled or not.

        • interval (integer) --

          How often, in the chosen units, a snapshot should be taken.

        • retentionDuration (integer) --

          The duration to retain a snapshot for, in the chosen units.

        • ruleID (integer) --

          The ID of the rule.

        • units (string) --

          The units used to measure the interval and retentionDuration.

    • replicationConfigurationTemplateID (string) --

      The Replication Configuration Template ID.

    • replicationServerInstanceType (string) --

      The instance type to be used for the replication server.

    • replicationServersSecurityGroupsIDs (list) --

      The security group IDs that will be used by the replication server.

      • (string) --

    • stagingAreaSubnetId (string) --

      The subnet to be used by the replication staging area.

    • stagingAreaTags (dict) --

      A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.

      • (string) --

        • (string) --

    • tags (dict) --

      A set of tags to be associated with the Replication Configuration Template resource.

      • (string) --

        • (string) --

    • useDedicatedReplicationServer (boolean) --

      Whether to use a dedicated Replication Server in the replication staging area.