19.7 Registering Workloads and Discovering Details with Migrate Agent

Migrate Agent is a command line utility that enables you to register source workloads with PlateSpin Migrate servers and send details about the workloads to the server via HTTPS (TCP/443). Registration allows you to add workloads that cannot be discovered, such as:

  • When you deploy Migrate server in the cloud without a site-to-site VPN

  • When corporate network or policy restrictions prohibit opening ports for automated discovery

Migrate Agent enables you to migrate a Windows workload without opening any inbound ports, such as SMB or NetBIOS. Only HTTPS (TCP/443) and a replication port (TCP/3725 is the default) are needed outbound for the source Windows workloads. For source Linux workloads, you also need to open the SSH port (TCP/22). See Section 2.6.2, Requirements for Workload Registration.

When you use the Migrate Agent on the source workload, the source workload contacts the target workload for data transfers. The direction is controlled at the server level. You must reconfigure the replication port direction on the Migrate Server (SourceListensForConnection=False). See Configuring the Contact Direction for the Replication Port.

You must install Migrate Agent on each source workload. When you use the register option, Migrate Agent performs discovery locally on the workload and sends its details to the Migrate Server through HTTPS (TCP/443). After you register the workload, use the Migrate Web Interface to configure the workload migration to the target cloud where the Migrate Server instance is deployed.

Registered workloads differ from discovered workloads in the following ways:

  • Registered source workloads do not store the source credentials on the Migrate Server.

  • You must use Migrate Agent to install, upgrade, and remove the Windows PlateSpin drivers from registered source workloads.

  • After you delete the contract for a registered source workload, use the cleanup comman to remove the OFX controller from the workload. See clu | cleanup for Windows workload and cleanup for Linux workload

For information about the Migrate Agent commands, see Migrate Agent Utility.

19.7.1 Windows Workload Registration and Discovery with Migrate Agent

Before you begin, ensure that your source Windows workload and network settings meet the Requirements for Migrate Agent Utility. For Windows workloads, Migrate Agent Utility requires Administrator privileges to execute commands.

  1. Log in as Administrator to the source Windows workload.

  2. Ensure that TCP port 443 is open on the workload.

  3. Download Migrate Agent Utility for Windows. Save the MigrateAgent.cli.exe file to a convenient location on the workload.

    See Migrate Agent Utility for Windows.

  4. In an Administrator Prompt, navigate to the location where you saved the file, then view the command Help by entering:

    MigrateAgent.cli.exe help
  5. Register the workload with the appropriate Migrate Server cloud instance. Enter

    MigrateAgent.cli.exe /register /psserver=ps_dns_or_ipaddr <username> /password=<password>

    Provide the credentials for an administrator-level user of the PlateSpin Migrate Server who has the permissions needed to add a workload. You can use the /password= option with the password, use the -pwdfile= option with a path to a file that contains the password, or do not specify the password in the command sequence. If you exclude the password from the command line, the script will prompt for it. The password is obscured as you type it and it does not appear in the process list.

    For example:

    Migrate.Agent.cli.exe /register /psserver=10.10.10.101 /username=jsmith /password=jspwd

    NOTE:If you modify the public IP address of the Migrate Server, you must run the following command on each of the source Windows workloads that are configured for the server to modify the IP address.

    MigrateAgent.cli.exe /config /setting=psserver:<new-ps-dns-or-ipaddr>

    For example:

    MigrateAgent.cli.exe /config /setting=psserver:10.10.20.202
  6. Verify that the PlateSpin Controller is running. Enter

    MigrateAgent.cli.exe /status

    If the controller is running, the status reports results similar to the following:

    The PlateSpin Controller daemon is running and registered to server 10.165.x.x
    The PlateSpin blockwatch driver is not installed.

19.7.2 Linux Workload Registration and Discovery with Migrate Agent

Before you begin, ensure that your source workload and network settings meet the Requirements for Migrate Agent Utility. Key Linux considerations are:

  • The Migrate Agent Utility for Linux requires the source machine to have GNU C Library (glibc) 2.11.3 or higher installed.

  • Migrate Agent requires root-level access to execute commands. A non-root user must be an authorized sudo user.

    For a non-root user, type sudo in the Migrate Agent commands to execute them with root privileges. For example:

    sudo ./MigrateAgent -h

    If you are prompted for a password, provide the password of the non-root system user name you logged in as.

    NOTE:In AWS, you must run sudo -i and execute commands in a root shell. Use the registration procedure in Section 19.7.3, Linux Workload Registration and Discovery with Migrate Agent for Workloads in AWS.

To register source Linux workloads:

  1. Log in to the source Linux workload as the root user or as a non-root user with root level access.

  2. Ensure that TCP port 443 is open on the workload.

  3. Download the Migrate Agent Utility for Linux. Extract the downloaded file to the /MigrateAgent directory,

    See Migrate Agent Utility for Linux.

  4. In a terminal, navigate to the /MigrateAgent directory, then view the command Help by entering:

    ./MigrateAgent -h
  5. Register the workload with the appropriate Migrate Server cloud instance. Enter

    ./MigrateAgent register [-h] <ps_dns_or_ipaddr> <ps_username> [[-p <user_password>] | [-pf <passwordfile_path>]]

    Specify the IP address or DNS name of the PlateSpin Migrate Server instance in the cloud. Provide the credentials for an administrator-level user of the PlateSpin Migrate Server who has the permissions needed to add a workload. You can use the -p option with the password, use the -pf option with a path to a file that contains the password, or do not specify the password in the command sequence. If you exclude the password from the command line, the script will prompt for it. The password is obscured as you type it and it does not appear in the process list.

    For example:

    ./MigrateAgent register 10.10.10.101 jsmith -p jspwd 

    NOTE:If you modify the public IP address of the Migrate Server, you must run the following command on each of the source Linux workloads that are configured for the server to modify the IP address.

    ./MigrateAgent configure <ps_dns_or_ipaddr> <new-ps-dns-or-ipaddr>

    For example:

    ./MigrateAgent configure 10.10.10.101 10.10.20.202
  6. Verify that PlateSpin Controller is running. Enter

    ./MigrateAgent status

    If the controller is running, the status reports results similar to the following:

    The PlateSpin Controller daemon is running and registered to server 10.165.x.x
    The PlateSpin blockwatch driver is not installed.

19.7.3 Linux Workload Registration and Discovery with Migrate Agent for Workloads in AWS

PlateSpin Migrate Web Interface supports migration of Amazon Web Services EC2 VM instances to Microsoft Azure, without requiring a VPN. The source workload operating system and architecture of the workload must be supported for VMs in Azure. For migration requirements for this scenario, see Section 12.0, Prerequisites for Cloud-to-Cloud Migrations.

Before you begin, ensure that your source Linux workload and network settings meet the Requirements for Migrate Agent Utility. Key Linux considerations for Linux workloads in AWS are:

  • The Migrate Agent Utility for Linux requires the source machine to have GNU C Library (glibc) 2.11.3 or higher installed.

  • Migrate Agent requires root-level access to execute commands. A non-root user must be an authorized sudo user.

    NOTE:For source Linux workloads in Amazon Web Services, AMI templates automatically create a default non-root system user account that is enabled for sudo. The user name for this account varies by AMI provider. For Amazon Linux images, the non-root user name is ec2-user for most Linux distributions. It is centos for CentOS AMIs. For more information, refer to your AMI provider documentation.

    In AWS, a non-root user must run the sudo -i command to access the root shell and then run the Migrate Agent commands. Typing sudo in each Migrate Agent Utility command might result in a failure on some source workloads.

  • AWS login for SSH requires the local path of the private key file that you created for the AWS EC2 Key Pair.

To register a source workload in AWS with your Migrate server:

  1. Log in to the source Linux workload in AWS by using a system user name with root-level access and the local path of the private key file.

  2. Ensure that TCP port 443 is open on the workload.

  3. Download the Migrate Agent Utility for Linux. Extract the downloaded file to the /MigrateAgent directory,

    See Migrate Agent Utility for Linux.

  4. In a terminal, navigate to the /MigrateAgent directory.

  5. (Non-root user) At the server console, run sudo -i. Enter

    sudo -i

    This command puts you in a root shell where commands are executed as the root user. The terminal prompt now shows root instead of your non-root user name, such as ec2-user.

    If you are prompted by Linux for a password, provide the password of the user name you logged in as.

  6. View the Migrate Agent command Help by entering:

    ./MigrateAgent -h
  7. Register the workload with the appropriate Migrate Server cloud instance. Enter

    ./MigrateAgent register [-h] <ps_dns_or_ipaddr> <ps_username> [[-p <user_password>] | [-pf <passwordfile_path>]]

    Specify the IP address or DNS name of the PlateSpin Migrate Server instance in the cloud. Provide the credentials for an administrator-level user of the PlateSpin Migrate Server who has the permissions needed to add a workload. You can use the -p option with the password, use the -pf option with a path to a file that contains the password, or do not specify the password in the command sequence. If you exclude the password from the command line, the script will prompt for it. The password is obscured as you type it and it does not appear in the process list.

    For example:

    ./MigrateAgent register 10.10.10.101 jsmith -p jspwd 

    NOTE:If you modify the public IP address of the Migrate Server, you must run the following command on each of the source Linux workloads that are configured for the server to modify the IP address.

    ./MigrateAgent configure <ps_dns_or_ipaddr> <new-ps-dns-or-ipaddr>

    For example:

    ./MigrateAgent configure 10.10.10.101 10.10.20.202
  8. Verify that PlateSpin Controller is running on the source workload. Enter

    ./MigrateAgent status

    If the controller is running, the status reports results similar to the following:

    The PlateSpin Controller daemon is running and registered to server 10.165.x.x
    The PlateSpin blockwatch driver is not installed.
  9. (Non-root user) Exit the sudo -i root shell. Press Ctrl+D, or enter

    exit

    The terminal prompt now shows your non-root user name, such as ec2-user.