72141b7fab
Upgrades yamllint to latest version and adots use of its strict checking. Fix all known problems reported by yamllint so we don't have to do that while touching these files. Change-Id: I4bdc520d9e2aff086c4b463718bc1e053261a4f5 Story: https://tree.taiga.io/project/tripleo-ci-board/task/381 |
||
---|---|---|
.. | ||
defaults | ||
tasks | ||
README.md |
snapshot-libvirt
An Ansible role for snapshotting a libvirt environment using external snapshots with backing files.
The role will shutdown all of the VMs specified in the overcloud_nodes list, then proceed with either creating or restoring a previous snapshot depending on the settings for snapshot_create and snapshot_restore. The default is to do nothing since both of these operations are potentially destructive.
When run with snapshot_create=true, the role will check if there is already a backing file. If one exists, it will commit all new changes to that backing file. If there is not already a backing file, the role will create one, and make an empty snapshot pointing to it.
When run with snapshot_restore=true, the role will delete the current snapshot and create an empty snapshot pointing to the backing file.
Limitations
- This role does not currently support any "management" of snapshots, i.e. there is only one maintained.
- The role uses qemu-img directly to create the snapshots, this means
the snapshots will not show up with commands like
virsh-snapshot
- The role does not currently implement any method to remove the backing files. This means when starting over from scratch, these *.bak files will need to be manually deleted (if reusing the same libvirt_volume_path).
Example Usage
---
- name: Create a snapshot (or update a snapshot)
hosts: virthost
gather_facts: true
vars:
- snapshot_create: true
- libvirt_volume_path: /opt/vm_images
- libvirt_uri: qemu:///system
- overcloud_nodes:
- name: subnode-0
- name: subnode-1
roles:
- snapshot-libvirt
become: true
- name: Restore a snapshot
hosts: virthost
gather_facts: true
vars:
- snapshot_restore: true
- libvirt_volume_path: /opt/vm_images
- libvirt_uri: qemu:///system
- overcloud_nodes:
- name: subnode-0
- name: subnode-1
roles:
- snapshot-libvirt
become: true
License
Apache