tag:blogger.com,1999:blog-6230024559279811901.post5847706811077175594..comments2023-08-28T14:37:10.715-07:00Comments on I.T. Proctology: Snapshotting in Hyper-V does not equal VMware checkpointing.BrianEhhttp://www.blogger.com/profile/09946552115562772058noreply@blogger.comBlogger18125tag:blogger.com,1999:blog-6230024559279811901.post-50933454391356087112013-12-04T15:17:58.411-08:002013-12-04T15:17:58.411-08:00Gotcha. And dang, what a timely response! Pretty a...Gotcha. And dang, what a timely response! Pretty awesome after all these years. I also found this article:<br />http://blogs.msdn.com/b/virtual_pc_guy/archive/2009/04/15/what-happens-when-i-delete-a-snapshot-hyper-v.aspx<br /><br />I think the most important thing it outlines is that if an older snapshot (lets say snapshot X) is deleted that has two or more dependent snapshots (Y and Z), it doesn't merge the X.avhd into *both* of its child snapshots because, as the writer puts it "could result in the whacky scenario where deleting a snapshot would fail because there was not enough space available." Instead, snapshot X would simply be removed from the GUI, its configuration files and I think any memory page files(?) are removed as well, but the X.avhd wouldn't go anywhere since later snapshots (Y and Z) are dependents upon it. That writer then notes, "if Snapshot [X] were deleted, and later on both Snapshots [Y] and [Z] were deleted – we would detect this and merge the AVHD for Snapshot [X] away as soon as possible."<br /><br />Phew. All in a day's work I guess. Thanks again Brian. I really appreciate your help and diligence. Cheers.<br /><br />Anonymoushttps://www.blogger.com/profile/15292757873159166866noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-3881108937807179622013-12-04T14:37:03.999-08:002013-12-04T14:37:03.999-08:00You are close.
If you delete C first (the last ta...You are close.<br /><br />If you delete C first (the last taken), you actually revert back to B. But I don't think that is your intent.<br /><br />Most commonly the older ones are deleted. Thus merging together. And the newer overlays the older when a merge happens.<br /><br />But this does not happen at a file level. It happens at a storage block level.<br />So, in reality the entire block on the older is removed and the block of the newer replaces it (if the block on the newer has changes).<br /><br />BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-20427735553485238662013-12-04T14:02:25.477-08:002013-12-04T14:02:25.477-08:00First off, thanks for all of your help with this s...First off, thanks for all of your help with this stuff Brian. I've seen a couple of your other related articles. You've definitely provided some much needed clarification. For the sake of myself and others who will read this thread in the future, would you mind clarifying the following illustration?<br /><br />So...let's say...3 snapshots (which are each represented by new .avhd (differencing) disks) are deleted and merged back onto the root VHD...<br /><br />---------------------------------------------<br />Step 0<br />---------------------------------------------<br />root.vhd -> A.avhd -> B.avhd -> C.avhd<br /><br />--------------------------------------------<br />Step 1<br />--------------------------------------------<br />- Delete C snapshot (NOW)<br />- C.avhd's differences are merged onto B.avhd <br />(files C1 => B1, C2 => B2, and C3 => B3) <br /><br />RESULT:<br />root.vhd -> A.avhd -> Bc.avhd** <br />** B.avhd now contains C's changes, so we'll call it Bc.avhd<br /><br /><br />---------------------------------------------<br />Step 2<br />---------------------------------------------<br />- Delete B snapshot <br />* Bc.avhd's differences already contain the changes from the old C.avhd.<br />* Now, Bc.vhd's files overwrite the corresponding A.avhd files.<br />(files Bc1 => A1, Bc2 => A2, Bc3 => A3)<br /><br />RESULT:<br />root.vhd -> Abc.avhd**<br />** Abc.avhd contains Bc's changes, so we'll call it Abc.avhd<br /><br /><br />---------------------------------------------<br />Step 3<br />---------------------------------------------<br />- Delete A snapshot<br />* The combined changes from C onto B onto A are now merged onto root.<br />(files Abc1 => root1, Abc2 => root2, Abc3 => root3)<br /><br />RESULT:<br />[root]abc.vhd<br />- you now have 1 root VHD which has merged all of the changes.<br /><br /><br />...Right?<br />Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-7455956833701145762011-07-06T13:34:22.976-07:002011-07-06T13:34:22.976-07:00This is a good question and I am attempting to rem...This is a good question and I am attempting to remember.<br /><br />If I recall correctly the merging happens to the 'future' or to the right in the tree. The future wins. Technically it isn't to the right or left, it is to a new disk that then replaces the one right in the tree.<br /><br />The differencing disks that get merged into a new differencing disk follow the rule that the newest disk block overwrites the older disk block - thus keeping the "newest" version of the timeline.<br /><br />It is only in the case of of one VHD and one snapshot that you might think it merges left (back to the VHD) but it actually merges right (to a new VHD).<br /><br />It is easier to think of left as back in time and right as forward in time - as differencing disks are all about moments in time. That is really how it works when you put all the moving parts together.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-38863552414777577302011-07-06T11:41:11.069-07:002011-07-06T11:41:11.069-07:00Excellent post. Quick question - in a multi-snaps...Excellent post. Quick question - in a multi-snapshot scenario, when deleting a snapshot, does the data get merged to the left or the right in the chain?Jamesnoreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-37534528177243473362011-06-07T06:23:43.952-07:002011-06-07T06:23:43.952-07:00first of all. You had commented "snapshottin...first of all. You had commented "snapshotting every night". I have to ask: "Why?"<br />Snapshots in the Hyper-V world are not copies, they are links in a chain over time. Each one dependent on the previous.<br />Unless your process is going to delte the snapshot, power off hte VM, wait for the merge, and then power on again I would seriously consider re-thinking your strategy and the reason why.<br /><br />To merge, the manual process is only a recovery process. The system handles it all, but the VM must be powered off for the merge to happen.<br /><br />I have written many posts about snapshots. About the mechanics and the problems that folks have gotten themselves in to.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-20578746823863899452011-06-03T10:12:57.368-07:002011-06-03T10:12:57.368-07:00Hey Brian,
First of all, thank you for your ex...Hey Brian,<br /><br /> First of all, thank you for your exhaustive explanation about snapshots. It has helped me to understand that Hyper-V is tough to understand as a new brain in the I.T. world. I have been put over a server build that we originally hired someone else to build and i was simply going to maintain but he has since pretty much vanished after being paid, so the baton has moved to me. <br />I want to make sure I am understanding correctly. I have 3 virtual servers spread out on 2 1TB HD's... I was looking at the AVHD files that are created and their file sizes... The VHD file size is the big one but the AVHD files are def nothing to be ignored since we will be needing to take a snapshot of each server every night. Will these AVHD files just continue to build and take up HD space unless they are manually deleted and merged with their Parents?? This seems like a pretty ridiculous way of doing things since that means the servers will have to be taken offline and users will not be able to access our web sites or anything. Is there anyway to automate this process? We have thousands of employees all over the world so downtime has a big impact. Thanks again so much for your insight!Jordanhttp://jordanyork.comnoreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-75140768039752152932011-02-08T14:09:47.327-08:002011-02-08T14:09:47.327-08:00That would result in a new VM - which defeats usin...That would result in a new VM - which defeats using snapshots in the first place.<br /><br />Unless you have simply gotten yourself into a situation where "now" is what you want and you don't care about snapshots.<br /><br />Also, it leaves the snapshots in place which can greatly increase storage use.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-24446440956426148752011-02-08T12:29:30.950-08:002011-02-08T12:29:30.950-08:00I found that running a copy of disk2vhd on your li...I found that running a copy of disk2vhd on your live server and exporting the resulting VHD to an external host results in less down time and gets you around the time consuming and nerve wreaking wait for merge process...Unknownhttps://www.blogger.com/profile/11556720482193277327noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-20429563505237616332009-04-08T16:25:00.000-07:002009-04-08T16:25:00.000-07:00Thanks for the explanations of the HyperV Snapshot...Thanks for the explanations of the HyperV Snapshots. <BR/><BR/>Deleting a Snapshot in order to merge it back to my main VHD has to be the most unintuitive and scary operation I have done recently in a software app.<BR/><BR/>It seems that if only they would add a "Merge..." menu option when you right click on the snapshots that would be a vastly superior option than having us delete a snapshot and pray that we aren't making a mistake.<BR/><BR/>Thanks for explaining the process.Steve Endowhttps://www.blogger.com/profile/03950475674093020502noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-47189079056431552302009-02-26T08:33:00.000-08:002009-02-26T08:33:00.000-08:00You can delete as few or as many as you wish at an...You can delete as few or as many as you wish at any one time.<BR/>Hyper-V will systematically merge them together one disk at a time, until all the deleted snapshots have been merged.<BR/>Also, you can power-down the VM prior to deleting snapshots as well. In this case the process generally begins sooner (less delay to detect that the VM has been shut down).BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-38319642239662748672009-02-25T22:57:00.000-08:002009-02-25T22:57:00.000-08:00Hi BrianUnder the Snapshots panel I have :Snapshot...Hi Brian<BR/><BR/>Under the Snapshots panel I have :<BR/><BR/>Snapshot 1<BR/> Snapshot 2<BR/> Snapshot 3<BR/> Now<BR/><BR/>Do I delete Snapshot 1 and then turn off and wait for the merge to complete and then do the same for the other snapshots ?<BR/><BR/>Or Do I delete Snapshot 1 then Snapshot 2, then Snapshot 3 then turn off the virtual and the merge will commence ?<BR/><BR/>What happens with the Now ?<BR/><BR/>thanks.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-68797586503609950512009-02-25T19:00:00.000-08:002009-02-25T19:00:00.000-08:00Revert will put you backward in timeDelete will ca...Revert will put you backward in time<BR/>Delete will cause a merge<BR/>Deleting all snapshots will cause a merge that leaves a single vhd<BR/>And,you already know that the VM must be powered down for any merge to happen.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-60441761518817931852009-02-25T17:33:00.000-08:002009-02-25T17:33:00.000-08:00Hi BrianI'm new to this Hyper-V virtual server env...Hi Brian<BR/><BR/>I'm new to this Hyper-V virtual server environment and would really appreciate if you could answer this for me.<BR/><BR/>I have a running virtual server and have taken 4 snapshots, mainly taken before applying MS patches.<BR/><BR/>I want to keep the server how it is now but also cleanup the snapshots.<BR/><BR/>So, do I delete the very first snapshot (that is the oldest) and then power the virtual off so that it then merges all of the snapshots back into the base VHD ?<BR/><BR/>Basically I want to keep the server and all current data as at NOW.<BR/><BR/>So from what I understand I don't apply the snapshot as it will take me back in time and all the NOW data will be lost. So my only option is the delete and merge and hope ?<BR/><BR/>Thanks for your time.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-92098297683208600242008-11-18T07:56:00.000-08:002008-11-18T07:56:00.000-08:00I know exactly what you mean. However, I-405 does...I know exactly what you mean. However, I-405 does not have a differencing disk.<BR/><BR/>If you considered I-405 the differencing disk to I-5 then the traffic (disk I/O in this case) gets spread between the two files.<BR/><BR/>Deleting I-405 would cause the data bits (the traffic) to be merged into I-5.<BR/><BR/>Yes, it would cause mass panic and gridlock (bad example from that point).<BR/><BR/>Lets just put it this way..<BR/><BR/>Differencing disks have been around in virtualization for years. ESX used to support it back in the stone ages when I first started with it, then VMware dropped it (except the case of the nonpersistant disk - the undo disk - this is still a differencing disk that is thrown away after each reboot).<BR/><BR/>Why? Most likely because of the confusion we have here.<BR/><BR/>Eventhough, VMware has differencing disks back under the covers of Workstation - more so under 6.5 - however the implementation is a bit different.<BR/><BR/>MSFT has had differencing disks as part of VHD from the beginning.<BR/><BR/>How will this smell and change as we move forward, hard to say.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-51476577983251383402008-11-17T22:24:00.000-08:002008-11-17T22:24:00.000-08:00I have to say I agree with the previous comment, i...I have to say I agree with the previous comment, its sheer madness. but also snapshot deleting does do just what brian says it merges the differencing data to the .vhd. Semantics seems to be the missing link for MS engineers. does anyone explain things the way they do? I suppose the answer is only other engineers.<BR/>I guess on the way to work I will now delete into traffic on I-405, and merge files on my computer that I don't need anymore.<BR/><BR/>you know what I mean right? ;)Joelhttps://www.blogger.com/profile/18393407777891148083noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-1913487526611742942008-07-15T11:25:00.000-07:002008-07-15T11:25:00.000-07:00A couple suggestions.Take a look at the other snap...A couple suggestions.<BR/>Take a look at the other snapshot posts that I have.<BR/>Play around.<BR/><BR/>Both will give me a chance to put something better together.<BR/><BR/>The keys are: Differencing Disks. The level within your tree that you perform a snapshot management action. And then what happens in the background.<BR/><BR/>This is one reason why SCVMM only presents take and revert - far less confusing.BrianEhhttps://www.blogger.com/profile/09946552115562772058noreply@blogger.comtag:blogger.com,1999:blog-6230024559279811901.post-50561205114435340062008-07-13T00:04:00.000-07:002008-07-13T00:04:00.000-07:00Brian,The way "snapshots" are implemented in Hyper...Brian,<BR/><BR/>The way "snapshots" are implemented in Hyper-V makes no sense ot me at all. Consider what you wrote:<BR/><BR/> "Delete a snapshot and its subtree. This process deletes a snapshot and any other snapshots that are to the right of it in the timeline. (This makes sense to me)<BR/><BR/>**** The result is just that any snapshots taken to the right of the point in your timeline that you elected to perform this operation are all committed and merged into your current snapshot."<BR/><BR/>The part after the "****" strikes me as maddness. It seems to say that deleting a snapshot and its subtree causes all snapshots to the right (in time) of the deleted snapshot to be merged into the current snapshot. To me delete means NOT included -- nothing is merged back into anything.Anonymousnoreply@blogger.com