Disk import/export APIs: Difference between revisions
Dave.scott (talk | contribs) No edit summary |
Dave.scott (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
Note: these APIs are considered experimental and are subject to change. To provide feedback and/or query current status, email xen-api@lists.xenproject.org |
|||
These APIs are present in the following xapi versions: |
These APIs are present in the following xapi versions: |
||
* TODO |
* TODO |
||
Line 51: | Line 53: | ||
xe vdi-import uuid=$RESTORE filename=delta.vhd format=vhd --progress |
xe vdi-import uuid=$RESTORE filename=delta.vhd format=vhd --progress |
||
= Using the XenAPI = |
|||
== Exporting a full disk image == |
|||
== Exporting only block changes/deltas == |
|||
== Importing a full disk image == |
|||
== Importing only changed blocks/deltas == |
Revision as of 12:50, 28 August 2014
Note: these APIs are considered experimental and are subject to change. To provide feedback and/or query current status, email xen-api@lists.xenproject.org
These APIs are present in the following xapi versions:
- TODO
To detect the presence of these APIs:
- TODO: either expose a capability or suggest a "try it and see" approach
Using the 'xe' CLI
Exporting a full disk image
The following command will export a VDI with uuid $VDI in vhd format to the local file 'full.vhd':
xe vdi-export uuid=$VDI filename=full.vhd format=vhd --progress
The vhd format can be *sparse*, so if there are unallocated blocks within the VDI which xapi is aware of, they will be omitted from the vhd therefore making the vhd smaller. This should work on all current vhd-based storage types (EXT, NFS)
The currently supported formats are:
- vhd
- raw
Exporting only block changes/deltas
Assuming you have taken a VDI snapshot with a command like:
SNAPSHOT=$(xe vdi-snapshot uuid=$VDI)
You can export only the changes between the VDI and the snapshot with:
xe vdi-export uuid=$VDI base=$SNAPSHOT filename=delta.vhd format=vhd --progress
This should be a lot quicker than a full export and the output file should be smaller.
The currently supported formats are:
- vhd
Note the 'vhd parent' field within delta.vhd will not directly reference 'full.vhd'.
Importing a full disk image
First create a fresh VDI to hold the data:
RESTORE=$(xe vdi-create name-label=restore virtual-size=...)
Then import the blocks
xe vdi-import uuid=$RESTORE filename=full.vhd format=vhd --progress
Importing only changed blocks/deltas
Import the changed blocks:
xe vdi-import uuid=$RESTORE filename=delta.vhd format=vhd --progress