Preparing the Source VM for Conversion to an Amazon EC2 Instance

Before you convert VMware, Azure, or Hyper-V VMs to Amazon EC2 instances, regardless of the conversion method that you use, you must install drivers on the source VMs so that the converted instances will boot.

Drivers to Install

Method of conversion

Paravirtual (PV) drivers

Amazon EC2 drivers

NVMe drivers

ENA drivers

Amazon EBS direct API

Yes

Yes

Yes, but only for conversion to Nitro instances

Yes, but only for conversion to Nitro instances

Commvault HotAdd

--

--

--

--

VM Import/Export

--

--

Yes, but only for conversion to Nitro instances

Yes, but only for conversion to Nitro instances

Procedures

Commvault supports automatically injecting drivers for Linux VMs that are from a Red Hat distribution.

Linux: RHEL, Oracle, and Suse

  1. If the source VM is Linux and not an Amazon EC2 instance, install the following Xen drivers on the source VM:

    • xen-blkfront

    • xen-netfront

      Note

      Installing the Xen drivers on the Linux guest VMs prior to replicating the VMs, enables them to be in place when the Amazon instances are created, started, and ready for you to access.

  2. If converting to a Nitro instance type, then install the NVMe and ENA drivers on the source VMs. The following OS versions have the required NVMe and ENA drivers installed:

    • Red Hat Enterprise Linux 7.4 or later

    • SUSE Linux Enterprise Server 12 SP2 or later

  3. Check if the OS versions have the required NVMe and ENA drivers pre installed. Run the following command:

    modinfo nvme
    modinfo ena
  4. If the drivers require an update, run the following command:

    sudo yum update -y

    For SUSE:

    sudo zypper update -y
  5. Reboot your instance to load the latest kernel version.

  6. Once the drivers are installed, log on to the Linux VM as a root user. Go to the /boot folder:

    cd /boot
  7. Perform a backup of the .img file for the kernel.

  8. Open the editor to edit the dracut.conf configuration file:

    vi /etc/dracut.conf
  9. Add the nvme-core and nvme module names to the "add_drivers" line with spaces separating each module.

    For example, when both xen and nitro drivers are installed:

    add_drivers+="xen-blkfront xen-netfront nvme-core nvme"
  10. Return to the /boot folder:

    cd /boot
  11. Recut the initramfs:

    dracut -f -v
  12. Run the following command to verify if the drivers are loading successfully:

    lsinitrd | grep -i -e nvme -e ena

    Sample output:

    [root@oracle-3 ~]# lsinitrd | grep -i -e nvme -e ena
    drwxr-xr-x  3 root  root   0 Apr 12 12:49 usr/lib/modules/5.4.17-2136.305.5.5.el7uek.x86_64/kernel/drivers/nvme
    drwxr-xr-x  2 root  root   0 Apr 12 12:49 usr/lib/modules/5.4.17-2136.305.5.5.el7uek.x86_64/kernel/drivers/nvme/host
    -rw-r--r--  1 root  root   59980 Apr  6 02:42 usr/lib/modules/5.4.17-2136.305.5.5.el7uek.x86_64/kernel/drivers/nvme/host/nvme-core.ko.xz
    -rw-r--r--  1 root  root   35968 Apr  6 02:42 usr/lib/modules/5.4.17-2136.305.5.5.el7uek.x86_64/kernel/drivers/nvme/host/nvme.ko.xz

Ubuntu

Ubuntu 16.04 and later include the linux-aws package, which contains the NVMe and ENA drivers required by Nitro-based instances. Upgrade the linux-aws package to receive the latest version.

  1. Check if Ubuntu 14.04 (with linux-aws kernel) or later has the required NVMe and ENA drivers pre installed. Run the following command:

    modinfo nvme
    modinfo ena
  2. If the drivers require an update, run the following command:

    sudo apt-get update -y
  3. If the drivers are not present, run the following command:

    • For Ubuntu 14.04, install the latest linux-aws package:

      sudo apt-get install linux-aws
    • For Ubuntu 16.04 and later include the linux-aws package, which contains the NVMe and ENA drivers required by Nitro-based instances. Upgrade the linux-aws package to receive the latest version:

      sudo apt-get install --only-upgrade -y linux-aws
  4. Reboot your instance to load the latest kernel version.

Windows Server 2012 R2 and Later

If the source VM is not an Amazon EC2 instance, then install the drivers manually.

  1. Download the following files:

  2. If converting to a Nitro instance type, then the NVMe and ENA drivers are also required. Install them using the following links:

Windows Server 2008 R2 and Earlier

This procedure is required only for source VMs that run on a version of Windows Server earlier than Windows Server 2012 R2.

To function, Amazon EC2 instances must have Xen drivers. If Xen drivers are not installed, the replication or conversion operation cannot create a virtual network adapter for the replicated or converted VM, and the status check for the replicated or converted VM fails after replication or conversion.

The following drivers are supported for 2008 R2 VM conversions or replications:

  • AWS PV drivers (version 8.3.5 and earlier)

  • EC2 config drivers(version 4.9.4326 and earlier)

  • NVMe drivers( version 1.3.2 and earlier)

  • ENA drivers(version 2.2.3 and earlier)

  1. You can perform a restore or conversion using HotAdd. On the access node, create an Amazon folder under the software_install_path/Commvault/ContentStore folder, and extract the contents of the below zip files to the Amazon folder:

    https://s3.amazonaws.com/ec2-windows-drivers-downloads/AWSPV/8.3.5/AWSPVDriver.zip

    https://s3.amazonaws.com/ec2-downloads-windows/EC2Config/EC2Install.zip

    These drivers will be injected to the restored instance.

  2. To manually inject drivers for conversion using direct write, install the following drivers on the source guest:

    https://s3.amazonaws.com/ec2-windows-drivers-downloads/AWSPV/8.3.5/AWSPVDriver.zip

    https://s3.amazonaws.com/ec2-downloads-windows/EC2Config/EC2Install.zip

    To boot up successfully, you must reboot on the converted instance in AWS. To upgrade an AWS non-nitro to a nitro instance type, see AWS Migrate to latest generation instance types.

  3. You can also include drivers for a nitro conversion or replication:

    1. If the instance is running Windows Server 2008 R2 SP1, ensure that is has the SHA-2 code signing support update.

    2. The version of the Powershell must be 3 or higher to install the nitro drivers.

    3. Install the EC2 and PV drivers from above links and reboot the guest.

    4. You can set the execution policy to Unrestricted in powershell. By default it is set to Restricted or RemoteSigned. From the command line, run:

      Set-ExecutionPolicy -ExecutionPolicy Unrestricted
    5. Download the ENA driver and extract the zip archive

    6. Install the ENA driver by running the install.ps1 PowerShell script.

    7. Download the NVMe driver and extract the zip archive.

    8. Install the NVMe driver by running the install.ps1 PowerShell script or by running the dpinst.exe.

    9. Run the following command from powershell administrator session:

      start rundll32.exe sppnp.dll,Sysprep_Generalize_Pnp -wait
    10. Reboot the instance.

    11. Create a backup and convert it to AWS using direct write or hotadd disabling driver injection.

Loading...