Difference between revisions of "Backup of a running container with vzdump"
(→Bugs) |
(no level 1 headings, better formatting; VE->CT; category tags should not be in the middle) |
||
Line 1: | Line 1: | ||
− | + | Vzdump is a utility to make consistent snapshots of running OpenVZ containers. It basically creates a tar archive of the container's private area, which also includes the CT configuration files. | |
− | Vzdump is a utility to make consistent snapshots of running OpenVZ | ||
There are several ways to provide consistency: | There are several ways to provide consistency: | ||
− | + | * Stop the CT during backup (very long downtime) | |
− | + | * Use rsync and suspend/resume (minimal downtime) | |
− | + | * Use LVM2 (no downtime) | |
− | |||
− | |||
Vzdump stores the backup on the disk in a single file. This file should go to a tape backup for archiving. | Vzdump stores the backup on the disk in a single file. This file should go to a tape backup for archiving. | ||
Line 40: | Line 37: | ||
--restore FILENAME restore FILENAME | --restore FILENAME restore FILENAME | ||
− | = Examples = | + | == Examples == |
− | Use a running container, for example install this: [[Proxmox Mail Gateway in | + | Use a running container, for example install this: [[Proxmox Mail Gateway in container]]. |
− | == Backup == | + | === Backup === |
− | Simply dump CT 777 | + | Simply dump CT 777 — no snapshot, just archive the container private area and configuration files to the default dump directory (usually <code>/vz/dump/</code>). |
− | + | vzdump 777 | |
Use rsync and suspend/resume to create a snapshot (minimal downtime). | Use rsync and suspend/resume to create a snapshot (minimal downtime). | ||
− | + | vzdump --suspend 777 | |
Backup all containers and send notification mails to root. | Backup all containers and send notification mails to root. | ||
− | + | vzdump --suspend --all --mailto root | |
Use LVM2 to create snapshots (no downtime). | Use LVM2 to create snapshots (no downtime). | ||
− | + | vzdump --dumpdir /space/backup --snapshot 777 | |
Note that using LVM2 and vzdump to create snapshots requires 512Mb of free space in your VG as described [http://weblogs.amtex.nl/index.php?blog=2&title=using_vzdump_snapshot_to_backup_without_downtime&more=1&c=1&tb=1&pb=1 here]. | Note that using LVM2 and vzdump to create snapshots requires 512Mb of free space in your VG as described [http://weblogs.amtex.nl/index.php?blog=2&title=using_vzdump_snapshot_to_backup_without_downtime&more=1&c=1&tb=1&pb=1 here]. | ||
− | == Restore == | + | === Restore === |
− | |||
− | |||
− | + | Restore the above backup to CT 600: | |
− | + | vzdump --restore /space/backup/vzdump-777.tar 600 | |
− | = Bugs = | + | == Bugs == |
vzdump will fail under Debian Etch in version 1.0-2 (tested) if it is invoked with parameter "--snapshot" and if the logical volume name contains a hyphen. | vzdump will fail under Debian Etch in version 1.0-2 (tested) if it is invoked with parameter "--snapshot" and if the logical volume name contains a hyphen. | ||
One possible workaround is to rename the logical volume in question thus it doesn't contain any hyphen. | One possible workaround is to rename the logical volume in question thus it doesn't contain any hyphen. | ||
A bug report was sent to proxmox on 02 June 2008. | A bug report was sent to proxmox on 02 June 2008. | ||
+ | |||
+ | [[Category: HOWTO]] |
Revision as of 08:48, 2 June 2008
Vzdump is a utility to make consistent snapshots of running OpenVZ containers. It basically creates a tar archive of the container's private area, which also includes the CT configuration files.
There are several ways to provide consistency:
- Stop the CT during backup (very long downtime)
- Use rsync and suspend/resume (minimal downtime)
- Use LVM2 (no downtime)
Vzdump stores the backup on the disk in a single file. This file should go to a tape backup for archiving.
Download
Download vzdump rpm or deb packages from http://download.openvz.org/contrib/utils/vzdump/ or for newest version, check http://www.proxmox.com/cms_proxmox/en/technology/oss-software/openvz/
For rpm based systems:
wget http://www.proxmox.com/cms_proxmox/cms/upload/vzdump/vzdump-1.0-2.noarch.rpm
For Debian based systems:
wget http://www.proxmox.com/cms_proxmox/cms/upload/vzdump/vzdump_1.0-2_all.deb
Installation
For rpm based systems:
rpm -i vzdump-1.0-2.noarch.rpm
For Debian based systems:
dpkg -i vzdump_1.0-2_all.deb
Synopsis
vzdump OPTIONS [--all | <CTID>] --compress compress dump file (gzip) --dumpdir DIR store resulting files in DIR --xdelta create a differential backup using xdelta --mailto EMAIL send notification mail to EMAIL --stop stop/start container if running --suspend suspend/resume container when running --snapshot use LVM snapshot when running --restore FILENAME restore FILENAME
Examples
Use a running container, for example install this: Proxmox Mail Gateway in container.
Backup
Simply dump CT 777 — no snapshot, just archive the container private area and configuration files to the default dump directory (usually /vz/dump/
).
vzdump 777
Use rsync and suspend/resume to create a snapshot (minimal downtime).
vzdump --suspend 777
Backup all containers and send notification mails to root.
vzdump --suspend --all --mailto root
Use LVM2 to create snapshots (no downtime).
vzdump --dumpdir /space/backup --snapshot 777
Note that using LVM2 and vzdump to create snapshots requires 512Mb of free space in your VG as described here.
Restore
Restore the above backup to CT 600:
vzdump --restore /space/backup/vzdump-777.tar 600
Bugs
vzdump will fail under Debian Etch in version 1.0-2 (tested) if it is invoked with parameter "--snapshot" and if the logical volume name contains a hyphen. One possible workaround is to rename the logical volume in question thus it doesn't contain any hyphen. A bug report was sent to proxmox on 02 June 2008.