Import OS images or migrate VMs from other hypervisors sing the CLI
Use the CLI to upload and import OS images into CubeCOS before deploying virtual machines. Image uploads follow a staged process.
Pre-built cloud images are available on our website. Go to Downloads
Upload image over SCP or winscpβ
Transfer your image file to the CubeCOS storage path using SCP (or WinSCP on Windows):
Replace the following variables:
<image-name>: The name of the image<format>: Any of the following supported virtual disk formats.- qcow2
- raw
- vmdk
- vhd
- ova
- img
- kernel
<your-cluster-vip>: Replace with your cluster VIP. For single node deployments, use the management IP of the node.
scp <image-name>.<format> root@<your-cluster-vip>:/mnt/cephfs/glance/.
Connect to the CLIβ
SSH into the appliance as the admin user:
$ ssh admin@<your-cluster-vip>
Password:
Welcome to the Cube Appliance
Enter "help" for a list of available commands
controller>
Import the imageβ
Choose the import mode based on what you're importing:
- As an image: For cloud OS images and templates used to provision new virtual machines.
- As a volume: For VM disks exported from another platform (such as VMware or Hyper-V), imported directly into a project as a bootable volume.
- As an template image
- As a volume
-
Run the image import command:
Admin CLI terminalcontroller> iaas image import -
Select the image source location.
Choose
localto import from the local filesystem orusbto import form a USB device.USB storage devices are blocked by defaultTo enable USB access, log in as admin and set the tuning option
cubesys.probeusbtotruevia CLI > tuning > configure.Admin CLI terminal1: usb2: localEnter index: 2 -
Select the image file to import.
Replace the following variables:
<image-name>: The name of the image<format>: Any of the following supported virtual disk formats: qcow2, raw, vmdk, vhd, ova, img, and kernel.
Admin CLI terminal1: <image-template-name>.<format># ubuntu2204.qcow2 is an example image to be importedEnter index: 1 -
Enter a name for the image:
Replace the following variable:
<imported-image-name>: Set the image name that will be displayed after the image is imported to CubeCOS.
Admin CLI terminalSpecify image name: <imported-image-name> -
Select the domain:
Admin CLI terminal1: defaultEnter index: 1 -
Select the tenant:
There might be many tenants (projects) within your CubeCOS cluster. Select the tenant (project) as the destination for your image.
Admin CLI terminal1: adminEnter index: 1 -
To import template images or cloud images, select from Bigstack for native CubeCOS images:
Admin CLI terminalImage source:1: from Bigstack2: from another hypervisorEnter index: 1 -
Select the visibility of the imported template image.
publicimage: This will be available to all projects in the cluster.privateimage: This will only be available to the destination project.
Admin CLI terminalVisibility:1: public2: privateEnter index: 1 -
Select the storage destination:
The default Ceph SDS is labelled as
CubeStorageor any additional integrated external storage.Admin CLI terminal1: CubeStorageEnter index: 1 -
Select the guest operating system.
Selecting the correct OS is importantChoosing the wrong type can significantly impact performance:
Admin CLI terminalSelect OS (big impacts to performance if it's windows):1: CentOS2: Fedora3: Ubuntu4: Debian5: Windows6: Rocky7: FreeBSD8: CoreOS9: Arch10: OthersEnter index: 10 -
Wait for the import to complete:
Admin CLI terminalImporting...[14:23:44] Converting image to RAW format ...(100.00/100%)[14:23:50] Importing image migrate-vol21 ...[=============================>] 100%# output truncated| visibility | public |+---------------------+----------------------------------------------------------------------------------+[14:26:08] Finished creating image migrate-vol21Importing migrate-vol21 complete. It is safe to remove the local image file.
-
Run the image import command:
Admin CLI terminalcontroller> iaas image import -
Select the image source location.
Choose
localto import from the local filesystem orusbto import form a USB device.USB storage devices are blocked by defaultTo enable USB access, log in as admin and set the tuning option
cubesys.probeusbtotruevia CLI > tuning > configure.Admin CLI terminal1: usb2: localEnter index: 2 -
Select the image file to import.
Replace the following variables:
<image-name>: The name of the image<format>: Any of the following supported virtual disk formats: qcow2, raw, vmdk, vhd, ova, img, and kernel.
Admin CLI terminal1: <image-template-name>.<format># ubuntu2204.qcow2 is an example image to be importedEnter index: 1 -
Enter a name for the image:
Replace the following variable:
<imported-image-name>: Set the image name that will be displayed after the image is imported to CubeCOS.
Admin CLI terminalSpecify image name: <imported-image-name> -
Select the domain:
Admin CLI terminal1: defaultEnter index: 1 -
Select the tenant:
There might be many tenants (projects) within your CubeCOS cluster. Select the tenant (project) as the destination for your image.
Admin CLI terminal1: adminEnter index: 1 -
To import template images or cloud images, select from Bigstack for native CubeCOS images:
All CLI imported
Admin CLI terminalImage source:1: from Bigstack2: from another hypervisorEnter index: 2 -
Select the storage destination:
The default Ceph SDS is labelled as
CubeStorageor any additional integrated external storage.Admin CLI terminal1: CubeStorageEnter index: 1 -
Select the guest operating system.
Selecting the correct OS is importantChoosing the wrong type can significantly impact performance:
Admin CLI terminalSelect OS (big impacts to performance if it's windows):1: CentOS2: Fedora3: Ubuntu4: Debian5: Windows6: Rocky7: FreeBSD8: CoreOS9: Arch10: OthersEnter index: 10 -
Wait for the import to complete:
Admin CLI terminalImporting...[14:31:03] Converting image to RAW format ...[ 0.0] Setting up the source: -i disk /mnt/cephfs/glance/rocky_9.qcow2[ 1.1] Opening the source[ 9.6] Inspecting the source[ 14.2] Checking for sufficient free disk space in the guest[ 14.2] Converting Rocky Linux 9.5 (Blue Onyx) (rocky9) to run on KVMvirt-v2v: This guest has virtio drivers installed.[ 71.6] Setting a random seed[ 71.7] SELinux relabelling[ 77.3] Mapping filesystem data to avoid copying unused and blank areas[ 78.8] Closing the overlay[ 79.0] Assigning disks to buses[ 79.0] Checking if the guest needs BIOS or UEFI to boot[ 79.0] Setting up the destination: -o disk -os /tmp[ 80.0] Copying disk 1/1[ 84.5] Creating output metadata[ 84.5] Finishing off[14:32:37] Importing image migrate-vmdk21 ...Importing image: 100% complete...done.[14:32:58] Finished creating image migrate-vmdk21Importing migrate-vmdk21 complete. It is safe to remove the local image file.