AWS Server Migration Service

2018/11/27 - AWS Server Migration Service - 17 new 6 updated api methods

Changes  In this release, AWS Server Migration Service (SMS) has added multi-server migration support to simplify the application migration process. Customers can migrate all their application-specific servers together as a single unit as opposed to moving individual server one at a time. The new functionality includes - 1. Ability to group on-premises servers into applications and application tiers. 2. Auto-generated CloudFormation Template and Stacks for launching migrated servers into EC2. 3. Ability to run post-launch configuration scripts to configure servers and applications in EC2. In order for SMS to launch servers into your AWS account using CloudFormation Templates, we have also updated the ServerMigrationServiceRole IAM policy to include appropriate permissions. Refer to Server Migration Service documentation for more details.

PutAppReplicationConfiguration (new) Link ¶

Creates or updates a replication configuration for an application.

See also: AWS API Documentation

Request Syntax

client.put_app_replication_configuration(
    appId='string',
    serverGroupReplicationConfigurations=[
        {
            'serverGroupId': 'string',
            'serverReplicationConfigurations': [
                {
                    'server': {
                        'serverId': 'string',
                        'serverType': 'VIRTUAL_MACHINE',
                        'vmServer': {
                            'vmServerAddress': {
                                'vmManagerId': 'string',
                                'vmId': 'string'
                            },
                            'vmName': 'string',
                            'vmManagerName': 'string',
                            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                            'vmPath': 'string'
                        },
                        'replicationJobId': 'string',
                        'replicationJobTerminated': True|False
                    },
                    'serverReplicationParameters': {
                        'seedTime': datetime(2015, 1, 1),
                        'frequency': 123,
                        'runOnce': True|False,
                        'licenseType': 'AWS'|'BYOL',
                        'numberOfRecentAmisToKeep': 123,
                        'encrypted': True|False,
                        'kmsKeyId': 'string'
                    }
                },
            ]
        },
    ]
)
type appId

string

param appId

ID of the application tassociated with the replication configuration.

type serverGroupReplicationConfigurations

list

param serverGroupReplicationConfigurations

Replication configurations for server groups in the application.

  • (dict) --

    Replication configuration for a server group.

    • serverGroupId (string) --

      Identifier of the server group this replication configuration is associated with.

    • serverReplicationConfigurations (list) --

      Replication configuration for servers in the server group.

      • (dict) --

        Replication configuration of a server.

        • server (dict) --

          Identifier of the server this replication configuration is associated with.

          • serverId (string) --

            The identifier of the server.

          • serverType (string) --

            The type of server.

          • vmServer (dict) --

            Information about the VM server.

            • vmServerAddress (dict) --

              Information about the VM server location.

              • vmManagerId (string) --

                The identifier of the VM manager.

              • vmId (string) --

                The identifier of the VM.

            • vmName (string) --

              The name of the VM.

            • vmManagerName (string) --

              The name of the VM manager.

            • vmManagerType (string) --

              The type of VM management product.

            • vmPath (string) --

              The VM folder path in the vCenter Server virtual machine inventory tree.

          • replicationJobId (string) --

            The identifier of the replication job.

          • replicationJobTerminated (boolean) --

            Indicates whether the replication job is deleted or failed.

        • serverReplicationParameters (dict) --

          Parameters for replicating the server.

          • seedTime (datetime) --

            Seed time for creating a replication job for the server.

          • frequency (integer) --

            Frequency of creating replication jobs for the server.

          • runOnce (boolean) --

          • licenseType (string) --

            License type for creating a replication job for the server.

          • numberOfRecentAmisToKeep (integer) --

            Number of recent AMIs to keep when creating a replication job for this server.

          • encrypted (boolean) --

            When true, the replication job produces encrypted AMIs. See also KmsKeyId below.

          • kmsKeyId (string) --

            KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

            • KMS key ID

            • KMS key alias

            • ARN referring to KMS key ID

            • ARN referring to KMS key alias

            If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListApps (new) Link ¶

Returns a list of summaries for all applications.

See also: AWS API Documentation

Request Syntax

client.list_apps(
    appIds=[
        'string',
    ],
    nextToken='string',
    maxResults=123
)
type appIds

list

param appIds
  • (string) --

type nextToken

string

param nextToken

The token for the next set of results.

type maxResults

integer

param maxResults

The maximum number of results to return in a single call. The default value is 50. To retrieve the remaining results, make another call with the returned NextToken value.

rtype

dict

returns

Response Syntax

