Scroll to navigation

Sys::Virt::DomainSnapshot(3pm) User Contributed Perl Documentation Sys::Virt::DomainSnapshot(3pm)

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

Return the name of the snapshot
Returns an XML document containing a complete description of the domain snapshot's configuration. The $flags parameter accepts the following constants
Include security sensitive information in the XML dump, such as passwords.
$domss->delete($flags)
Deletes this snapshot object & its data. The optional $flags parameter controls what should be deleted via the "Sys::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 the "Sys::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.
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

Set the defined snapshot to be the current snapshot
Only snapshot the disk, not the memory state
Stop the guest after creating the snapshot
Do not save any metadata for the snapshot
Replace/set the metadata with the snapshot
Quiesce the guest disks while taking the snapshot
Reuse the existing snapshot data files (if any)
Create multiple disk snapshots atomically
Create snapshot while the guest is running
Validate the XML document against the schema

SNAPSHOT DELETION

The following constants are useful when deleting snapshots

Recursively delete any child snapshots
Only delete the child snapshots
Only delete the snapshot metadata

SNAPSHOT LIST

The following constants are useful when listing snapshots

Only list snapshots which have metadata
Only list snapshots which are root nodes in the tree
Only list snapshots which are descendants of the current snapshot
Only list leaf nodes in the snapshot tree
Only list non-leaf nodes in the snapshot tree
Only list snapshots without metadata
Only list snapshots taken while the guest was running
Only list snapshots taken while the guest was inactive
Only list snapshots stored in external disk images
Only list snapshots stored in internal disk images
Only list snapshots taken while the guest was running, which did not include memory state.
Sort list in topological order wrt to parent/child relationships.

SNAPSHOT REVERT

The following constants are useful when reverting snapshots

Leave the guest CPUs paused after reverting to the snapshot state
Start the guest CPUs after reverting to the snapshot state
Force the snapshot to revert, even if it is risky to do so
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"

2022-11-20 perl v5.36.0