

# Prepare and migrate waves


At this stage, you will see migration waves in the **Job Plan** pane. For each wave, perform the following steps. In some of these steps you will have the option of importing an updated inventory file. AWS Transform allows one import to a given target AWS account and target AWS Region at a time. This means that if you work on more than one wave simultaneously, or if there is more than one migration job running with the same target account, you must wait for an import to finish before you can perform another import in a different wave or job.

## Prepare waves


Each wave includes a **Set up migration wave** task. On its **Collaboration** tab you can configure the wave's settings.

**Set up migration wave**

1. In the **Job Plan** pane, expand the step **Set up migration waves**, and then choose **Set EC2 recommendation preferences**. Follow the instructions in the right pane, and then choose **Continue**. Learn more about Amazon EC2 recommendations in [Generating Amazon EC2 recommendations in AWS Migration Hub](https://docs.aws.amazon.com/migrationhub/latest/ug/generating-ec2-recommendations.html).

1. In the **Staging area subnet** section, you can choose a staging area subnet from the dropdown menu of the available subnets. 

   Only subnets that are tagged in VPCs *that are also tagged* with these tag key-value pairs appear in the list. Learn more in [VPC and subnet tags](#transform-tag-vpc-subnets).

1. For each wave, choose your [IP assigment approach](https://docs.aws.amazon.com/AWSQT/flexible_ip/transform-vmware-migrate-network.html#vmware-migration-ip):
   + **Use source IP or the converted IP from the new CIDR**
   + **Use new IP using DHCP**

1. In the **Job Plan** pane, choose **Confirm inventory for *wave-name***. Download the inventory file and review the list of servers and Amazon EC2 configurations. Modify the file if necessary, but do not remove columns or change the titles of the existing columns. You can control the operating system licensing options (BYOL / LI) and tenancy by specifying the configuration in columns with these headers: mgn:launch:placement:operating-system-licensing and mgn:launch:placement:tenancy. Learn more in [Import parameters](https://docs.aws.amazon.com/mgn/latest/ug/import-main.html#import-parameters) in the *Application Migration Service user guide*. After you choose whether to continue with the file you downloaded or to upload a version of the file that you updated, choose **Continue**.

**Note**  
AWS Transform provides Amazon EC2 recommendations based on the utilization specification of your source VMs. You can modify the suggested Amazon EC2 instance types to include recommendations from the [Migration Evaluator](https://aws.amazon.com/migration-evaluator/), [AWS Optimization and Licensing Assessment (OLA)](https://docs.aws.amazon.com/prescriptive-guidance/latest/optimize-costs-microsoft-workloads/aws-ola.html), or a [Migration assessment](transform-app-assessments.md) job.

### VPC and subnet tags


Your VPCs and their subnets are automatically tagged with these tags so that their subnets appear in AWS Transform's list of available subnets:
+ **Key:** `CreatedFor` **Value:** `AWSTransform`
+ **Key:** `ATWorkspace` **Value:** `workspace ID`

## Migrate waves


When you migrate a wave, AWS Transform keeps you informed of the progress by providing a table in the **Collaboration** pane. You can also ask AWS Transform about the status of the migration in natural language, for example:
+ What is the status of my servers?
+ What's the status of my wave?
+ What's the status of the step that I'm currently in?

**Deploy replication agents**

1. In the **Job Plan** pane, expand **Deploy replication agents**, and then choose **Start replication agent deployment**. You have two options:
   + ****Use AWS Transform to automate deployment**: **To automate the deployment of the agents on the source servers in this wave, AWS Transform uses an MGN connector already deployed in your account. For information about how to deploy an MGN connector in your account, see [Set up the MGN Connector](https://docs.aws.amazon.com/mgn/latest/ug/mgn-connector-setup-instructions.html) in the *Application Migration Service User Guide*.

     To use this option, perform the following steps:

     1. Open the AWS Systems Manager console at [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

     1. In the left navigation pane, under **Node Tools**, choose **Fleet Manager**.

     1. Choose the name of the managed instance of the MGN connector that you want AWS Transform to use for this wave.

     1. Tag the managed instance with the following key-value pairs.
        + Key: `CreatedFor` Value: `AWSTransform`
        + Key: `ATWorkspace ` Value: *workspace ID*

        Find your workspace ID in the AWS Transform web app URL, https:// ... /workspace/*workspace-id*/job/job-id

     1. In AWS Transform, choose **Use AWS Transform to automate deployment**.

     1. Specify the MGN connector that you tagged and the AWS Secrets Manager secret that you want AWS Transform to use for this wave. You must create a single set of credentials for the MGN connector to use for deploying replication agents on all servers in a particular wave. For information about setting up the secret, see [Register server credentials](https://docs.aws.amazon.com/mgn/latest/ug/connector-register-server-credentials.html).

     1. If AWS Transform encounters errors during the deployment of the agent, you will see those errors in the **Job Plan** pane. Choose each error in the **Job Plan** pane to view its details in the **Collaboration** tab.

     1. After you resolve all errors, you can track the replication status for the wave by choosing **Review replication status** in the **Job Plan** pane.
   + ****Deploy replication agents on your own**: **You can deploy the replication agents on the source servers manually. Alternatively, you can use the MGN connector or another automation framework to deploy them on your own. For information about how to set up the MGN connector, see [Set up the MGN Connector](https://docs.aws.amazon.com/mgn/latest/ug/mgn-connector-setup-instructions.html) in the *Application Migration Service User Guide*.

     To deploy the replication agents manually, or use an automation framework other than the MGN Connector to deploy them, perform the following steps.

     1. Go to the AWS Application Migration Service console, and export a list of your servers. For instructions, see [Exporting your data inventory](https://docs.aws.amazon.com/mgn/latest/ug/export-main.html).

     1. Filter the list by wave to obtain a list of the servers in the current wave.

     1. Follow the instructions under [Installing the AWS Replication Agent](https://docs.aws.amazon.com/mgn/latest/ug/agent-installation.html). Specify the `user-provided-id` parameter, and for every server set its value to the server's `mgn:server:user-provided-id` as it appears in the .csv file that you exported from AWS Application Migration Service. AWS Transform connects the replication agent with the imported server using this parameter. If it's not provided, MGN will create a separate instance of source server for each agent that is installed.

   **To see the replication agent installation status**, check the AWS Systems Manager run command history at agent installation time. For information, see [Understanding command statuses](https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html) in the *AWS Systems Manager User Guide*.

   **To see the replication status in real-time**, go to the AWS Application Migration Service console. Status updates in the AWS Transform web app are delayed.

   **For quotas related to replication**, see [AWS Application Migration Service service quota limits](https://docs.aws.amazon.com/mgn/latest/ug/MGN-service-limits.html) in the *Application Migration Service User Guide*.
**Note**  
AWS Transform does not support MGN agentless replication. For information about agentless replication, see [Agentless replication overview](https://docs.aws.amazon.com/mgn/latest/ug/installing-vcenter-overview-mgn.html) in the *Application Migration Service User Guide*.

1. When replication is complete, expand **Review the replication status** in the **Job Plan** pane. In the right pane you can see the status of the replication and resolve replication alerts.

**Note**  
To proceed, you must install the MGN replication agent on all servers in a wave. Disconnect and archive servers on which you don't install the replication agent. You can use the [disconnect-from-service](https://docs.aws.amazon.com/cli/latest/reference/mgn/disconnect-from-service.html) command to disconnect servers. To archive disconnected servers, use the [mark-as-archived](https://docs.aws.amazon.com/cli/latest/reference/mgn/mark-as-archived.html) command. The archiving command only works for source servers whose lifecycle state is `DISCONNECTED`.

**Launch test instances**

1. In the **Job Plan** pane, under **Launch test instances**, choose **Confirm instance launch**.

1. Download the inventory file, review it, and choose whether to continue with the current file or upload a modified one, then choose **Launch test instances**. You can change the launch settings within the inventory file, but don't modify the list of source servers and applications.

**Mark applications as ready for cutover**

1. In the **Job Plan** pane, expand **Mark applications as ready for cutover**, and choose **Mark applications as ready for cutover**.

1. In the **Collaboration** tab, review the replication status of each application, and resolve replication alerts.

1. Choose **Mark for cutover**.

**Launch cutover instances**

1. In the **Job Plan** pane, under **Launch cutover instances**, choose **Confirm instance launch**.

1. Download and open the inventory file, review the inventory, and choose whether to continue with the current inventory or upload a modified one. At this step, don't modify the list of source servers and applications listed in the inventory file. You can only change the launch settings within the inventory file.

1. Choose whether to continue with the current inventory or upload a modified one, and then choose **Continue**.

1. Choose **Launch cutover instances**.

**Finalize cutover**

1. (Optional) Review the launched Amazon EC2 cutover instances, validate connectivity and run acceptance tests. If you want to fix anything because there's a connectivity issue or a problem in the testing, you need to revert the cutover. This is the time to revert it.

1. In the **Job Plan** pane, expand **Finalize cutover**, and then choose **Start finalizing cutover**. Finalizing the cutover removes the replication agents. After you finalize the cutover you cannot make any changes, you cannot fix any connectivity issues, or anything else, and you cannot revert the cutover.

1. Choose **Finalize cutover**.

### Manage server status
Manage servers

During wave migration you can ask AWS Transform to update or change the status of a server. For example, if 9 out of 10 of the servers in your wave passed the test phase but one failed, you can allow AWS Transform to continue to move the 9 into the next phase, and ask to put re-run the test on the tenth.

Lifecycle states include:
+ **Not ready** – The server is undergoing the initial sync process and is not yet ready for testing. Data replication can only commence once all of the initial sync steps have been completed.
+ **Ready for testing** – The server has been successfully added and data replication has started. test or cutover instances can now be launched for this server.
+ **Test in progress** – A Test instance is currently being launched for this server.
+ **Ready for cutover** – This server has been tested and is now ready for a cutover instance to be launched.
+ **Cutover in progress** – A cutover instance is currently being launched for this server.
+ **Cutover complete** – This server has been cutover. All of the data on this server has been migrated to the AWS cutover instance.
+ **Disconnected** – This server has been disconnected.