{
    'apps': [
        {
            'appId': 'string',
            'name': 'string',
            'description': 'string',
            'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'DELETED'|'DELETE_FAILED',
            'statusMessage': 'string',
            'replicationStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_REPLICATION'|'VALIDATION_IN_PROGRESS'|'REPLICATION_PENDING'|'REPLICATION_IN_PROGRESS'|'REPLICATED'|'DELTA_REPLICATION_IN_PROGRESS'|'DELTA_REPLICATED'|'DELTA_REPLICATION_FAILED'|'REPLICATION_FAILED'|'REPLICATION_STOPPING'|'REPLICATION_STOP_FAILED'|'REPLICATION_STOPPED',
            'replicationStatusMessage': 'string',
            'latestReplicationTime': datetime(2015, 1, 1),
            'launchStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_LAUNCH'|'VALIDATION_IN_PROGRESS'|'LAUNCH_PENDING'|'LAUNCH_IN_PROGRESS'|'LAUNCHED'|'DELTA_LAUNCH_IN_PROGRESS'|'DELTA_LAUNCH_FAILED'|'LAUNCH_FAILED'|'TERMINATE_IN_PROGRESS'|'TERMINATE_FAILED'|'TERMINATED',
            'launchStatusMessage': 'string',
            'launchDetails': {
                'latestLaunchTime': datetime(2015, 1, 1),
                'stackName': 'string',
                'stackId': 'string'
            },
            'creationTime': datetime(2015, 1, 1),
            'lastModified': datetime(2015, 1, 1),
            'roleName': 'string',
            'totalServerGroups': 123,
            'totalServers': 123
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • apps (list) --

      A list of application summaries.

      • (dict) --

        Information about the application.

        • appId (string) --

          Unique ID of the application.

        • name (string) --

          Name of the application.

        • description (string) --

          Description of the application.

        • status (string) --

          Status of the application.

        • statusMessage (string) --

          A message related to the status of the application

        • replicationStatus (string) --

          Replication status of the application.

        • replicationStatusMessage (string) --

          A message related to the replication status of the application.

        • latestReplicationTime (datetime) --

          Timestamp of the application's most recent successful replication.

        • launchStatus (string) --

          Launch status of the application.

        • launchStatusMessage (string) --

          A message related to the launch status of the application.

        • launchDetails (dict) --

          Details about the latest launch of the application.

          • latestLaunchTime (datetime) --

            Latest time this application was launched successfully.

          • stackName (string) --

            Name of the latest stack launched for this application.

          • stackId (string) --

            Identifier of the latest stack launched for this application.

        • creationTime (datetime) --

          Time of creation of this application.

        • lastModified (datetime) --

          Timestamp of the application's creation.

        • roleName (string) --

          Name of the service role in the customer's account used by AWS SMS.

        • totalServerGroups (integer) --

          Number of server groups present in the application.

        • totalServers (integer) --

          Number of servers present in the application.

    • nextToken (string) --

      The token required to retrieve the next set of results. This value is null when there are no more results to return.

LaunchApp (new) Link ¶

Launches an application stack.

See also: AWS API Documentation

Request Syntax

client.launch_app(
    appId='string'
)
type appId

string

param appId

ID of the application to launch.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

CreateApp (new) Link ¶

Creates an application. An application consists of one or more server groups. Each server group contain one or more servers.

See also: AWS API Documentation

Request Syntax

client.create_app(
    name='string',
    description='string',
    roleName='string',
    clientToken='string',
    serverGroups=[
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
type name

string

param name

Name of the new application.

type description

string

param description

Description of the new application

type roleName

string

param roleName

Name of service role in customer's account to be used by AWS SMS.

type clientToken

string

param clientToken

A unique, case-sensitive identifier you provide to ensure idempotency of application creation.

type serverGroups

list

param serverGroups

List of server groups to include in the application.

  • (dict) --

    A logical grouping of servers.

    • serverGroupId (string) --

      Identifier of a server group.

    • name (string) --

      Name of a server group.

    • serverList (list) --

      List of servers belonging to a server group.

      • (dict) --

        Represents a server.

        • serverId (string) --

          The identifier of the server.

        • serverType (string) --

          The type of server.

        • vmServer (dict) --

          Information about the VM server.

          • vmServerAddress (dict) --

            Information about the VM server location.

            • vmManagerId (string) --

              The identifier of the VM manager.

            • vmId (string) --

              The identifier of the VM.

          • vmName (string) --

            The name of the VM.

          • vmManagerName (string) --

            The name of the VM manager.

          • vmManagerType (string) --

            The type of VM management product.

          • vmPath (string) --

            The VM folder path in the vCenter Server virtual machine inventory tree.

        • replicationJobId (string) --

          The identifier of the replication job.

        • replicationJobTerminated (boolean) --

          Indicates whether the replication job is deleted or failed.

type tags

list

param tags

List of tags to be associated with the application.

  • (dict) --

    A label that can be assigned to an application.

    • key (string) --

      Tag key.

    • value (string) --

      Tag value.

rtype

dict

returns

Response Syntax

{
    'appSummary': {
        'appId': 'string',
        'name': 'string',
        'description': 'string',
        'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'DELETED'|'DELETE_FAILED',
        'statusMessage': 'string',
        'replicationStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_REPLICATION'|'VALIDATION_IN_PROGRESS'|'REPLICATION_PENDING'|'REPLICATION_IN_PROGRESS'|'REPLICATED'|'DELTA_REPLICATION_IN_PROGRESS'|'DELTA_REPLICATED'|'DELTA_REPLICATION_FAILED'|'REPLICATION_FAILED'|'REPLICATION_STOPPING'|'REPLICATION_STOP_FAILED'|'REPLICATION_STOPPED',
        'replicationStatusMessage': 'string',
        'latestReplicationTime': datetime(2015, 1, 1),
        'launchStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_LAUNCH'|'VALIDATION_IN_PROGRESS'|'LAUNCH_PENDING'|'LAUNCH_IN_PROGRESS'|'LAUNCHED'|'DELTA_LAUNCH_IN_PROGRESS'|'DELTA_LAUNCH_FAILED'|'LAUNCH_FAILED'|'TERMINATE_IN_PROGRESS'|'TERMINATE_FAILED'|'TERMINATED',
        'launchStatusMessage': 'string',
        'launchDetails': {
            'latestLaunchTime': datetime(2015, 1, 1),
            'stackName': 'string',
            'stackId': 'string'
        },
        'creationTime': datetime(2015, 1, 1),
        'lastModified': datetime(2015, 1, 1),
        'roleName': 'string',
        'totalServerGroups': 123,
        'totalServers': 123
    },
    'serverGroups': [
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appSummary (dict) --

      Summary description of the application.

      • appId (string) --

        Unique ID of the application.

      • name (string) --

        Name of the application.

      • description (string) --

        Description of the application.

      • status (string) --

        Status of the application.

      • statusMessage (string) --

        A message related to the status of the application

      • replicationStatus (string) --

        Replication status of the application.

      • replicationStatusMessage (string) --

        A message related to the replication status of the application.

      • latestReplicationTime (datetime) --

        Timestamp of the application's most recent successful replication.

      • launchStatus (string) --

        Launch status of the application.

      • launchStatusMessage (string) --

        A message related to the launch status of the application.

      • launchDetails (dict) --

        Details about the latest launch of the application.

        • latestLaunchTime (datetime) --

          Latest time this application was launched successfully.

        • stackName (string) --

          Name of the latest stack launched for this application.

        • stackId (string) --

          Identifier of the latest stack launched for this application.

      • creationTime (datetime) --

        Time of creation of this application.

      • lastModified (datetime) --

        Timestamp of the application's creation.

      • roleName (string) --

        Name of the service role in the customer's account used by AWS SMS.

      • totalServerGroups (integer) --

        Number of server groups present in the application.

      • totalServers (integer) --

        Number of servers present in the application.

    • serverGroups (list) --

      List of server groups included in the application.

      • (dict) --

        A logical grouping of servers.

        • serverGroupId (string) --

          Identifier of a server group.

        • name (string) --

          Name of a server group.

        • serverList (list) --

          List of servers belonging to a server group.

          • (dict) --

            Represents a server.

            • serverId (string) --

              The identifier of the server.

            • serverType (string) --

              The type of server.

            • vmServer (dict) --

              Information about the VM server.

              • vmServerAddress (dict) --

                Information about the VM server location.

                • vmManagerId (string) --

                  The identifier of the VM manager.

                • vmId (string) --

                  The identifier of the VM.

              • vmName (string) --

                The name of the VM.

              • vmManagerName (string) --

                The name of the VM manager.

              • vmManagerType (string) --

                The type of VM management product.

              • vmPath (string) --

                The VM folder path in the vCenter Server virtual machine inventory tree.

            • replicationJobId (string) --

              The identifier of the replication job.

            • replicationJobTerminated (boolean) --

              Indicates whether the replication job is deleted or failed.

    • tags (list) --

      List of taags associated with the application.

      • (dict) --

        A label that can be assigned to an application.

        • key (string) --

          Tag key.

        • value (string) --

          Tag value.

GenerateTemplate (new) Link ¶

Generates an Amazon CloudFormation template based on the current launch configuration and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.

See also: AWS API Documentation

Request Syntax

client.generate_template(
    appId='string',
    templateFormat='JSON'|'YAML'
)
type appId

string

param appId

ID of the application associated with the Amazon CloudFormation template.

type templateFormat

string

param templateFormat

Format for generating the Amazon CloudFormation template.

rtype

dict

returns

Response Syntax

{
    's3Location': {
        'bucket': 'string',
        'key': 'string'
    }
}

Response Structure

  • (dict) --

    • s3Location (dict) --

      Location of the Amazon S3 object.

      • bucket (string) --

        Amazon S3 bucket name.

      • key (string) --

        Amazon S3 bucket key.

GetApp (new) Link ¶

Retrieve information about an application.

See also: AWS API Documentation

Request Syntax

client.get_app(
    appId='string'
)
type appId

string

param appId

ID of the application whose information is being retrieved.

rtype

dict

returns

Response Syntax

{
    'appSummary': {
        'appId': 'string',
        'name': 'string',
        'description': 'string',
        'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'DELETED'|'DELETE_FAILED',
        'statusMessage': 'string',
        'replicationStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_REPLICATION'|'VALIDATION_IN_PROGRESS'|'REPLICATION_PENDING'|'REPLICATION_IN_PROGRESS'|'REPLICATED'|'DELTA_REPLICATION_IN_PROGRESS'|'DELTA_REPLICATED'|'DELTA_REPLICATION_FAILED'|'REPLICATION_FAILED'|'REPLICATION_STOPPING'|'REPLICATION_STOP_FAILED'|'REPLICATION_STOPPED',
        'replicationStatusMessage': 'string',
        'latestReplicationTime': datetime(2015, 1, 1),
        'launchStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_LAUNCH'|'VALIDATION_IN_PROGRESS'|'LAUNCH_PENDING'|'LAUNCH_IN_PROGRESS'|'LAUNCHED'|'DELTA_LAUNCH_IN_PROGRESS'|'DELTA_LAUNCH_FAILED'|'LAUNCH_FAILED'|'TERMINATE_IN_PROGRESS'|'TERMINATE_FAILED'|'TERMINATED',
        'launchStatusMessage': 'string',
        'launchDetails': {
            'latestLaunchTime': datetime(2015, 1, 1),
            'stackName': 'string',
            'stackId': 'string'
        },
        'creationTime': datetime(2015, 1, 1),
        'lastModified': datetime(2015, 1, 1),
        'roleName': 'string',
        'totalServerGroups': 123,
        'totalServers': 123
    },
    'serverGroups': [
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appSummary (dict) --

      Information about the application.

      • appId (string) --

        Unique ID of the application.

      • name (string) --

        Name of the application.

      • description (string) --

        Description of the application.

      • status (string) --

        Status of the application.

      • statusMessage (string) --

        A message related to the status of the application

      • replicationStatus (string) --

        Replication status of the application.

      • replicationStatusMessage (string) --

        A message related to the replication status of the application.

      • latestReplicationTime (datetime) --

        Timestamp of the application's most recent successful replication.

      • launchStatus (string) --

        Launch status of the application.

      • launchStatusMessage (string) --

        A message related to the launch status of the application.

      • launchDetails (dict) --

        Details about the latest launch of the application.

        • latestLaunchTime (datetime) --

          Latest time this application was launched successfully.

        • stackName (string) --

          Name of the latest stack launched for this application.

        • stackId (string) --

          Identifier of the latest stack launched for this application.

      • creationTime (datetime) --

        Time of creation of this application.

      • lastModified (datetime) --

        Timestamp of the application's creation.

      • roleName (string) --

        Name of the service role in the customer's account used by AWS SMS.

      • totalServerGroups (integer) --

        Number of server groups present in the application.

      • totalServers (integer) --

        Number of servers present in the application.

    • serverGroups (list) --

      List of server groups belonging to the application.

      • (dict) --

        A logical grouping of servers.

        • serverGroupId (string) --

          Identifier of a server group.

        • name (string) --

          Name of a server group.

        • serverList (list) --

          List of servers belonging to a server group.

          • (dict) --

            Represents a server.

            • serverId (string) --

              The identifier of the server.

            • serverType (string) --

              The type of server.

            • vmServer (dict) --

              Information about the VM server.

              • vmServerAddress (dict) --

                Information about the VM server location.

                • vmManagerId (string) --

                  The identifier of the VM manager.

                • vmId (string) --

                  The identifier of the VM.

              • vmName (string) --

                The name of the VM.

              • vmManagerName (string) --

                The name of the VM manager.

              • vmManagerType (string) --

                The type of VM management product.

              • vmPath (string) --

                The VM folder path in the vCenter Server virtual machine inventory tree.

            • replicationJobId (string) --

              The identifier of the replication job.

            • replicationJobTerminated (boolean) --

              Indicates whether the replication job is deleted or failed.

    • tags (list) --

      List of tags associated with the application.

      • (dict) --

        A label that can be assigned to an application.

        • key (string) --

          Tag key.

        • value (string) --

          Tag value.

GetAppReplicationConfiguration (new) Link ¶

Retrieves an application replication configuration associatd with an application.

See also: AWS API Documentation

Request Syntax

client.get_app_replication_configuration(
    appId='string'
)
type appId

string

param appId

ID of the application associated with the replication configuration.

rtype

dict

returns

Response Syntax

{
    'serverGroupReplicationConfigurations': [
        {
            'serverGroupId': 'string',
            'serverReplicationConfigurations': [
                {
                    'server': {
                        'serverId': 'string',
                        'serverType': 'VIRTUAL_MACHINE',
                        'vmServer': {
                            'vmServerAddress': {
                                'vmManagerId': 'string',
                                'vmId': 'string'
                            },
                            'vmName': 'string',
                            'vmManagerName': 'string',
                            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                            'vmPath': 'string'
                        },
                        'replicationJobId': 'string',
                        'replicationJobTerminated': True|False
                    },
                    'serverReplicationParameters': {
                        'seedTime': datetime(2015, 1, 1),
                        'frequency': 123,
                        'runOnce': True|False,
                        'licenseType': 'AWS'|'BYOL',
                        'numberOfRecentAmisToKeep': 123,
                        'encrypted': True|False,
                        'kmsKeyId': 'string'
                    }
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • serverGroupReplicationConfigurations (list) --

      Replication configurations associated with server groups in this application.

      • (dict) --

        Replication configuration for a server group.

        • serverGroupId (string) --

          Identifier of the server group this replication configuration is associated with.

        • serverReplicationConfigurations (list) --

          Replication configuration for servers in the server group.

          • (dict) --

            Replication configuration of a server.

            • server (dict) --

              Identifier of the server this replication configuration is associated with.

              • serverId (string) --

                The identifier of the server.

              • serverType (string) --

                The type of server.

              • vmServer (dict) --

                Information about the VM server.

                • vmServerAddress (dict) --

                  Information about the VM server location.

                  • vmManagerId (string) --

                    The identifier of the VM manager.

                  • vmId (string) --

                    The identifier of the VM.

                • vmName (string) --

                  The name of the VM.

                • vmManagerName (string) --

                  The name of the VM manager.

                • vmManagerType (string) --

                  The type of VM management product.

                • vmPath (string) --

                  The VM folder path in the vCenter Server virtual machine inventory tree.

              • replicationJobId (string) --

                The identifier of the replication job.

              • replicationJobTerminated (boolean) --

                Indicates whether the replication job is deleted or failed.

            • serverReplicationParameters (dict) --

              Parameters for replicating the server.

              • seedTime (datetime) --

                Seed time for creating a replication job for the server.

              • frequency (integer) --

                Frequency of creating replication jobs for the server.

              • runOnce (boolean) --

              • licenseType (string) --

                License type for creating a replication job for the server.

              • numberOfRecentAmisToKeep (integer) --

                Number of recent AMIs to keep when creating a replication job for this server.

              • encrypted (boolean) --

                When true, the replication job produces encrypted AMIs. See also KmsKeyId below.

              • kmsKeyId (string) --

                KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

                • KMS key ID

                • KMS key alias

                • ARN referring to KMS key ID

                • ARN referring to KMS key alias

                If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

UpdateApp (new) Link ¶

Updates an application.

See also: AWS API Documentation

Request Syntax

client.update_app(
    appId='string',
    name='string',
    description='string',
    roleName='string',
    serverGroups=[
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
type appId

string

param appId

ID of the application to update.

type name

string

param name

New name of the application.

type description

string

param description

New description of the application.

type roleName

string

param roleName

Name of the service role in the customer's account used by AWS SMS.

type serverGroups

list

param serverGroups

List of server groups in the application to update.

  • (dict) --

    A logical grouping of servers.

    • serverGroupId (string) --

      Identifier of a server group.

    • name (string) --

      Name of a server group.

    • serverList (list) --

      List of servers belonging to a server group.

      • (dict) --

        Represents a server.

        • serverId (string) --

          The identifier of the server.

        • serverType (string) --

          The type of server.

        • vmServer (dict) --

          Information about the VM server.

          • vmServerAddress (dict) --

            Information about the VM server location.

            • vmManagerId (string) --

              The identifier of the VM manager.

            • vmId (string) --

              The identifier of the VM.

          • vmName (string) --

            The name of the VM.

          • vmManagerName (string) --

            The name of the VM manager.

          • vmManagerType (string) --

            The type of VM management product.

          • vmPath (string) --

            The VM folder path in the vCenter Server virtual machine inventory tree.

        • replicationJobId (string) --

          The identifier of the replication job.

        • replicationJobTerminated (boolean) --

          Indicates whether the replication job is deleted or failed.

type tags

list

param tags

List of tags to associate with the application.

  • (dict) --

    A label that can be assigned to an application.

    • key (string) --

      Tag key.

    • value (string) --

      Tag value.

rtype

dict

returns

Response Syntax

{
    'appSummary': {
        'appId': 'string',
        'name': 'string',
        'description': 'string',
        'status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'DELETED'|'DELETE_FAILED',
        'statusMessage': 'string',
        'replicationStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_REPLICATION'|'VALIDATION_IN_PROGRESS'|'REPLICATION_PENDING'|'REPLICATION_IN_PROGRESS'|'REPLICATED'|'DELTA_REPLICATION_IN_PROGRESS'|'DELTA_REPLICATED'|'DELTA_REPLICATION_FAILED'|'REPLICATION_FAILED'|'REPLICATION_STOPPING'|'REPLICATION_STOP_FAILED'|'REPLICATION_STOPPED',
        'replicationStatusMessage': 'string',
        'latestReplicationTime': datetime(2015, 1, 1),
        'launchStatus': 'READY_FOR_CONFIGURATION'|'CONFIGURATION_IN_PROGRESS'|'CONFIGURATION_INVALID'|'READY_FOR_LAUNCH'|'VALIDATION_IN_PROGRESS'|'LAUNCH_PENDING'|'LAUNCH_IN_PROGRESS'|'LAUNCHED'|'DELTA_LAUNCH_IN_PROGRESS'|'DELTA_LAUNCH_FAILED'|'LAUNCH_FAILED'|'TERMINATE_IN_PROGRESS'|'TERMINATE_FAILED'|'TERMINATED',
        'launchStatusMessage': 'string',
        'launchDetails': {
            'latestLaunchTime': datetime(2015, 1, 1),
            'stackName': 'string',
            'stackId': 'string'
        },
        'creationTime': datetime(2015, 1, 1),
        'lastModified': datetime(2015, 1, 1),
        'roleName': 'string',
        'totalServerGroups': 123,
        'totalServers': 123
    },
    'serverGroups': [
        {
            'serverGroupId': 'string',
            'name': 'string',
            'serverList': [
                {
                    'serverId': 'string',
                    'serverType': 'VIRTUAL_MACHINE',
                    'vmServer': {
                        'vmServerAddress': {
                            'vmManagerId': 'string',
                            'vmId': 'string'
                        },
                        'vmName': 'string',
                        'vmManagerName': 'string',
                        'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                        'vmPath': 'string'
                    },
                    'replicationJobId': 'string',
                    'replicationJobTerminated': True|False
                },
            ]
        },
    ],
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appSummary (dict) --

      Summary description of the application.

      • appId (string) --

        Unique ID of the application.

      • name (string) --

        Name of the application.

      • description (string) --

        Description of the application.

      • status (string) --

        Status of the application.

      • statusMessage (string) --

        A message related to the status of the application

      • replicationStatus (string) --

        Replication status of the application.

      • replicationStatusMessage (string) --

        A message related to the replication status of the application.

      • latestReplicationTime (datetime) --

        Timestamp of the application's most recent successful replication.

      • launchStatus (string) --

        Launch status of the application.

      • launchStatusMessage (string) --

        A message related to the launch status of the application.

      • launchDetails (dict) --

        Details about the latest launch of the application.

        • latestLaunchTime (datetime) --

          Latest time this application was launched successfully.

        • stackName (string) --

          Name of the latest stack launched for this application.

        • stackId (string) --

          Identifier of the latest stack launched for this application.

      • creationTime (datetime) --

        Time of creation of this application.

      • lastModified (datetime) --

        Timestamp of the application's creation.

      • roleName (string) --

        Name of the service role in the customer's account used by AWS SMS.

      • totalServerGroups (integer) --

        Number of server groups present in the application.

      • totalServers (integer) --

        Number of servers present in the application.

    • serverGroups (list) --

      List of updated server groups in the application.

      • (dict) --

        A logical grouping of servers.

        • serverGroupId (string) --

          Identifier of a server group.

        • name (string) --

          Name of a server group.

        • serverList (list) --

          List of servers belonging to a server group.

          • (dict) --

            Represents a server.

            • serverId (string) --

              The identifier of the server.

            • serverType (string) --

              The type of server.

            • vmServer (dict) --

              Information about the VM server.

              • vmServerAddress (dict) --

                Information about the VM server location.

                • vmManagerId (string) --

                  The identifier of the VM manager.

                • vmId (string) --

                  The identifier of the VM.

              • vmName (string) --

                The name of the VM.

              • vmManagerName (string) --

                The name of the VM manager.

              • vmManagerType (string) --

                The type of VM management product.

              • vmPath (string) --

                The VM folder path in the vCenter Server virtual machine inventory tree.

            • replicationJobId (string) --

              The identifier of the replication job.

            • replicationJobTerminated (boolean) --

              Indicates whether the replication job is deleted or failed.

    • tags (list) --

      List of tags associated with the application.

      • (dict) --

        A label that can be assigned to an application.

        • key (string) --

          Tag key.

        • value (string) --

          Tag value.

GenerateChangeSet (new) Link ¶

Generates a target change set for a currently launched stack and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.

See also: AWS API Documentation

Request Syntax

client.generate_change_set(
    appId='string',
    changesetFormat='JSON'|'YAML'
)
type appId

string

param appId

ID of the application associated with the change set.

type changesetFormat

string

param changesetFormat

Format for the change set.

rtype

dict

returns

Response Syntax

{
    's3Location': {
        'bucket': 'string',
        'key': 'string'
    }
}

Response Structure

  • (dict) --

    • s3Location (dict) --

      Location of the Amazon S3 object.

      • bucket (string) --

        Amazon S3 bucket name.

      • key (string) --

        Amazon S3 bucket key.

TerminateApp (new) Link ¶

Terminates the stack for an application.

See also: AWS API Documentation

Request Syntax

client.terminate_app(
    appId='string'
)
type appId

string

param appId

ID of the application to terminate.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

StopAppReplication (new) Link ¶

Stops replicating an application.

See also: AWS API Documentation

Request Syntax

client.stop_app_replication(
    appId='string'
)
type appId

string

param appId

ID of the application to stop replicating.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DeleteApp (new) Link ¶

Deletes an existing application. Optionally deletes the launched stack associated with the application and all AWS SMS replication jobs for servers in the application.

See also: AWS API Documentation

Request Syntax

client.delete_app(
    appId='string',
    forceStopAppReplication=True|False,
    forceTerminateApp=True|False
)
type appId

string

param appId

ID of the application to delete.

type forceStopAppReplication

boolean

param forceStopAppReplication

While deleting the application, stop all replication jobs corresponding to the servers in the application.

type forceTerminateApp

boolean

param forceTerminateApp

While deleting the application, terminate the stack corresponding to the application.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

PutAppLaunchConfiguration (new) Link ¶

Creates a launch configuration for an application.

See also: AWS API Documentation

Request Syntax

client.put_app_launch_configuration(
    appId='string',
    roleName='string',
    serverGroupLaunchConfigurations=[
        {
            'serverGroupId': 'string',
            'launchOrder': 123,
            'serverLaunchConfigurations': [
                {
                    'server': {
                        'serverId': 'string',
                        'serverType': 'VIRTUAL_MACHINE',
                        'vmServer': {
                            'vmServerAddress': {
                                'vmManagerId': 'string',
                                'vmId': 'string'
                            },
                            'vmName': 'string',
                            'vmManagerName': 'string',
                            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                            'vmPath': 'string'
                        },
                        'replicationJobId': 'string',
                        'replicationJobTerminated': True|False
                    },
                    'logicalId': 'string',
                    'vpc': 'string',
                    'subnet': 'string',
                    'securityGroup': 'string',
                    'ec2KeyName': 'string',
                    'userData': {
                        's3Location': {
                            'bucket': 'string',
                            'key': 'string'
                        }
                    },
                    'instanceType': 'string',
                    'associatePublicIpAddress': True|False
                },
            ]
        },
    ]
)
type appId

string

param appId

ID of the application associated with the launch configuration.

type roleName

string

param roleName

Name of service role in the customer's account that Amazon CloudFormation uses to launch the application.

type serverGroupLaunchConfigurations

list

param serverGroupLaunchConfigurations

Launch configurations for server groups in the application.

  • (dict) --

    Launch configuration for a server group.

    • serverGroupId (string) --

      Identifier of the server group the launch configuration is associated with.

    • launchOrder (integer) --

      Launch order of servers in the server group.

    • serverLaunchConfigurations (list) --

      Launch configuration for servers in the server group.

      • (dict) --

        Launch configuration for a server.

        • server (dict) --

          Identifier of the server the launch configuration is associated with.

          • serverId (string) --

            The identifier of the server.

          • serverType (string) --

            The type of server.

          • vmServer (dict) --

            Information about the VM server.

            • vmServerAddress (dict) --

              Information about the VM server location.

              • vmManagerId (string) --

                The identifier of the VM manager.

              • vmId (string) --

                The identifier of the VM.

            • vmName (string) --

              The name of the VM.

            • vmManagerName (string) --

              The name of the VM manager.

            • vmManagerType (string) --

              The type of VM management product.

            • vmPath (string) --

              The VM folder path in the vCenter Server virtual machine inventory tree.

          • replicationJobId (string) --

            The identifier of the replication job.

          • replicationJobTerminated (boolean) --

            Indicates whether the replication job is deleted or failed.

        • logicalId (string) --

          Logical ID of the server in the Amazon CloudFormation template.

        • vpc (string) --

          Identifier of the VPC the server should be launched into.

        • subnet (string) --

          Identifier of the subnet the server should be launched into.

        • securityGroup (string) --

          Identifier of the security group that applies to the launched server.

        • ec2KeyName (string) --

          Name of the EC2 SSH Key to be used for connecting to the launched server.

        • userData (dict) --

          Location of the user-data script to be executed when launching the server.

          • s3Location (dict) --

            Amazon S3 location of the user-data script.

            • bucket (string) --

              Amazon S3 bucket name.

            • key (string) --

              Amazon S3 bucket key.

        • instanceType (string) --

          Instance type to be used for launching the server.

        • associatePublicIpAddress (boolean) --

          If true, a publicly accessible IP address is created when launching the server.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

StartAppReplication (new) Link ¶

Starts replicating an application.

See also: AWS API Documentation

Request Syntax

client.start_app_replication(
    appId='string'
)
type appId

string

param appId

ID of the application to replicate.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DeleteAppReplicationConfiguration (new) Link ¶

Deletes existing replication configuration for an application.

See also: AWS API Documentation

Request Syntax

client.delete_app_replication_configuration(
    appId='string'
)
type appId

string

param appId

ID of the application associated with the replication configuration.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

GetAppLaunchConfiguration (new) Link ¶

Retrieves the application launch configuration associated with an application.

See also: AWS API Documentation

Request Syntax

client.get_app_launch_configuration(
    appId='string'
)
type appId

string

param appId

ID of the application launch configuration.

rtype

dict

returns

Response Syntax

{
    'appId': 'string',
    'roleName': 'string',
    'serverGroupLaunchConfigurations': [
        {
            'serverGroupId': 'string',
            'launchOrder': 123,
            'serverLaunchConfigurations': [
                {
                    'server': {
                        'serverId': 'string',
                        'serverType': 'VIRTUAL_MACHINE',
                        'vmServer': {
                            'vmServerAddress': {
                                'vmManagerId': 'string',
                                'vmId': 'string'
                            },
                            'vmName': 'string',
                            'vmManagerName': 'string',
                            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                            'vmPath': 'string'
                        },
                        'replicationJobId': 'string',
                        'replicationJobTerminated': True|False
                    },
                    'logicalId': 'string',
                    'vpc': 'string',
                    'subnet': 'string',
                    'securityGroup': 'string',
                    'ec2KeyName': 'string',
                    'userData': {
                        's3Location': {
                            'bucket': 'string',
                            'key': 'string'
                        }
                    },
                    'instanceType': 'string',
                    'associatePublicIpAddress': True|False
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • appId (string) --

      ID of the application associated with the launch configuration.

    • roleName (string) --

      Name of the service role in the customer's account that Amazon CloudFormation uses to launch the application.

    • serverGroupLaunchConfigurations (list) --

      List of launch configurations for server groups in this application.

      • (dict) --

        Launch configuration for a server group.

        • serverGroupId (string) --

          Identifier of the server group the launch configuration is associated with.

        • launchOrder (integer) --

          Launch order of servers in the server group.

        • serverLaunchConfigurations (list) --

          Launch configuration for servers in the server group.

          • (dict) --

            Launch configuration for a server.

            • server (dict) --

              Identifier of the server the launch configuration is associated with.

              • serverId (string) --

                The identifier of the server.

              • serverType (string) --

                The type of server.

              • vmServer (dict) --

                Information about the VM server.

                • vmServerAddress (dict) --

                  Information about the VM server location.

                  • vmManagerId (string) --

                    The identifier of the VM manager.

                  • vmId (string) --

                    The identifier of the VM.

                • vmName (string) --

                  The name of the VM.

                • vmManagerName (string) --

                  The name of the VM manager.

                • vmManagerType (string) --

                  The type of VM management product.

                • vmPath (string) --

                  The VM folder path in the vCenter Server virtual machine inventory tree.

              • replicationJobId (string) --

                The identifier of the replication job.

              • replicationJobTerminated (boolean) --

                Indicates whether the replication job is deleted or failed.

            • logicalId (string) --

              Logical ID of the server in the Amazon CloudFormation template.

            • vpc (string) --

              Identifier of the VPC the server should be launched into.

            • subnet (string) --

              Identifier of the subnet the server should be launched into.

            • securityGroup (string) --

              Identifier of the security group that applies to the launched server.

            • ec2KeyName (string) --

              Name of the EC2 SSH Key to be used for connecting to the launched server.

            • userData (dict) --

              Location of the user-data script to be executed when launching the server.

              • s3Location (dict) --

                Amazon S3 location of the user-data script.

                • bucket (string) --

                  Amazon S3 bucket name.

                • key (string) --

                  Amazon S3 bucket key.

            • instanceType (string) --

              Instance type to be used for launching the server.

            • associatePublicIpAddress (boolean) --

              If true, a publicly accessible IP address is created when launching the server.

DeleteAppLaunchConfiguration (new) Link ¶

Deletes existing launch configuration for an application.

See also: AWS API Documentation

Request Syntax

client.delete_app_launch_configuration(
    appId='string'
)
type appId

string

param appId

ID of the application associated with the launch configuration.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

CreateReplicationJob (updated) Link ¶
Changes (request)
{'encrypted': 'boolean',
 'kmsKeyId': 'string',
 'numberOfRecentAmisToKeep': 'integer',
 'runOnce': 'boolean'}

Creates a replication job. The replication job schedules periodic replication runs to replicate your server to AWS. Each replication run creates an Amazon Machine Image (AMI).

See also: AWS API Documentation

Request Syntax

client.create_replication_job(
    serverId='string',
    seedReplicationTime=datetime(2015, 1, 1),
    frequency=123,
    runOnce=True|False,
    licenseType='AWS'|'BYOL',
    roleName='string',
    description='string',
    numberOfRecentAmisToKeep=123,
    encrypted=True|False,
    kmsKeyId='string'
)
type serverId

string

param serverId

[REQUIRED]

The identifier of the server.

type seedReplicationTime

datetime

param seedReplicationTime

[REQUIRED]

The seed replication time.

type frequency

integer

param frequency

The time between consecutive replication runs, in hours.

type runOnce

boolean

param runOnce

type licenseType

string

param licenseType

The license type to be used for the AMI created by a successful replication run.

type roleName

string

param roleName

The name of the IAM role to be used by the AWS SMS.

type description

string

param description

The description of the replication job.

type numberOfRecentAmisToKeep

integer

param numberOfRecentAmisToKeep

The maximum number of SMS-created AMIs to retain. The oldest will be deleted once the maximum number is reached and a new AMI is created.

type encrypted

boolean

param encrypted

When true , the replication job produces encrypted AMIs. See also KmsKeyId below.

type kmsKeyId

string

param kmsKeyId

KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

  • KMS key ID

  • KMS key alias

  • ARN referring to KMS key ID

  • ARN referring to KMS key alias

If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

rtype

dict

returns

Response Syntax

{
    'replicationJobId': 'string'
}

Response Structure

  • (dict) --

    • replicationJobId (string) --

      The unique identifier of the replication job.

GetConnectors (updated) Link ¶
Changes (response)
{'connectorList': {'capabilityList': ['SNAPSHOT_BATCHING',
                                      'SCVMM',
                                      'HYPERV-MANAGER'],
                   'vmManagerType': ['SCVMM', 'HYPERV-MANAGER']}}

Describes the connectors registered with the AWS SMS.

See also: AWS API Documentation

Request Syntax

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

string

param nextToken

The token for the next set of results.

type maxResults

integer

param maxResults

The maximum number of results to return in a single call. The default value is 50. To retrieve the remaining results, make another call with the returned NextToken value.

rtype

dict

returns

Response Syntax

{
    'connectorList': [
        {
            'connectorId': 'string',
            'version': 'string',
            'status': 'HEALTHY'|'UNHEALTHY',
            'capabilityList': [
                'VSPHERE'|'SCVMM'|'HYPERV-MANAGER'|'SNAPSHOT_BATCHING',
            ],
            'vmManagerName': 'string',
            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
            'vmManagerId': 'string',
            'ipAddress': 'string',
            'macAddress': 'string',
            'associatedOn': datetime(2015, 1, 1)
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • connectorList (list) --

      Information about the registered connectors.

      • (dict) --

        Represents a connector.

        • connectorId (string) --

          The identifier of the connector.

        • version (string) --

          The connector version.

        • status (string) --

          The status of the connector.

        • capabilityList (list) --

          The capabilities of the connector.

          • (string) --

        • vmManagerName (string) --

          The name of the VM manager.

        • vmManagerType (string) --

          The VM management product.

        • vmManagerId (string) --

          The identifier of the VM manager.

        • ipAddress (string) --

          The IP address of the connector.

        • macAddress (string) --

          The MAC address of the connector.

        • associatedOn (datetime) --

          The time the connector was associated.

    • nextToken (string) --

      The token required to retrieve the next set of results. This value is null when there are no more results to return.

GetReplicationJobs (updated) Link ¶
Changes (response)
{'replicationJobList': {'encrypted': 'boolean',
                        'kmsKeyId': 'string',
                        'numberOfRecentAmisToKeep': 'integer',
                        'replicationRunList': {'encrypted': 'boolean',
                                               'kmsKeyId': 'string',
                                               'stageDetails': {'stage': 'string',
                                                                'stageProgress': 'string'}},
                        'runOnce': 'boolean',
                        'state': ['PAUSED_ON_FAILURE', 'FAILING', 'COMPLETED'],
                        'vmServer': {'vmManagerType': ['SCVMM',
                                                       'HYPERV-MANAGER']}}}

Describes the specified replication job or all of your replication jobs.

See also: AWS API Documentation

Request Syntax

client.get_replication_jobs(
    replicationJobId='string',
    nextToken='string',
    maxResults=123
)
type replicationJobId

string

param replicationJobId

The identifier of the replication job.

type nextToken

string

param nextToken

The token for the next set of results.

type maxResults

integer

param maxResults

The maximum number of results to return in a single call. The default value is 50. To retrieve the remaining results, make another call with the returned NextToken value.

rtype

dict

returns

Response Syntax

{
    'replicationJobList': [
        {
            'replicationJobId': 'string',
            'serverId': 'string',
            'serverType': 'VIRTUAL_MACHINE',
            'vmServer': {
                'vmServerAddress': {
                    'vmManagerId': 'string',
                    'vmId': 'string'
                },
                'vmName': 'string',
                'vmManagerName': 'string',
                'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                'vmPath': 'string'
            },
            'seedReplicationTime': datetime(2015, 1, 1),
            'frequency': 123,
            'runOnce': True|False,
            'nextReplicationRunStartTime': datetime(2015, 1, 1),
            'licenseType': 'AWS'|'BYOL',
            'roleName': 'string',
            'latestAmiId': 'string',
            'state': 'PENDING'|'ACTIVE'|'FAILED'|'DELETING'|'DELETED'|'COMPLETED'|'PAUSED_ON_FAILURE'|'FAILING',
            'statusMessage': 'string',
            'description': 'string',
            'numberOfRecentAmisToKeep': 123,
            'encrypted': True|False,
            'kmsKeyId': 'string',
            'replicationRunList': [
                {
                    'replicationRunId': 'string',
                    'state': 'PENDING'|'MISSED'|'ACTIVE'|'FAILED'|'COMPLETED'|'DELETING'|'DELETED',
                    'type': 'ON_DEMAND'|'AUTOMATIC',
                    'stageDetails': {
                        'stage': 'string',
                        'stageProgress': 'string'
                    },
                    'statusMessage': 'string',
                    'amiId': 'string',
                    'scheduledStartTime': datetime(2015, 1, 1),
                    'completedTime': datetime(2015, 1, 1),
                    'description': 'string',
                    'encrypted': True|False,
                    'kmsKeyId': 'string'
                },
            ]
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • replicationJobList (list) --

      Information about the replication jobs.

      • (dict) --

        Represents a replication job.

        • replicationJobId (string) --

          The identifier of the replication job.

        • serverId (string) --

          The identifier of the server.

        • serverType (string) --

          The type of server.

        • vmServer (dict) --

          Information about the VM server.

          • vmServerAddress (dict) --

            Information about the VM server location.

            • vmManagerId (string) --

              The identifier of the VM manager.

            • vmId (string) --

              The identifier of the VM.

          • vmName (string) --

            The name of the VM.

          • vmManagerName (string) --

            The name of the VM manager.

          • vmManagerType (string) --

            The type of VM management product.

          • vmPath (string) --

            The VM folder path in the vCenter Server virtual machine inventory tree.

        • seedReplicationTime (datetime) --

          The seed replication time.

        • frequency (integer) --

          The time between consecutive replication runs, in hours.

        • runOnce (boolean) --

        • nextReplicationRunStartTime (datetime) --

          The start time of the next replication run.

        • licenseType (string) --

          The license type to be used for the AMI created by a successful replication run.

        • roleName (string) --

          The name of the IAM role to be used by the Server Migration Service.

        • latestAmiId (string) --

          The ID of the latest Amazon Machine Image (AMI).

        • state (string) --

          The state of the replication job.

        • statusMessage (string) --

          The description of the current status of the replication job.

        • description (string) --

          The description of the replication job.

        • numberOfRecentAmisToKeep (integer) --

          Number of recent AMIs to keep in the customer's account for a replication job. By default the value is set to zero, meaning that all AMIs are kept.

        • encrypted (boolean) --

          Whether the replication job should produce encrypted AMIs or not. See also KmsKeyId below.

        • kmsKeyId (string) --

          KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

          • KMS key ID

          • KMS key alias

          • ARN referring to KMS key ID

          • ARN referring to KMS key alias

          If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

        • replicationRunList (list) --

          Information about the replication runs.

          • (dict) --

            Represents a replication run.

            • replicationRunId (string) --

              The identifier of the replication run.

            • state (string) --

              The state of the replication run.

            • type (string) --

              The type of replication run.

            • stageDetails (dict) --

              Details of the current stage of the replication run.

              • stage (string) --

                String describing the current stage of a replication run.

              • stageProgress (string) --

                String describing the progress of the current stage of a replication run.

            • statusMessage (string) --

              The description of the current status of the replication job.

            • amiId (string) --

              The identifier of the Amazon Machine Image (AMI) from the replication run.

            • scheduledStartTime (datetime) --

              The start time of the next replication run.

            • completedTime (datetime) --

              The completion time of the last replication run.

            • description (string) --

              The description of the replication run.

            • encrypted (boolean) --

              Whether the replication run should produce encrypted AMI or not. See also KmsKeyId below.

            • kmsKeyId (string) --

              KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

              • KMS key ID

              • KMS key alias

              • ARN referring to KMS key ID

              • ARN referring to KMS key alias

              If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

    • nextToken (string) --

      The token required to retrieve the next set of results. This value is null when there are no more results to return.

GetReplicationRuns (updated) Link ¶
Changes (response)
{'replicationJob': {'encrypted': 'boolean',
                    'kmsKeyId': 'string',
                    'numberOfRecentAmisToKeep': 'integer',
                    'replicationRunList': {'encrypted': 'boolean',
                                           'kmsKeyId': 'string',
                                           'stageDetails': {'stage': 'string',
                                                            'stageProgress': 'string'}},
                    'runOnce': 'boolean',
                    'state': ['PAUSED_ON_FAILURE', 'FAILING', 'COMPLETED'],
                    'vmServer': {'vmManagerType': ['SCVMM', 'HYPERV-MANAGER']}},
 'replicationRunList': {'encrypted': 'boolean',
                        'kmsKeyId': 'string',
                        'stageDetails': {'stage': 'string',
                                         'stageProgress': 'string'}}}

Describes the replication runs for the specified replication job.

See also: AWS API Documentation

Request Syntax

client.get_replication_runs(
    replicationJobId='string',
    nextToken='string',
    maxResults=123
)
type replicationJobId

string

param replicationJobId

[REQUIRED]

The identifier of the replication job.

type nextToken

string

param nextToken

The token for the next set of results.

type maxResults

integer

param maxResults

The maximum number of results to return in a single call. The default value is 50. To retrieve the remaining results, make another call with the returned NextToken value.

rtype

dict

returns

Response Syntax

{
    'replicationJob': {
        'replicationJobId': 'string',
        'serverId': 'string',
        'serverType': 'VIRTUAL_MACHINE',
        'vmServer': {
            'vmServerAddress': {
                'vmManagerId': 'string',
                'vmId': 'string'
            },
            'vmName': 'string',
            'vmManagerName': 'string',
            'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
            'vmPath': 'string'
        },
        'seedReplicationTime': datetime(2015, 1, 1),
        'frequency': 123,
        'runOnce': True|False,
        'nextReplicationRunStartTime': datetime(2015, 1, 1),
        'licenseType': 'AWS'|'BYOL',
        'roleName': 'string',
        'latestAmiId': 'string',
        'state': 'PENDING'|'ACTIVE'|'FAILED'|'DELETING'|'DELETED'|'COMPLETED'|'PAUSED_ON_FAILURE'|'FAILING',
        'statusMessage': 'string',
        'description': 'string',
        'numberOfRecentAmisToKeep': 123,
        'encrypted': True|False,
        'kmsKeyId': 'string',
        'replicationRunList': [
            {
                'replicationRunId': 'string',
                'state': 'PENDING'|'MISSED'|'ACTIVE'|'FAILED'|'COMPLETED'|'DELETING'|'DELETED',
                'type': 'ON_DEMAND'|'AUTOMATIC',
                'stageDetails': {
                    'stage': 'string',
                    'stageProgress': 'string'
                },
                'statusMessage': 'string',
                'amiId': 'string',
                'scheduledStartTime': datetime(2015, 1, 1),
                'completedTime': datetime(2015, 1, 1),
                'description': 'string',
                'encrypted': True|False,
                'kmsKeyId': 'string'
            },
        ]
    },
    'replicationRunList': [
        {
            'replicationRunId': 'string',
            'state': 'PENDING'|'MISSED'|'ACTIVE'|'FAILED'|'COMPLETED'|'DELETING'|'DELETED',
            'type': 'ON_DEMAND'|'AUTOMATIC',
            'stageDetails': {
                'stage': 'string',
                'stageProgress': 'string'
            },
            'statusMessage': 'string',
            'amiId': 'string',
            'scheduledStartTime': datetime(2015, 1, 1),
            'completedTime': datetime(2015, 1, 1),
            'description': 'string',
            'encrypted': True|False,
            'kmsKeyId': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • replicationJob (dict) --

      Information about the replication job.

      • replicationJobId (string) --

        The identifier of the replication job.

      • serverId (string) --

        The identifier of the server.

      • serverType (string) --

        The type of server.

      • vmServer (dict) --

        Information about the VM server.

        • vmServerAddress (dict) --

          Information about the VM server location.

          • vmManagerId (string) --

            The identifier of the VM manager.

          • vmId (string) --

            The identifier of the VM.

        • vmName (string) --

          The name of the VM.

        • vmManagerName (string) --

          The name of the VM manager.

        • vmManagerType (string) --

          The type of VM management product.

        • vmPath (string) --

          The VM folder path in the vCenter Server virtual machine inventory tree.

      • seedReplicationTime (datetime) --

        The seed replication time.

      • frequency (integer) --

        The time between consecutive replication runs, in hours.

      • runOnce (boolean) --

      • nextReplicationRunStartTime (datetime) --

        The start time of the next replication run.

      • licenseType (string) --

        The license type to be used for the AMI created by a successful replication run.

      • roleName (string) --

        The name of the IAM role to be used by the Server Migration Service.

      • latestAmiId (string) --

        The ID of the latest Amazon Machine Image (AMI).

      • state (string) --

        The state of the replication job.

      • statusMessage (string) --

        The description of the current status of the replication job.

      • description (string) --

        The description of the replication job.

      • numberOfRecentAmisToKeep (integer) --

        Number of recent AMIs to keep in the customer's account for a replication job. By default the value is set to zero, meaning that all AMIs are kept.

      • encrypted (boolean) --

        Whether the replication job should produce encrypted AMIs or not. See also KmsKeyId below.

      • kmsKeyId (string) --

        KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

        • KMS key ID

        • KMS key alias

        • ARN referring to KMS key ID

        • ARN referring to KMS key alias

        If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

      • replicationRunList (list) --

        Information about the replication runs.

        • (dict) --

          Represents a replication run.

          • replicationRunId (string) --

            The identifier of the replication run.

          • state (string) --

            The state of the replication run.

          • type (string) --

            The type of replication run.

          • stageDetails (dict) --

            Details of the current stage of the replication run.

            • stage (string) --

              String describing the current stage of a replication run.

            • stageProgress (string) --

              String describing the progress of the current stage of a replication run.

          • statusMessage (string) --

            The description of the current status of the replication job.

          • amiId (string) --

            The identifier of the Amazon Machine Image (AMI) from the replication run.

          • scheduledStartTime (datetime) --

            The start time of the next replication run.

          • completedTime (datetime) --

            The completion time of the last replication run.

          • description (string) --

            The description of the replication run.

          • encrypted (boolean) --

            Whether the replication run should produce encrypted AMI or not. See also KmsKeyId below.

          • kmsKeyId (string) --

            KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

            • KMS key ID

            • KMS key alias

            • ARN referring to KMS key ID

            • ARN referring to KMS key alias

            If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

    • replicationRunList (list) --

      Information about the replication runs.

      • (dict) --

        Represents a replication run.

        • replicationRunId (string) --

          The identifier of the replication run.

        • state (string) --

          The state of the replication run.

        • type (string) --

          The type of replication run.

        • stageDetails (dict) --

          Details of the current stage of the replication run.

          • stage (string) --

            String describing the current stage of a replication run.

          • stageProgress (string) --

            String describing the progress of the current stage of a replication run.

        • statusMessage (string) --

          The description of the current status of the replication job.

        • amiId (string) --

          The identifier of the Amazon Machine Image (AMI) from the replication run.

        • scheduledStartTime (datetime) --

          The start time of the next replication run.

        • completedTime (datetime) --

          The completion time of the last replication run.

        • description (string) --

          The description of the replication run.

        • encrypted (boolean) --

          Whether the replication run should produce encrypted AMI or not. See also KmsKeyId below.

        • kmsKeyId (string) --

          KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

          • KMS key ID

          • KMS key alias

          • ARN referring to KMS key ID

          • ARN referring to KMS key alias

          If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

    • nextToken (string) --

      The token required to retrieve the next set of results. This value is null when there are no more results to return.

GetServers (updated) Link ¶
Changes (request, response)
Request
{'vmServerAddressList': [{'vmId': 'string', 'vmManagerId': 'string'}]}
Response
{'serverList': {'vmServer': {'vmManagerType': ['SCVMM', 'HYPERV-MANAGER']}}}

Describes the servers in your server catalog.

Before you can describe your servers, you must import them using ImportServerCatalog .

See also: AWS API Documentation

Request Syntax

client.get_servers(
    nextToken='string',
    maxResults=123,
    vmServerAddressList=[
        {
            'vmManagerId': 'string',
            'vmId': 'string'
        },
    ]
)
type nextToken

string

param nextToken

The token for the next set of results.

type maxResults

integer

param maxResults

The maximum number of results to return in a single call. The default value is 50. To retrieve the remaining results, make another call with the returned NextToken value.

type vmServerAddressList

list

param vmServerAddressList

List of VmServerAddress objects

  • (dict) --

    Represents a VM server location.

    • vmManagerId (string) --

      The identifier of the VM manager.

    • vmId (string) --

      The identifier of the VM.

rtype

dict

returns

Response Syntax

{
    'lastModifiedOn': datetime(2015, 1, 1),
    'serverCatalogStatus': 'NOT_IMPORTED'|'IMPORTING'|'AVAILABLE'|'DELETED'|'EXPIRED',
    'serverList': [
        {
            'serverId': 'string',
            'serverType': 'VIRTUAL_MACHINE',
            'vmServer': {
                'vmServerAddress': {
                    'vmManagerId': 'string',
                    'vmId': 'string'
                },
                'vmName': 'string',
                'vmManagerName': 'string',
                'vmManagerType': 'VSPHERE'|'SCVMM'|'HYPERV-MANAGER',
                'vmPath': 'string'
            },
            'replicationJobId': 'string',
            'replicationJobTerminated': True|False
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • lastModifiedOn (datetime) --

      The time when the server was last modified.

    • serverCatalogStatus (string) --

      The status of the server catalog.

    • serverList (list) --

      Information about the servers.

      • (dict) --

        Represents a server.

        • serverId (string) --

          The identifier of the server.

        • serverType (string) --

          The type of server.

        • vmServer (dict) --

          Information about the VM server.

          • vmServerAddress (dict) --

            Information about the VM server location.

            • vmManagerId (string) --

              The identifier of the VM manager.

            • vmId (string) --

              The identifier of the VM.

          • vmName (string) --

            The name of the VM.

          • vmManagerName (string) --

            The name of the VM manager.

          • vmManagerType (string) --

            The type of VM management product.

          • vmPath (string) --

            The VM folder path in the vCenter Server virtual machine inventory tree.

        • replicationJobId (string) --

          The identifier of the replication job.

        • replicationJobTerminated (boolean) --

          Indicates whether the replication job is deleted or failed.

    • nextToken (string) --

      The token required to retrieve the next set of results. This value is null when there are no more results to return.

UpdateReplicationJob (updated) Link ¶
Changes (request)
{'encrypted': 'boolean',
 'kmsKeyId': 'string',
 'numberOfRecentAmisToKeep': 'integer'}

Updates the specified settings for the specified replication job.

See also: AWS API Documentation

Request Syntax

client.update_replication_job(
    replicationJobId='string',
    frequency=123,
    nextReplicationRunStartTime=datetime(2015, 1, 1),
    licenseType='AWS'|'BYOL',
    roleName='string',
    description='string',
    numberOfRecentAmisToKeep=123,
    encrypted=True|False,
    kmsKeyId='string'
)
type replicationJobId

string

param replicationJobId

[REQUIRED]

The identifier of the replication job.

type frequency

integer

param frequency

The time between consecutive replication runs, in hours.

type nextReplicationRunStartTime

datetime

param nextReplicationRunStartTime

The start time of the next replication run.

type licenseType

string

param licenseType

The license type to be used for the AMI created by a successful replication run.

type roleName

string

param roleName

The name of the IAM role to be used by AWS SMS.

type description

string

param description

The description of the replication job.

type numberOfRecentAmisToKeep

integer

param numberOfRecentAmisToKeep

The maximum number of SMS-created AMIs to retain. The oldest will be deleted once the maximum number is reached and a new AMI is created.

type encrypted

boolean

param encrypted

When true, the replication job produces encrypted AMIs . See also KmsKeyId below.

type kmsKeyId

string

param kmsKeyId

KMS key ID for replication jobs that produce encrypted AMIs. Can be any of the following:

  • KMS key ID

  • KMS key alias

  • ARN referring to KMS key ID

  • ARN referring to KMS key alias

If encrypted is true but a KMS key id is not specified, the customer's default KMS key for EBS is used.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --