Synchronize Target Environment with Scanned Machine

At the end of the migration process, you can synchronize the running migrated instance with the source machine data.

Warning

This feature is only available for scans without overlay for the following Operating Systems:

  • CentOS 6, 7
  • Red Hat Enterprise Linux 6, 7
  • Debian 6, 7, 8
  • Ubuntu 16.04, 14.04, 12.04
  • openSUSE 42

From the scan detail view, you can get the instructions to synchronize your data by clicking the Synchronize button.

Note

uforge-sync is based on rsync, which does not handle BTRFS subvolume synchronization well. If you plan you synchronize snapshots directories from a BTRFS partition, it is better to exclude these directories from the scan and use another tool to handle synchronization, based on btrfs send and btrfs receive.

Download the uforge-sync Tool

You need the uforge-sync binary in the source machine, available at /resources/uforge-sync.bin, for example:

$ curl --insecure -O https://10.1.2.206/resources/uforge-sync.bin

Launch the uforge-sync Tool

Once the uforge-sync binary has been copied to the source machine, you can launch it:

$ chmod +x ./uforge-sync.bin ; ./uforge-sync.bin -U http://10.1.2.206/api -u guest \
-n users/guest/scannedinstances/1/scans/1 -d 11.12.13.14 -i ~/.ssh/id_rsa
The following are mandatory parameters:
  • -U: the UForge server URL
  • -u: the UForge user
  • -n: the scan URI
  • -d: the migrated instance address

Note

The usage of an SSH key pair is strongly recommended to connect to the migrated instance. You must specify the private key path using the -i parameter, and have the public key in the migrated instance’s ~/.ssh/authorized_keys file.

If you encounter an error message indicating the SSL certificate subject name does not match the target host name, you can add the -k option to your command line to prevent uforge-sync.bin from strictly checking the SSL certificate.

Note

The uforge-sync tool may overwrite existing configuration files of running services. Please restart services to load new configuration, if necessary.

Note

The uforge-sync tool self extracts in /tmp directory before execution. If the machine source or destination is configured with noexec option on /tmp partition a Permission denied error will occur. In that case, you can specify the environment variable TMPDIR on the source machine to use a different directory. For example:

TMPDIR=/root/ ./uforge-sync.bin -U https://<uforge-ip>/api -u <username> \
        -n users/guest/scannedinstances/1/scans/1 -d <target-ip> -i ~/.ssh/id_rsa