Difference between revisions of "stoney conductor: VM Backup"
From stoney cloud
(→Snapshot) |
(→Snapshot) |
||
Line 13: | Line 13: | ||
#* Save the state of VM <code>vm-001</code> to the file <code>vm-001.state</code>: <syntaxhighlight lang="bash">virsh save vm-001 vm-001.stat</syntaxhighlight> | #* Save the state of VM <code>vm-001</code> to the file <code>vm-001.state</code>: <syntaxhighlight lang="bash">virsh save vm-001 vm-001.stat</syntaxhighlight> | ||
#* After this command, the VMs CPU and memory state is represented by the file <code>vm-001.state</code> and the VM <code>vm-001</code> is shut down. | #* After this command, the VMs CPU and memory state is represented by the file <code>vm-001.state</code> and the VM <code>vm-001</code> is shut down. | ||
− | # | + | # Move the disk image <code>/path/to/images/vm-001.qcow2</code> to the retain location: <syntaxhighlight lang="bash">mv /path/to/images/vm-001.qcow2 /path/to/retain/vm-001.qcow2</syntaxhighlight> |
− | # | + | #* '''Please note:''' The retain directory (<code>/path/to/retain/</code>) '''has to be''' on the same partition as the images directory (<code>/path/to/images/</code>). This will make the <code>mv</code> operation very fast (only renaming the inode). So the downtime (remember the VM <code>vm-001</code> is shut down) is as short as possible. |
− | # | + | # Create the new (empty) disk image with the old as backing store file: <code>qemu-img create -f qcow2 -b my-vm-backup.qcow2 my-vm.qcow2</code> |
#* Set correct ownership and permission to the newly created image: | #* Set correct ownership and permission to the newly created image: | ||
#** <code>chown root:vm-storage my-vm.qcow2</code>. | #** <code>chown root:vm-storage my-vm.qcow2</code>. | ||
#** <code>chmod 660 my-vm.qcow2</code>. | #** <code>chmod 660 my-vm.qcow2</code>. | ||
#* Restore the VMs state: <code>virsh restore my-vm.state</code>. | #* Restore the VMs state: <code>virsh restore my-vm.state</code>. | ||
− | |||
− | |||
− | |||
− | |||
== Merge == | == Merge == |
Revision as of 13:49, 22 October 2013
Overview
This page describes how the VMs and VM-Templates are backed-up inside the stoney cloud.
Basic idea
The main idea to backup a VM or a VM-Template is, to divide the task into three subtasks:
- Snapshot: Save the machines state (CPU, Memory and Disk)
- Merge: Merge the Disk-Snapshot with the live-image
- Retain: Export the snapshot files
A more detailed and technical description for these three sub-processes can be found in the following sub-chapters.
Snapshot
- Create a snapshot with state:
- Save the state of VM
vm-001
to the filevm-001.state
:virsh save vm-001 vm-001.stat
- After this command, the VMs CPU and memory state is represented by the file
vm-001.state
and the VMvm-001
is shut down.
- Save the state of VM
- Move the disk image
/path/to/images/vm-001.qcow2
to the retain location:mv /path/to/images/vm-001.qcow2 /path/to/retain/vm-001.qcow2
- Please note: The retain directory (
/path/to/retain/
) has to be on the same partition as the images directory (/path/to/images/
). This will make themv
operation very fast (only renaming the inode). So the downtime (remember the VMvm-001
is shut down) is as short as possible.
- Please note: The retain directory (
- Create the new (empty) disk image with the old as backing store file:
qemu-img create -f qcow2 -b my-vm-backup.qcow2 my-vm.qcow2
- Set correct ownership and permission to the newly created image:
-
chown root:vm-storage my-vm.qcow2
. -
chmod 660 my-vm.qcow2
.
-
- Restore the VMs state:
virsh restore my-vm.state
.
- Set correct ownership and permission to the newly created image: