This page describes how to create runbooks, which are CSV files that define the VMs to be migrated in a wave.
Generating runbook templates
Runbooks are created from the Migrate for Compute Engine Manager. The system queries VMware or AWS for VMs and generates a CSV for you to edit.
By editing the CSV, you define:
- The VMs in a wave.
- The order in which those VMs are migrated.
- The type and disk space of VMs that are launched on Google Cloud.
- Other characteristics that are defined in the Runbook reference.
To create a runbook from the VMs running your VMware, AWS, or Azure environment:
- Sign in to Migrate for Compute Engine Manager as
apiuser
, and then click the Migration Waves icon. - After signing in, click Generate Runbook.
When the menu appears, select your Source.
vSphere
Use on-premises VMs (vSphere) as the source:- For the Source Datacenter, select the VMware data center whose inventory you'd like to export.
- [Optional] Select the Target Cloud Extension that will host your migrated VMs. You can change this later by editing the runbook.
- [Optional] Under Target Network, selecting Populate with Cloud Extension Defaults applies the Cloud Extension's subnets and network tags to new VMs. You can modify this setting later by editing the runbook.
- Click Create. The Runbook CSV is downloaded to your computer.
AWS
Use AWS as the source:
- Select the required Source Cloud Details with the VMs that you want to migrate.
Enter one or more Filter by Source Tags by entering Name and Value pairs.
These pairs are used to find VMs by their AWS instance tags. For example, to find an instance tagged with the
WORKLOAD
key and theCRM
value in AWS, useWORKLOAD
for the Name andCRM
for the Value.The Value field supports the
*
wildcard operator. For example, enteringWORKLOAD
in the Name field and*
in the Value field selects all instances with a key ofWORKLOAD
.[Optional] Under Target Network, selecting Populate with Cloud Extension Defaults applies the Cloud Extension's subnets and network tags to new VMs.
You can modify this setting later by editing the runbook.
Click Create.
You are prompted to save the runbook CSV.
For more information, see Configure AWS as a source.
Azure
Use Azure as the source:
- Select the required Source Cloud Details with the VMs that you want to migrate.
Select the resource group that lists VMs to export to the runbook.
Note that the system will generate a runbook specifying VMs that are in the resource group and location defined in the Cloud Details you specify in this dialog.
[Optional] Under Target Network, selecting Populate with Cloud Extension Defaults applies the Cloud Extension's subnets and network tags to new VMs.
You can modify this setting later by editing the runbook.
Click Create.
You are prompted to save the runbook CSV.
For more information, see Configure Azure as a source.
Modifying runbooks
You can edit the runbook CSV in an editor or spreadsheet program of your choice. All of the fields in your runbook CSV are defined in the runbook reference.
Third-party or custom tools
If you need more refined filtering, sorting, or segmenting of VMs and apps, custom tooling to create or edit runbooks may help. You can create these with your preferred languages and tools; Migrate for Compute Engine accepts runbooks from any CSV that contains the required fields.
In addition, several third-party migration discovery and planning solutions offer built-in support to produce and run Migrate for Compute Engine runbooks using the Migrate for Compute Engine API.
Editing a runbook in a wave

To edit a wave:
- Select Action > Update Runbook.
- Choose a CSV file, and then click Save.
- Re-validate the new runbook.
When editing a wave, the history of previous operations on that wave is maintained. You can find and download prior runbooks by clicking the value in the Jobs column.
Moving a VM from one runbook to another
You can move VMs from one runbook to another. To move a VM between waves, do the following:
- In the CSV for the runbook you're moving the VM from, set the
RunGroup
field value for the VM to an integer less than0
, such as-1
, then upload that CSV. - In the CSV for the runbook you're moving the VM to, add a row for the
VM, with its
RunGroup
value set to a positive integer, then upload that wave CSV.
Deleting a wave
You can only delete a wave if a job was never started on it. Instead of deleting a wave, you can move VMs from one wave to another by editing the runbooks for both waves.