VM Clone

A VM clone is a copy of a virtual machine. After the cloning operation, the clone VM runs as a separate virtual machine.

The clone.kubevirt.io API Group defines resources for cloning KubeVirt VMs.

Creating a VM Clone

Under the hood, the clone API relies upon Snapshot & Restore APIs. Therefore, in order to be able to use the clone API, please see VM Snapshot & Restore pre-requisites.

In order to initiate cloning, a VirtualMachineClone object (CRD) needs to be created on the cluster. An example for such an object is:

YAML
Copy

Apply it and see the clone progress:

YAML
Copy

Source & Target

The source and target indicate the source/target API group, kind and name. A few important notes:

  • Currently, the only supported kinds are VirtualMachine (of kubevirt.io api group) and VirtualMachineSnapshot ( of snapshot.kubevirt.io api group), but more types are expected to be supported in the future. See "future roadmap" below for more info.
  • The target name is optional. If unspecified, the clone controller will generate a name for the target automatically.
  • The target and source must reside in the same namespace.
Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard