IBM Cloud Docs
Migration considerations

Migration considerations

The VPC+ Cloud Migration tool duplicates your environment on IBM Cloud® Virtual Private Cloud and does not cancel your IBM Cloud classic infrastructure. You can cancel your existing classic environment from the IBM Cloud console.

Considerations for virtual server instances

Virtual server instances must use one of the following operating systems:

  • CentOS 7.x, 8.x
  • Debian 9.x, 10.x
  • Red Hat 7.x, 8.x
  • Ubuntu Linux 16.04.x, 18.04.x
  • Windows 2012, 2012R2, 2016

If you have virtual servers that are not using one of the supported operating systems, you need to migrate them to a supported level before migration.

Virtual servers must be cloud-init enabled and have Virtio drivers. For Linux images that do not meet this criteria, see Creating a Linux custom image to prepare the image. For Windows images that do not meet this criteria, see Creating a Windows custom image. As an option, you can run a script to validate if your Linux or Windows image meets the minimum OS requirements, is cloud-init enabled, and has Virtio drivers. For more information, see the script details.

Additionally, virtual servers must meet the following requirements:

  • No add-ons
  • Stock OS image
  • Primary volume size doesn't exceed 100 GB
  • Supported operating systems

The VPC+ Cloud Migration tool does not log in to your virtual server instances nor does it have access to them. VPC+ Cloud Migration, which is managed by Wanclouds, follows industry best practices to ensure that their application tool is secure and protects your sensitive information.

VMDK image conversion

You can migrate a VMDK-formatted image from classic to VPC by using the VPC+ tool. The VPC+ tool converts the VMDK image to qcow2, which is the supported format in VPC. The image must meet the image requirements listed in the Considerations for virtual server instances section:

  • Supported operating system
  • Cloud-init enabled
  • Virtio drivers
  • Single vHDD (no secondary) and does not exceed 100 GB

If you decide to use the VPC+ tool to convert and migrate your VMDK image, you must export the image to IBM Cloud Object Storage before you begin using the tool. For more information, see Upload data.

As an alternative, you can convert your VMDK image to qcow2 and upload to Object Storage yourself. For more information, see Migrating VMDK or VHD images to VPC.

Dedicated hosts

When migrating a classic virtual server instance from a dedicated host to IBM Cloud VPC, you have the option to continue to migrate it as a single-tenant model (dedicated host) or change to a shared-tenant model (public). The default is a single-tenant model, and the VPC+ tool will try to match to the closest classic profile that VPC offers for both the dedicated host and virtual server instance. You have the option to change the profile for either the dedicated host or virtual server instance.

When you decide on classic virtual server placement, you can choose either manual (dedicated host) or auto-assign. Whereas in IBM Cloud VPC, the implementation is slightly different and placement is either to a dedicated host or dedicated host group. If the placement for the classic virtual server instance is manual, then the VPC+ tools honors the placement and provisions the virtual server in IBM Cloud VPC as such. For auto-assign, due to the different implementation, the server gets auto-assigned within a dedicated host group. For more information, see Creating dedicated hosts and groups. Similarly, as with profiles, you have the option to change the virtual server placement and dedicated host group.

Supported virtual server profiles

Not all compute profiles are supported in VPC. For example, quadratic profiles such as C1.2x2, C1.4x4, C1.8x8 are not supported. See VPC profiles for a full list of supported profiles.

If the VPC+ tool encounters a profile during discovery that doesn't match a supported profile, the closest matching profile is selected. You can change the selection when editing the discovered resources.

VPC+ Cloud Migration does not currently support GPU profiles.

Instance groups for auto scaling

The VPC+ tool discovers virtual server instances that are associated with instance groups. You can migrate these instances with the VPC+ tool, but the tool does not set up auto scale policies in VPC. It's recommended that you migrate only one virtual server instance that is associated with an instance group and then set up auto scale policies with that virtual server instance. For more information, see Creating an instance group for auto scaling.

Data storage considerations for attached, block, and file storage

The VPC+ tool can discover the three types of storage used by virtual server instances in IBM Cloud classic infrastructure:

  1. Portable storage
  2. Network file storage
  3. Network-attached block storage (iSCSI) with file systems

With VPC+ tool, you have the option to choose which data volumes to migrate. Only the volumes that you select will be migrated.

If you have a virtual server instance that has already been migrated where you want to migrate secondary data volumes, use the Content Data Migrator in the VPC+ tool.

As an alternative to the Content Data Migrator, you can migrate the data on the block or file volumes to VPC by yourself by using rsync or other tools of your choice (scp or other third-party tools). For more information on using rsync to migrate your data, see Migrating data from IBM Cloud classic infrastructure to VPC.

Prerequisites for storage migration

To migrate block and NAS storages to VPC along with the virtual server instance, make sure to review and complete the following prerequisites:

  1. Your IBM Cloud account should have administrator privileges for both classic and VPC. Storage volumes are created for the account provided within the VPC.
  2. You need to download the script that is provided by the VPC+ tool and run it on your classic virtual server instance with the required privileges. Instructions are provided in the script. The script installs the content migration agent that collects the necessary metadata that is needed for migration. The content migration agent collects information on attached storage, for example, name, partition information for block devices, mount points, file system types. The agent uploads the metadata to the VPC+ controller, providing an option later in the tool to select the wanted volumes for migration. For this to happen, your virtual server needs external connectivity to upload metadata files to the VPC+ controller.
  3. In the IBM Cloud console, navigate to Menu icon Menu icon > Classic Infrastructure > Devices > your virtual server instance. Select the Storage tab, and authorize your block and file storage if not listed there.

Limitations

Review the following storage migration limitations:

  • All migrations are limited to a volume size of 2 TB only.
  • You can choose only four volumes while provisioning a virtual server instance. Only four attached volumes, in addition to your boot volume, can be migrated. If you have more than four volumes in your classic instance, see Volume attachment limits for details and use the Content Data Migrator in the VPC+ tool to migrate the additional volumes.
  • Up to four primary partitions or three primary with two logical on the fourth partition can be migrated.
  • Migration of block volumes and partitions without file systems is not yet supported.
  • A maximum of 10 IOPS/Gb mapping will be done on virtual server instances for VPC.
  • Migration of storage attached to Windows is not yet supported.

All three storage types can be migrated if your use case satisfies these limitations.

Storage migration use cases

Consider the following uses cases for storage migration:

  1. Classic virtual server instance has portable storage that is attached with Linux file systems. This is migrated as-is to VPC.
  2. Classic virtual server instance has network file storage:
    • An equivalent Linux file system (ext4) is created in VPC and then the contents are copied over.
    • VPC does not yet support NAS storage. Your storage will be on the Linux file system on your VPC instance, and it cannot be shared.
  3. Classic virtual server has network block storage (iSCSI devices):
    • The content migration agent will discover the existence of a Linux file system on top of dev mapper devices and will migrate the contents to VPC.
    • Partition information between source and destination will be retained.
    • File systems on top of the iSCSI luns are copied to the destination instance. Neither multi-pathing nor user-friendly names configured on your source will be available. in your destination.
  4. Classic virtual instance has portable storage, network file storage, and network block storage.

Considerations for SSH keys

The VPC+ tool can detect the SSH public keys that were added during the initial ordering process of your classic virtual server instances. If the SSH public keys aren't RSA or were added after you ordered your instances, then the VPC+ tool will require you to add a new SSH key.

Considerations for secondary volumes

If you want to migrate a virtual server instance with a primary volume and there is a secondary volume that is attached to it, make sure that when you mount your disks in your classic machine it is mounted permanently. Accomplish this by adding the nofail in the secondary volume mount entry of the /etc/fstab file.

A typical entry looks like the following:

"/dev/disk     /mnt/disk      ext4        defaults,nofail      0       2”

You need to add nofail next to defaults if it isn’t there already.

VPC+ Cloud Migration only supports a maximum of three secondary volumes for migration.

If a server cannot be migrated because it's not configured as cloud-init, you can still migrate the secondary volume of that server. First, create a compatible server in VPC, then migrate the secondary volume by using the previous procedure.

Considerations for load balancers

Only IBM Cloud Load Balancer is supported.

If your IBM Cloud classic environment uses configurations in IBM Cloud Load Balancer that are not available in VPC, VPC+ Cloud Migration sets the closest match to what is available for VPC or uses a default configuration.

Considerations for gateway appliance

Only VRA (Vyatta 5600) is supported. Within VRA, the following features are supported:

  • Gateway (NAT masquerade)
  • VPN/IKE
  • Stateless ACLs

ACLs

The VPC+ tool does not translate network or host-based ACL rules. You will need to add these rules when editing your discovered resources or after you provision your VPC environment.

For port-based ACLs that are configured with RFC1918 a network address, the port ACLs are migrated but the address will change to Any. For example, the following VRA configuration:

Allow UDP, Source Address 10.1.1.0/26, Destination Address 172.16.20.0/26 Port 80

Migrates to VPC as:

Allow UDP Source Address Any, Destination Address Any, Port 80

If you have host-based rules /32, consider moving to security groups to preserve ACLs resource usage.

VRA rule limitations

IBM Cloud limits VRA rules to 25. If you have more than 25 rules, IBM Cloud selects the first 25. You can manage these rules when editing your discovered resources.

Gateway configurations not available in VPC

If your IBM Cloud classic environment uses configurations in a gateway that are not available in VPC, VPC+ Cloud Migration sets the closest match to what is available for VPC or uses a default configuration.

Considerations for IBM Cloud Kubernetes Service and Red Hat OpenShift migration

With the VPC+ tool, you can discover and migrate your IBM Cloud Kubernetes Service or Red Hat® OpenShift® cluster from classic to IBM Cloud VPC. The VPC+ tool identifies all of your clusters and creates a workspace to help you manage your migration. You decide which cluster you want to migrate.

You can migrate the following versions:

  • IBM Cloud Kubernetes Service version 1.21+
  • Red Hat OpenShift version 4.6+

You can only migrate from a single data center to a single availability zone or multiple data centers to a multi-zone region.

The open source tools Velero and Restic are installed in their unique namespace by VPC+ to back up and migrate your IBM Cloud Kubernetes Service or Red Hat OpenShift resources and components such as cluster-level resources, worker pools, PODs, namespaces, secrets, stateful sets, daemon sets, replica sets, jobs, cron jobs, and persistent volumes.

You need to create an IBM Cloud Object Storage service credential with a manager service role and HMAC. A temporary Object Storage bucket is created in your account to assist with the migration. In addition, subnet gateways are to all IBM Cloud Kubernetes Service subnets.

Limitations

Review the following limitations for IBM Cloud Kubernetes Service or Red Hat OpenShift migration:

  • Ingress resources and services are your responsibility.
  • Only block volumes are supported.
  • Velero requires 1 CPU and 500 MB for each node. In some cases, migration might fail due to hardware capacity. In these cases, scaling down resource consumption is required, such as disabling logging, monitoring, or applications.