Adapting VMs to run on Google Cloud

To function properly on Google Cloud, migrated VMs may need changes to their configuration. Velostrata handles some configuration changes automatically, but you can also script custom configuration for Windows and Linux. Custom configurations allow a VM and its operating system (OS) to run in Google Cloud. These custom configurations are known as adaptations. The following sections describe how to customize VM and OS adaptations.

Customizing VM adaptations

Velostrata handles many VM adaptations automatically, but you can write custom configurations for Linux as needed. For example, you can install drivers to boot your VM.

Velostrata can execute scripts during migration to enable these adaptations. Scripts can be developed by customers or provided by Velostrata under a support package.

Scripts may run in three machine states (for Windows VMs) or phases (for Linux VMs):

MachineState (Windows VM) Phase (Linux VM) Description
Origin origin On-premises
Velostrata velos Run when the VM is running in cached mode
Detach detach Run after the detach operation

For More information about adaptations, see Linux Adaptations or Windows Adaptation .

Operating system adaptations

This section describes OS adaptations performed by Velostrata, as well as modifications made to Windows and Linux VMs for the run-in-cloud and detach operations.

VM changes performed automatically

Velostrata prepares Linux VMs for booting in Google Cloud using an automatically installed package. Changes are activated only when detecting a run-in-cloud operation, and the package can remain installed after the VM has been migrated. If the package is uninstalled, all changes are reverted.

The set of changes made to the system are:

  • Enable booting on Google Cloud.
  • Enable serial console.
  • Cloud-specific changes for the Velostrata storage channel.
  • Hardware-specific adaptations for cloud migration.

Modifications for run-in-cloud on Windows VMs

Before moving the Windows VM to Google Cloud, Velostrata shuts down the VM and takes a snapshot. Velostrata then modifies the networking and storage drivers to allow the VM to boot in the cloud.

  • Install the NETKVM driver for Velostrata.
  • Change network configuration.
  • System tuning for iSCSI and MPIO access.
  • Change license/edition.
  • Disable VMware tools.
  • Change page file location.
  • Ensure hibernation is disabled.
  • Change recovery options.
  • Enable RDP.
  • Deploy the Velostrata framework that allows you to run custom actions.

Modifications for run-in-cloud on Linux VMs

The Velostrata package is required before migrating.

When you migrate a VM that has VMware tools installed, Velostrata shuts down the VM gracefully and takes a snapshot of the VM. Velostrata then modifies the networking and storage drivers to allow the VM to boot on Google Cloud. These modifications include:

  • Changing to the boot sequence (initrd).
  • Enabling the serial console.
  • Dynamically applying the following modifications in the cloud:
    • Moving mount points with the _netdev option to shut down correctly.
    • Remappang swap files.
    • Starting the Velostrata keep-alive service.
    • Performong disk optimizations.
    • Changing network configurations, including:
      • Removing static IPs and routes: Most migrated systems are preconfigured to static network environments, which includes pre-defined IPs, gateways, routes, network cards, etc. Cloud environments, however, only allow DHCP configuration with network topology managed outside of the VM itself. The Velostrata package removes all static configuration and reconfigures the default network interface (eth0) with DHCP.
      • Updating the primary IP address of hostname in /etc/hosts: Some applications rely on /etc/hosts to extract the local IP address. The package updates /etc/hosts with the new IP address to preserve compatibility.
  • Making changes specific to Google Cloud, as needed.

Modifications for detaching a Windows VM

In addition to changes made during the run-in-cloud operation, during a detach of a Windows VM, Velostrata installs the Google Cloud cloud agent.

Modifications for detaching a Linux VM

In addition to modifications made for the run-in-cloud operation, the package tunes the network configuration after detaching.

Next steps