NAME
Sys::Virt::DomainSnapshot - Represent & manage a libvirt guest domain
DESCRIPTION
The Sys::Virt::DomainSnapshot
module represents a guest domain managed by the virtual machine monitor.
METHODS
- my $str = $domss->get_name()
-
Return the name of the snapshot
- my $xml = $domss->get_xml_description($flags)
-
Returns an XML document containing a complete description of the domain snapshot's configuration. The
$flags
parameter accepts the following constants - $domss->delete($flags)
-
Deletes this snapshot object & its data. The optional
$flags
parameter controls what should be deleted via theSys::Virt::DomainSnapshot::DELETE_*
constants. - $domss->revert_to($flags)
-
Revert the domain to the state associated with this snapshot. The optional
$flags
control the state of the VM after the revert via theSys::Virt::DomainSnapshot::REVERT_*
constants. - $parentss = $domss->get_parent();
-
Return the parent of the snapshot, if any
- $res = $domss->is_current()
-
Returns a true value if this is the current snapshot. False otherwise.
- $res = $domss->has_metadata()
-
Returns a true value if this snapshot has metadata associated with it.
- $count = $domss->num_of_child_snapshots()
-
Return the number of saved snapshots which are children of this snapshot
- @names = $domss->list_child_snapshot_names()
-
List the names of all saved snapshots which are children of this snapshot . The names can be used with the
lookup_snapshot_by_name
- @snapshots = $domss->list_child_snapshots()
-
Return a list of all snapshots that are children of this snapshot. The elements in the returned list are instances of the Sys::Virt::DomainSnapshot class. This method requires O(n) RPC calls, so the
list_all_children
method is recommended as a more efficient alternative. - my @snapshots = $domss->list_all_children($flags)
-
Return a list of all domain snapshots that are children of this snapshot. The elements in the returned list are instances of the Sys::Virt::DomainSnapshot class. The
$flags
parameter can be used to filter the list of return domain snapshots.
CONSTANTS
SNAPSHOT CREATION
The following constants are useful when creating snapshots
- Sys::Virt::DomainSnapshot::CREATE_CURRENT
-
Set the defined snapshot to be the current snapshot
- Sys::Virt::DomainSnapshot::CREATE_DISK_ONLY
-
Only snapshot the disk, not the memory state
- Sys::Virt::DomainSnapshot::CREATE_HALT
-
Stop the guest after creating the snapshot
- Sys::Virt::DomainSnapshot::CREATE_NO_METADATA
-
Do not save any metadata for the snapshot
- Sys::Virt::DomainSnapshot::CREATE_REDEFINE
-
Replace/set the metadata with the snapshot
- Sys::Virt::DomainSnapshot::CREATE_QUIESCE
-
Quiesce the guest disks while taking the snapshot
- Sys::Virt::DomainSnapshot::CREATE_REUSE_EXT
-
Reuse the existing snapshot data files (if any)
- Sys::Virt::DomainSnapshot::CREATE_ATOMIC
-
Create multiple disk snapshots atomically
- Sys::Virt::DomainSnapshot::CREATE_LIVE
-
Create snapshot while the guest is running
- Sys::Virt::DomainSnapshot::CREATE_VALIDATE
-
Validate the XML document against the schema
SNAPSHOT DELETION
The following constants are useful when deleting snapshots
- Sys::Virt::DomainSnapshot::DELETE_CHILDREN
-
Recursively delete any child snapshots
- Sys::Virt::DomainSnapshot::DELETE_CHILDREN_ONLY
-
Only delete the child snapshots
- Sys::Virt::DomainSnapshot::DELETE_METADATA_ONLY
-
Only delete the snapshot metadata
SNAPSHOT LIST
The following constants are useful when listing snapshots
- Sys::Virt::DomainSnapshot::LIST_METADATA
-
Only list snapshots which have metadata
- Sys::Virt::DomainSnapshot::LIST_ROOTS
-
Only list snapshots which are root nodes in the tree
- Sys::Virt::DomainSnapshot::LIST_DESCENDANTS
-
Only list snapshots which are descendants of the current snapshot
- Sys::Virt::DomainSnapshot::LIST_LEAVES
-
Only list leaf nodes in the snapshot tree
- Sys::Virt::DomainSnapshot::LIST_NO_LEAVES
-
Only list non-leaf nodes in the snapshot tree
- Sys::Virt::DomainSnapshot::LIST_NO_METADATA
-
Only list snapshots without metadata
- Sys::Virt::DomainSnapshot::LIST_ACTIVE
-
Only list snapshots taken while the guest was running
- Sys::Virt::DomainSnapshot::LIST_INACTIVE
-
Only list snapshots taken while the guest was inactive
- Sys::Virt::DomainSnapshot::LIST_EXTERNAL
-
Only list snapshots stored in external disk images
- Sys::Virt::DomainSnapshot::LIST_INTERNAL
-
Only list snapshots stored in internal disk images
- Sys::Virt::DomainSnapshot::LIST_DISK_ONLY
-
Only list snapshots taken while the guest was running, which did not include memory state.
- Sys::Virt::DomainSnapshot::LIST_TOPOLOGICAL
-
Sort list in topological order wrt to parent/child relationships.
SNAPSHOT REVERT
The following constants are useful when reverting snapshots
- Sys::Virt::DomainSnapshot::REVERT_PAUSED
-
Leave the guest CPUs paused after reverting to the snapshot state
- Sys::Virt::DomainSnapshot::REVERT_RUNNING
-
Start the guest CPUs after reverting to the snapshot state
- Sys::Virt::DomainSnapshot::REVERT_FORCE
-
Force the snapshot to revert, even if it is risky to do so
- Sys::Virt::DomainSnapshot::REVERT_RESET_NVRAM
-
Reset the firmware NVRAM state from its original template
AUTHORS
Daniel P. Berrange <berrange@redhat.com>
COPYRIGHT
Copyright (C) 2006 Red Hat Copyright (C) 2006-2007 Daniel P. Berrange
LICENSE
This program is free software; you can redistribute it and/or modify it under the terms of either the GNU General Public License as published by the Free Software Foundation (either version 2 of the License, or at your option any later version), or, the Artistic License, as specified in the Perl README file.
SEE ALSO
Sys::Virt, Sys::Virt::Error, http://libvirt.org