What is a Snapshot?
A snapshot preserves the state and data of a virtual machine
at a specific point in time.
State refers to the virtual machine’s
power state (for example, powered‐on, powered‐off, suspended).
Data includes all the files that make‐up
the virtual machine, including disks, memory, and other devices,
such as virtual network interface cards.
What a Snapshot is NOT
Snapshots are not backups. As the snapshot file is only a
change log of the original virtual disk, do not rely upon
it as a direct backup process.
Best Practices
To get the most out of Snapshots, several key objectives
should be followed to prevent other issues and maximize
Snapshot usage.
1) Snapshots are not backups.
Take the snapshot, make the changes to
the virtual machine, and delete/commit the snapshot as
soon as the proper working state of the virtual machine is
verified.
2) VMware recommends using only 2-3 snapshots in a chain.
An excessive number of snapshots in a
chain or snapshots large in size may cause decreased
virtual machine and host performance.
Creating large snapshot files can fill up
available storage space causing ALL VM’s on that device to
become inoperative until corrective action can take place.
In other words, a Snapshot on any
single host has the potential to impact all other hosted
VM’s on that storage device.
Snapshot files can become corrupt.
The size of a Snapshot disk has a
direct impact on the length of time it takes to delete the
snapshot associated to the VM.
3) Do NOT Snapshot the VM’s Memory.
The length of time the ESX host takes to
write the memory onto the disk is relative to the amount
of memory the virtual machine is configured to use. This can
add several minutes to the time it
takes to complete the operation, which can “STUN” the
machines performance.
Unless absolutely required to return the
VM to the exact memory state, uncheck the Memory
option. It is rare that the memory state is required.
4) Use no single snapshot for more than 24-72 hours.
Although 2-3 days is recommended, VaaS allows 5 days for a
snapshot to remain before is it automatically
removed.
This prevents snapshots from growing so
large as to cause issues when deleting/committing
them to the original virtual machine disks.
Take the snapshot, make the changes to the virtual machine,
and delete/commit the snapshot as
soon as the proper working state of the virtual machine is
verified.
Be
especially diligent with snapshot use on high-transaction virtual machines such
as email and
database servers. These snapshots can very quickly grow in
size, filling datastore space. Commit
snapshots on these virtual machines as soon as the proper
working state of the process being
testing is verified.
5) VM’s with multiple disks
If a virtual machine is running
off of a snapshot, it is making changes to a child or spare disk. The
more write operations made to this disk, the larger it
grows.
The space requirements of the child disk
are in addition to the parent disk on which it depends.
Child disks have been known to grow large
enough to fill an entire datastore.
VaaS utilizes a “No Snapshot” policy on
optional disks that are 100 GB or larger due to the
likelihood of filling up the Datastore and halting all
operations on VM’s that share the same
Datastore.
Additional disks that are 100GB or
greater will be set as “Independent.” This prevents snapshots
spilling over from the parent disk to the child.
Summary
A snapshot captures the entire state of the virtual machine
at the time it is taken. Snapshots are useful when it’s
necessary to revert repeatedly to the same state without
having to create multiple virtual machines.
A snapshot includes the following information:
Virtual machine settings
State of all the virtual machine’s
virtual disks
Contents of the virtual machine’s memory
(only if absolutely required).
If a particular VM has special requirements, please work
with the VaaS team to help facilitate the best course of
action. These are best practices and are meant to provide
the highest level of availability and performance to the
VaaS community and the end-user experience.
No comments:
Post a Comment