4.5 Advanced Workload Migration Notes

4.5.1 Linux Migration to a Paravirtualized VM on Xen-on-SLES

You can do a migration to a paravirtualized VM on Xen-on-SLES (version 10 only). This is done indirectly, through a two-stage process. The paravirtualized VM needs to be transformed into a fully virtualized VM first and later transformed back. A utility (xmps), included in your PlateSpin boot ISO image, is used to transform the VM.

The procedure varies slightly, depending on whether the target is a new or an existing paravirtualized VM.

Linux Migration to a New Paravirtualized VM

  1. Copy the PlateSpin boot ISO image to the target Xen/SLES server.

  2. Start the Virtual Machine manager and create a fully virtualized VM:

    1. Select the I need to install an operating system option.

    2. Choose a suitable size for the disk image (the disk size should be equal to or bigger than that of the source machine).

    3. Select the boot ISO as the installation source.

      The VM boots into the PlateSpin OS environment, used in X2P settings.

  3. Complete the migration.

    See Migrating a Workload to Xen Hypervisor on SLES.

    Upon completion, the VM should be fully functional as a fully virtualized machine.

  4. Reboot the VM, making sure that it still boots into the PlateSpin OS environment.

  5. At the boot: prompt, type switch and press Enter.

    This reconfigures the operating system to be bootable as a paravirtualized machine. Upon completion, the output should look similar to the one shown below:

    Note the bootloader arguments in the final segment of the output:

    Please apply the following data as bootloader_args for
    switching Xen fully-virt machine to Para-virt machine:
     
    '-entry=xvda1:/vmlinuz-2.6.16.60-0.54.5-xen, /initrd-2.6.16.60-0.54.5-xen'
    

    These are used by the xmps utility to set up the location of the kernel and the initrd image, from which the paravirtualized machine boots from.

  6. Power off the virtual machine:

    [DB]$ poweroff

  7. Login to the XEN/SLES server as root and mount the PlateSpin boot ISO image (the command example assumes that the ISO has been copied under the /root directory):

    # mkdir /mnt/ps
    # mount -o loop /root/linuxphysicaltarget.iso /mnt/ps
    
  8. Run the xmps utility to create a paravirtualized VM based on the configuration of the fully virtualized VM:

    # /mnt/ps/tools/xmps --pv --vm_name=SLES10-FV --new_vm_name=SLES10-PV --bootloader_args="--entry=xvda1:/vmlinuz-2.6.16.60-0.54.5-xen, /initrd-2.6.16.60-0.54.5-xen"
    

    The utility takes as input:

    • the name of the fully virtualized VM on which the configuration of the paravirtualized machine will be based (SLES10-FV)

    • the name of the virtual machine to create (SLES10-PV)

    • the paravirtualized machine's bootloader arguments "--bootloader_args" (shown at Step 5)

    NOTE:If a VM with the same name as the one passed as new_vm_name already exists, the xmps utility fails.

    The newly created paravirtualized VM (SLES10-PV) should now be available in the Virtual Machine Manager, ready to be turned on. The corresponding fully virtualized machine is retired and will fail to boot. This VM can be deleted safely (only the VM configuration will be removed).

  9. Unmount the PlateSpin boot ISO image:

    # umount /mnt/ps
    

Linux Migration to an Existing Paravirtualized VM

  1. Copy the PlateSpin boot ISO image to the target Xen/SLES server.

  2. Login to the XEN/SLES server as root and mount the PlateSpin boot ISO image:

    # mkdir /mnt/ps
    # mount -o loop /root/linuxphysicaltarget.iso /mnt/ps
    
  3. Run the xmps utility to create a fully virtualized VM based on the configuration of the paravirtualized VM (the intended failback target):

    # /mnt/ps/tools/xmps --fv --vm_name=SLES10-PV  --new_vm_name=SLES10-FV --bootiso=/root/linuxphysicaltarget.iso
    

    The utility takes as input:

    • the name of the existing paravirtualized machine (SLES10-PV), which is the intended failback target

    • the name of the temporary fully virtualized machine (SLES10-FV) to be created for the two-stage failback operation

    • the full path of the boot ISO (assuming that the ISO file is located uner /root: /root/linuxphysicaltarget.iso)

    NOTE:If a VM with the same name as the one passed as new_vm_name already exists, the xmps utility fails.

    The newly created fully virtualized machine (SLES10-FV) should now be available in the Virtual Machine Manager.

  4. Turn on the newly created fully virtualized machine (SLES10-FV).

    The VM boots into the PlateSpin OS environment, used in X2P settings.

  5. Complete the migration.

    See Migrating a Workload to Xen Hypervisor on SLES.

  6. Reboot the VM, run switch, and reconfigure the workload as described in Linux Migration to a New Paravirtualized VM (from Step 4 to Step 9 only).