AWS Server Migration Service 2016-10-24
- Client: Aws\Sms\SmsClient
- Service ID: sms
- Version: 2016-10-24
This page describes the parameters and results for the operations of the AWS Server Migration Service (2016-10-24), and shows how to use the Aws\Sms\SmsClient object to call the described operations. This documentation is specific to the 2016-10-24 API version of the service.
Operation Summary
Each of the following operations can be created from a client using
$client->getCommand('CommandName')
, where "CommandName" is the
name of one of the following operations. Note: a command is a value that
encapsulates an operation and the parameters used to create an HTTP request.
You can also create and send a command immediately using the magic methods
available on a client object: $client->commandName(/* parameters */)
.
You can send the command asynchronously (returning a promise) by appending the
word "Async" to the operation name: $client->commandNameAsync(/* parameters */)
.
- CreateReplicationJob ( array $params = [] )
The CreateReplicationJob API is used to create a ReplicationJob to replicate a server on AWS.
- DeleteReplicationJob ( array $params = [] )
The DeleteReplicationJob API is used to delete a ReplicationJob, resulting in no further ReplicationRuns.
- DeleteServerCatalog ( array $params = [] )
The DeleteServerCatalog API clears all servers from your server catalog.
- DisassociateConnector ( array $params = [] )
The DisassociateConnector API will disassociate a connector from the Server Migration Service, rendering it unavailable to support replication jobs.
- GetConnectors ( array $params = [] )
The GetConnectors API returns a list of connectors that are registered with the Server Migration Service.
- GetReplicationJobs ( array $params = [] )
The GetReplicationJobs API will return all of your ReplicationJobs and their details.
- GetReplicationRuns ( array $params = [] )
The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob.
- GetServers ( array $params = [] )
The GetServers API returns a list of all servers in your server catalog.
- ImportServerCatalog ( array $params = [] )
The ImportServerCatalog API is used to gather the complete list of on-premises servers on your premises.
- StartOnDemandReplicationRun ( array $params = [] )
The StartOnDemandReplicationRun API is used to start a ReplicationRun on demand (in addition to those that are scheduled based on your frequency).
- UpdateReplicationJob ( array $params = [] )
The UpdateReplicationJob API is used to change the settings of your existing ReplicationJob created using CreateReplicationJob.
Paginators
Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:
Operations
CreateReplicationJob
$result = $client->createReplicationJob
([/* ... */]); $promise = $client->createReplicationJobAsync
([/* ... */]);
Parameter Syntax
$result = $client->createReplicationJob([ 'description' => '<string>', 'frequency' => <integer>, // REQUIRED 'licenseType' => 'AWS|BYOL', 'roleName' => '<string>', 'seedReplicationTime' => <integer || string || DateTime>, // REQUIRED 'serverId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- description
-
- Type: string
The description for a Replication Job/Run. - frequency
-
- Type: int
Interval between Replication Runs. This value is specified in hours, and represents the time between consecutive Replication Runs. - licenseType
-
- Type: string
The license type to be used for the Amazon Machine Image (AMI) created after a successful ReplicationRun. - roleName
-
- Type: string
Name of service role in customer's account to be used by SMS service. - seedReplicationTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - serverId
-
- Type: string
Unique Identifier for a server
Result Syntax
[ 'replicationJobId' => '<string>', ]
Result Details
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
ServerCannotBeReplicatedException: The provided server cannot be replicated.
-
ReplicationJobAlreadyExistsException: An active Replication Job already exists for the specified server.
-
NoConnectorsAvailableException: No connectors are available to handle this request. Please associate connector(s) and verify any existing connectors are healthy and can respond to requests.
-
InternalError: An internal error has occured.
DeleteReplicationJob
$result = $client->deleteReplicationJob
([/* ... */]); $promise = $client->deleteReplicationJobAsync
([/* ... */]);
Parameter Syntax
$result = $client->deleteReplicationJob([ 'replicationJobId' => '<string>', // REQUIRED ]);
Parameter Details
Result Syntax
[]
Result Details
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
ReplicationJobNotFoundException: The specified Replication Job cannot be found.
DeleteServerCatalog
$result = $client->deleteServerCatalog
([/* ... */]); $promise = $client->deleteServerCatalogAsync
([/* ... */]);
Parameter Syntax
$result = $client->deleteServerCatalog([ ]);
Parameter Details
Members
Result Syntax
[]
Result Details
Errors
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
DisassociateConnector
$result = $client->disassociateConnector
([/* ... */]); $promise = $client->disassociateConnectorAsync
([/* ... */]);
Parameter Syntax
$result = $client->disassociateConnector([ 'connectorId' => '<string>', // REQUIRED ]);
Parameter Details
Result Syntax
[]
Result Details
Errors
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
GetConnectors
$result = $client->getConnectors
([/* ... */]); $promise = $client->getConnectorsAsync
([/* ... */]);
Parameter Syntax
$result = $client->getConnectors([ 'maxResults' => <integer>, 'nextToken' => '<string>', ]);
Parameter Details
Members
Result Syntax
[ 'connectorList' => [ [ 'associatedOn' => <DateTime>, 'capabilityList' => ['<string>', ...], 'connectorId' => '<string>', 'ipAddress' => '<string>', 'macAddress' => '<string>', 'status' => 'HEALTHY|UNHEALTHY', 'version' => '<string>', 'vmManagerId' => '<string>', 'vmManagerName' => '<string>', 'vmManagerType' => 'VSPHERE', ], // ... ], 'nextToken' => '<string>', ]
Result Details
Members
- connectorList
-
- Type: Array of Connector structures
List of connectors - nextToken
-
- Type: string
Pagination token to pass as input to API call
Errors
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
GetReplicationJobs
$result = $client->getReplicationJobs
([/* ... */]); $promise = $client->getReplicationJobsAsync
([/* ... */]);
Parameter Syntax
$result = $client->getReplicationJobs([ 'maxResults' => <integer>, 'nextToken' => '<string>', 'replicationJobId' => '<string>', ]);
Parameter Details
Members
Result Syntax
[ 'nextToken' => '<string>', 'replicationJobList' => [ [ 'description' => '<string>', 'frequency' => <integer>, 'latestAmiId' => '<string>', 'licenseType' => 'AWS|BYOL', 'nextReplicationRunStartTime' => <DateTime>, 'replicationJobId' => '<string>', 'replicationRunList' => [ [ 'amiId' => '<string>', 'completedTime' => <DateTime>, 'description' => '<string>', 'replicationRunId' => '<string>', 'scheduledStartTime' => <DateTime>, 'state' => 'PENDING|MISSED|ACTIVE|FAILED|COMPLETED|DELETING|DELETED', 'statusMessage' => '<string>', 'type' => 'ON_DEMAND|AUTOMATIC', ], // ... ], 'roleName' => '<string>', 'seedReplicationTime' => <DateTime>, 'serverId' => '<string>', 'serverType' => 'VIRTUAL_MACHINE', 'state' => 'PENDING|ACTIVE|FAILED|DELETING|DELETED', 'statusMessage' => '<string>', 'vmServer' => [ 'vmManagerName' => '<string>', 'vmManagerType' => 'VSPHERE', 'vmName' => '<string>', 'vmPath' => '<string>', 'vmServerAddress' => [ 'vmId' => '<string>', 'vmManagerId' => '<string>', ], ], ], // ... ], ]
Result Details
Members
- nextToken
-
- Type: string
Pagination token to pass as input to API call - replicationJobList
-
- Type: Array of ReplicationJob structures
List of Replication Jobs
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
GetReplicationRuns
$result = $client->getReplicationRuns
([/* ... */]); $promise = $client->getReplicationRunsAsync
([/* ... */]);
Parameter Syntax
$result = $client->getReplicationRuns([ 'maxResults' => <integer>, 'nextToken' => '<string>', 'replicationJobId' => '<string>', // REQUIRED ]);
Parameter Details
Members
Result Syntax
[ 'nextToken' => '<string>', 'replicationJob' => [ 'description' => '<string>', 'frequency' => <integer>, 'latestAmiId' => '<string>', 'licenseType' => 'AWS|BYOL', 'nextReplicationRunStartTime' => <DateTime>, 'replicationJobId' => '<string>', 'replicationRunList' => [ [ 'amiId' => '<string>', 'completedTime' => <DateTime>, 'description' => '<string>', 'replicationRunId' => '<string>', 'scheduledStartTime' => <DateTime>, 'state' => 'PENDING|MISSED|ACTIVE|FAILED|COMPLETED|DELETING|DELETED', 'statusMessage' => '<string>', 'type' => 'ON_DEMAND|AUTOMATIC', ], // ... ], 'roleName' => '<string>', 'seedReplicationTime' => <DateTime>, 'serverId' => '<string>', 'serverType' => 'VIRTUAL_MACHINE', 'state' => 'PENDING|ACTIVE|FAILED|DELETING|DELETED', 'statusMessage' => '<string>', 'vmServer' => [ 'vmManagerName' => '<string>', 'vmManagerType' => 'VSPHERE', 'vmName' => '<string>', 'vmPath' => '<string>', 'vmServerAddress' => [ 'vmId' => '<string>', 'vmManagerId' => '<string>', ], ], ], 'replicationRunList' => [ [ 'amiId' => '<string>', 'completedTime' => <DateTime>, 'description' => '<string>', 'replicationRunId' => '<string>', 'scheduledStartTime' => <DateTime>, 'state' => 'PENDING|MISSED|ACTIVE|FAILED|COMPLETED|DELETING|DELETED', 'statusMessage' => '<string>', 'type' => 'ON_DEMAND|AUTOMATIC', ], // ... ], ]
Result Details
Members
- nextToken
-
- Type: string
Pagination token to pass as input to API call - replicationJob
-
- Type: ReplicationJob structure
Object representing a Replication Job - replicationRunList
-
- Type: Array of ReplicationRun structures
List of Replication Runs
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
GetServers
$result = $client->getServers
([/* ... */]); $promise = $client->getServersAsync
([/* ... */]);
Parameter Syntax
$result = $client->getServers([ 'maxResults' => <integer>, 'nextToken' => '<string>', ]);
Parameter Details
Members
Result Syntax
[ 'lastModifiedOn' => <DateTime>, 'nextToken' => '<string>', 'serverCatalogStatus' => 'NOT_IMPORTED|IMPORTING|AVAILABLE|DELETED|EXPIRED', 'serverList' => [ [ 'replicationJobId' => '<string>', 'replicationJobTerminated' => true || false, 'serverId' => '<string>', 'serverType' => 'VIRTUAL_MACHINE', 'vmServer' => [ 'vmManagerName' => '<string>', 'vmManagerType' => 'VSPHERE', 'vmName' => '<string>', 'vmPath' => '<string>', 'vmServerAddress' => [ 'vmId' => '<string>', 'vmManagerId' => '<string>', ], ], ], // ... ], ]
Result Details
Members
- lastModifiedOn
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - nextToken
-
- Type: string
Pagination token to pass as input to API call - serverCatalogStatus
-
- Type: string
Status of Server catalog - serverList
-
- Type: Array of Server structures
List of servers from catalog
Errors
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
ImportServerCatalog
$result = $client->importServerCatalog
([/* ... */]); $promise = $client->importServerCatalogAsync
([/* ... */]);
Parameter Syntax
$result = $client->importServerCatalog([ ]);
Parameter Details
Members
Result Syntax
[]
Result Details
Errors
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
NoConnectorsAvailableException: No connectors are available to handle this request. Please associate connector(s) and verify any existing connectors are healthy and can respond to requests.
StartOnDemandReplicationRun
$result = $client->startOnDemandReplicationRun
([/* ... */]); $promise = $client->startOnDemandReplicationRunAsync
([/* ... */]);
Parameter Syntax
$result = $client->startOnDemandReplicationRun([ 'description' => '<string>', 'replicationJobId' => '<string>', // REQUIRED ]);
Parameter Details
Members
Result Syntax
[ 'replicationRunId' => '<string>', ]
Result Details
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
ReplicationRunLimitExceededException: This user has exceeded the maximum allowed Replication Run limit.
UpdateReplicationJob
$result = $client->updateReplicationJob
([/* ... */]); $promise = $client->updateReplicationJobAsync
([/* ... */]);
Parameter Syntax
$result = $client->updateReplicationJob([ 'description' => '<string>', 'frequency' => <integer>, 'licenseType' => 'AWS|BYOL', 'nextReplicationRunStartTime' => <integer || string || DateTime>, 'replicationJobId' => '<string>', // REQUIRED 'roleName' => '<string>', ]);
Parameter Details
Members
- description
-
- Type: string
The description for a Replication Job/Run. - frequency
-
- Type: int
Interval between Replication Runs. This value is specified in hours, and represents the time between consecutive Replication Runs. - licenseType
-
- Type: string
The license type to be used for the Amazon Machine Image (AMI) created after a successful ReplicationRun. - nextReplicationRunStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - replicationJobId
-
- Type: string
The unique identifier for a Replication Job. - roleName
-
- Type: string
Name of service role in customer's account to be used by SMS service.
Result Syntax
[]
Result Details
Errors
-
InvalidParameterException: A parameter specified in the request is not valid, is unsupported, or cannot be used.
-
MissingRequiredParameterException: The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
-
OperationNotPermittedException: The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
-
UnauthorizedOperationException: This user does not have permissions to perform this operation.
-
ServerCannotBeReplicatedException: The provided server cannot be replicated.
-
ReplicationJobNotFoundException: The specified Replication Job cannot be found.
-
InternalError: An internal error has occured.
Shapes
Connector
Description
Members
- associatedOn
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - capabilityList
-
- Type: Array of strings
List of Connector Capabilities - connectorId
-
- Type: string
Unique Identifier for Connector - ipAddress
-
- Type: string
Internet Protocol (IP) Address - macAddress
-
- Type: string
Hardware (MAC) address - status
-
- Type: string
Status of on-premise Connector - version
-
- Type: string
Connector version string - vmManagerId
-
- Type: string
Unique Identifier for VM Manager - vmManagerName
-
- Type: string
VM Manager Name - vmManagerType
-
- Type: string
VM Management Product
InternalError
InvalidParameterException
Description
Members
MissingRequiredParameterException
Description
Members
NoConnectorsAvailableException
Description
Members
OperationNotPermittedException
Description
Members
ReplicationJob
Description
Members
- description
-
- Type: string
The description for a Replication Job/Run. - frequency
-
- Type: int
Interval between Replication Runs. This value is specified in hours, and represents the time between consecutive Replication Runs. - latestAmiId
-
- Type: string
The AMI id for the image resulting from a Replication Run. - licenseType
-
- Type: string
The license type to be used for the Amazon Machine Image (AMI) created after a successful ReplicationRun. - nextReplicationRunStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - replicationJobId
-
- Type: string
The unique identifier for a Replication Job. - replicationRunList
-
- Type: Array of ReplicationRun structures
List of Replication Runs - roleName
-
- Type: string
Name of service role in customer's account to be used by SMS service. - seedReplicationTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - serverId
-
- Type: string
Unique Identifier for a server - serverType
-
- Type: string
Type of server. - state
-
- Type: string
Current state of Replication Job - statusMessage
-
- Type: string
String describing current status of Replication Job - vmServer
-
- Type: VmServer structure
Object representing a VM server
ReplicationJobAlreadyExistsException
Description
Members
ReplicationJobNotFoundException
Description
Members
ReplicationRun
Description
Members
- amiId
-
- Type: string
The AMI id for the image resulting from a Replication Run. - completedTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - description
-
- Type: string
The description for a Replication Job/Run. - replicationRunId
-
- Type: string
The unique identifier for a Replication Run. - scheduledStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Timestamp of an operation - state
-
- Type: string
Current state of Replication Run - statusMessage
-
- Type: string
String describing current status of Replication Run - type
-
- Type: string
Type of Replication Run
ReplicationRunLimitExceededException
Description
Members
Server
Description
Members
- replicationJobId
-
- Type: string
The unique identifier for a Replication Job. - replicationJobTerminated
-
- Type: boolean
An indicator of the Replication Job being deleted or failed. - serverId
-
- Type: string
Unique Identifier for a server - serverType
-
- Type: string
Type of server. - vmServer
-
- Type: VmServer structure
Object representing a VM server
ServerCannotBeReplicatedException
Description
Members
UnauthorizedOperationException
Description
Members
VmServer
Description
Members
- vmManagerName
-
- Type: string
VM Manager Name - vmManagerType
-
- Type: string
VM Management Product - vmName
-
- Type: string
Name of Virtual Machine - vmPath
-
- Type: string
Path to VM - vmServerAddress
-
- Type: VmServerAddress structure
Object representing a server's location