karthik_raajkum
Contributor
Contributor

What does this mean "use no snapshot for more than 24-72 hours"

Jump to solution

All,

We use snapshots for testing a lot. I am trying to justify the use of snapshots for our case. I have seen the best practices and understand the negative impacts of snapshots.

Best practices: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=102527...

The best practices says "Use no single snapshot for more than 24-72 hours. Snapshots should not be maintained over long periods of time for application or Virtual Machine version control purposes". My understanding of the above is that we do not run or keep the VM running or use it on a particular snapshot for more than 24-72 hours, and it is okay to create a snapshot and keep it for periods longer than 72 hours, so that we can revert to it. Is this correct?

For example, there are two snapshots in a VM at the same level not nested.

VM1

- TestSnapShot1

- TestSnapShot2

For testing purposes developers revert to either TestSnapShot1 or TestSnapShot2 and do their testing. Most of the time the VM is used for just a day or two in its current state, after which the VM is reverted again for testing. The snapshots themselves are retained a lot longer weeks/months.

Running the VM for more than 72 hours could result in more changes from the original and the delta disks increasing in size, reverting the VMs to the snapshot will reset the delta disk to the same size as it was when it was created. So it minimizes the delta disk growing out of control if we do not run it for long periods on a snapshot.

This is how we are currently using snapshots.

Is my understanding correct, or should we not even retain a snapshot for a long period of time.

thanks

--karthik

0 Kudos
1 Solution

Accepted Solutions
npadmani
Virtuoso
Virtuoso

what you are referring

"Use no single snapshot for more than 24-72 hours. Snapshots should not be maintained over long periods of time for application or Virtual Machine version control purposes"

is for Production VMs, that's where it's always better not too keep snapshots for longer period of time.

But the use case you are referring is different, for that purpose, Manage your snapshots the way you find it more suitable to your need.

Narendra Padmani VCIX6-DCV | VCIX7-CMA | VCI | TOGAF 9 Certified

View solution in original post

0 Kudos
5 Replies
npadmani
Virtuoso
Virtuoso

what you are referring

"Use no single snapshot for more than 24-72 hours. Snapshots should not be maintained over long periods of time for application or Virtual Machine version control purposes"

is for Production VMs, that's where it's always better not too keep snapshots for longer period of time.

But the use case you are referring is different, for that purpose, Manage your snapshots the way you find it more suitable to your need.

Narendra Padmani VCIX6-DCV | VCIX7-CMA | VCI | TOGAF 9 Certified

View solution in original post

0 Kudos
EmanuelAlamo
Enthusiast
Enthusiast

A see no problem on your vision. If you are controlling the disk growth and  virtual machine is only for testing.

Regards from Brazil, Emanuel Álamo ------------------------------------------------------------------------ VSP+VTSP+VCP-DCV+VCAP-DCA AirWatch Expert+NCDA+MCSA+MCSE ------------------------------------------------------------------------ https://br.linkedin.com/in/emanuel-álamo-diógenes-1a662b27/en
0 Kudos
digitalnomad
Enthusiast
Enthusiast

Yes this should work and since it sounds like development over production....go for it. The issue surfaces when your accumulated diff files go beyond 72 hours. The amount of Disk I/O and time it takes to commit changes increases substantially. If your using other snapshot based technologies for vmdk image backups, this can also increase the risk of orphaning the diff files or corrupting the vmdks.

Regards

DGN

0 Kudos
karthik_raajkum
Contributor
Contributor

Thanks for the responses everyone. I am marking the first one as correct. Thanks

0 Kudos
oz2edri
Contributor
Contributor

In the situation you described:

VM1

- TestSnapshot1

- TestSnapshot2

When you start creating a snapshot, and you're reverting to one of them, one of them is being set as the current state. (you can see the "You are here" placeholder)

To my understanding you'll never be able to revert to original state of VM1 after the snapshots were created. (so that the "You are here" placeholder will appear right under VM1, just as it is when there are no snapshots)

So what do you mean by:

For testing purposes developers revert to either TestSnapShot1 or TestSnapShot2 and do their testing. Most of the time the VM is used for just a day or two in its current state, after which the VM is reverted again for testing. The snapshots themselves are retained a lot longer weeks/months.

How is the "VM reverted again for testing"? To where it's reverted? Isn't it to one of the snapshots? If not - are you using some CLI command?

In other words, where is the "You are here" placeholder? Isn't it under one of the snapshots you described?


And if it is one of the snapshots or in another snapshot - is that specific snapshot shouldn't be used for more than 72 hours?

In that case what is that best practice recommendation even means? As soon as you started with snapshots you should move from one to another within 72 hours?


Confused... :smileyconfused:

0 Kudos