How Many Components Are Present In Hyper-v Integration Services?
Do you manage Hyper-V backup? Do you build backup solutions for Hyper-V? If so, then this article is a "must-read" for you lot, because Hyper-5 fill-in is completely reinvented in Windows Server 2016 and subsequently release.
In this article, we will walk you through what'due south being the history and the journey of Hyper-V backup since the Virtual PC and Virtual Server days, then we swoop into the new innovations that started in Windows Server 2016 Hyper-5 and later, and then past the end of this article, yous will have a better understanding of how Hyper-V backup has been evolved over the years.
Virtual PC and Virtual Server
In 2004 Microsoft released the original Microsoft Virtual Server 2005, if y'all ever realized that Virtual Server 2005 didn't back up clustering, no support for checkpoints, no back up for backup at all, and was a 64-bit host but 32-bit guest simply.
At that time, Microsoft started working on the follow-upwards release which is Virtual Server 2005 R2, and halfway through, the leaders at Microsoft started contemplating building a make new hypervisor Windows-based virtualization solution. There were intense architectural meetings, long discussions on finding a code name for the project, and somewhen, Hyper-V was born.
In 2005, the DPM team started working with the Virtual Server applied science team to come upwardly with the outset implementation of agentless backup for virtual machines based on Virtual Server 2005 R2, at that time, the average organisation that was available in the market was 1 processor, dual-core arrangement, and can run up to 6/7 virtual machines.
The average deployment was three to iv virtual machines. The original implementation of backup on Virtual Server 2005 R2 was done while the Hyper-Five team was busy getting Hyper-V upwards and running, then Hyper-V technical preview was released and customers started request where is the fill-in back up?
The Hyper-5 team took the backup architecture that was built for Virtual Server 2005 R2 and they did the same for Hyper-5 V1.
Windows Server 2008 R2 and 2012 Hyper-5
In society to understand how backup initially started in Hyper-V, nosotros will explain the basics of Volume Shadow Copy Service (VSS) concepts.
Volume Shadow Copy Service (VSS) provides the organization infrastructure for running VSS applications on Windows-based systems:
1) The VSS requester is whatever application that uses the VSS API to request the services of the Volume Shadow Copy Service to create and manage shadow copies and shadow re-create sets of 1 or more than volumes.
two) The VSS Writers are applications (Hyper-V) or services that store persistent information in files on disk and that provide the names and locations of these files to requesters past using the shadow copy interface.
3) The VSS Providers manage running volumes and create shadow copies of them on need (storage).
What VSS does in the background is the following:
> Coordinates activities of providers, writers, and requesters in the creation and use of shadow copies.
> Furnishes the default arrangement provider.
> Implements low-level driver functionality necessary for whatsoever provider to piece of work.
Now in the concrete calculator, you have a backup application that comes in as VSS requester goes to the VSS system and request a fill-in of the organization, VSS then goes and talk to all the writers on the system which are the various server applications they are installed including Windows components and tell them to get ready for backup, one time they are ready for fill-in, and so VSS goes and talk to the provider from the storage infrastructure and instruct to take a backup, and finally, that goes back to the original VSS requester (backup awarding), that is the bones workflow in the physical world.
This becomes actually catchy once you go virtual machines into the picture considering now yous take multiple operating systems inside of operating systems.
And so in Virtual Server 2005 R2 and in Windows Server 2008 R2 / 2012 Hyper-V, the backup workflow looks similar as shown in Figure 1 beneath.
As you can see, nosotros have the Hyper-V Host at the bottom, the Fill-in App comes and instruct to accept a fill-in of the system place, the Backup App talks to VSS, then VSS detect there is a Writer on the system for virtualization in this case Virtual Server or Hyper-V, and so VSS request Hyper-V can you get set for backup?
Then Hyper-V uses the Integration Components and it reaches into the invitee OS, in the guest we have VSS for Hyper-V Integration Components which is actually you can think of it every bit a lightweight Backup App, then VSS for Hyper-V Integration Components (IC) talks to VSS within the guest and asking to accept a fill-in of the system identify, then VSS goes and talks to all the various Writers inside the guest and request to become fix for backup when it'south done it returns dorsum to VSS Hyper-V IC and says, tin can you lot take a system Guest Snapshot place? then VSS comes back and confirms, I am done.
Next, the VSS Hyper-V Integration Components within the guest talks to the Hyper-Five Writer on the host and confirm it's done, the Hyper-V Writer then talks to VSS and says I am washed too, and then the VSS on the host either employ a Software Snapshot or if y'all have a VSS provider for a SAN it will use a Hardware Snapshot, at this stage a Concrete Backup will accept place.
What we have at this stage whether we are using a Software provider or Hardware provider, in the backup prepare nosotros accept a collection of VHDs each of which has its own snapshot, the terminal footstep is called fill-in/automobile-recovery where they take the organisation snapshot and find all the VHDs that are stored in the drove, they took those VHDs and they mount them dorsum into the Host operating system equally disks, and lastly, they employ VSS on the host to roll back to the Guest Snapshot that was taken. This allows getting a clean snapshot.
This was the compages used in Virtual Server 2005 R2, Windows Server 2008 R2, and Windows Server 2012. The beginning issue with this architecture is not scalable, basically, this architecture worked reasonably well as long as y'all take a pocket-size number of virtual machines.
The 2nd issue though was actually the mount/revert operation of the VHDs at the end of the backup process, every bit yous calibration upwardly the number of virtual machines, the backup operation will become exponentially longer, because of all the plug and play mounting drives at the backend and whorl them back each and every fourth dimension, this became a very expensive and heavy performance.
Windows Server 2012 R2 Hyper-V
In Windows Server 2012 R2, Microsoft fabricated a substantial change to the architecture where they had two master goals, the first goal was to set the scene for Shielded virtual machines, and the 2d goal was to increment the reliability of backup.
In Windows Server 2012 R2 Hyper-V, the backup workflow looks like as shown in Figure 2 beneath.
As you tin see, we have the Hyper-Five Host at the bottom line, the Fill-in App comes and instruct to accept a backup of the system place, the Backup App talks to VSS, then VSS notice there is a Author on the arrangement for virtualization, in this case, Hyper-V, then VSS inquire Hyper-5 can yous go ready for backup?
And then Hyper-V uses the Integration Components and it reaches into the guest Bone, in the guest we take VSS for Hyper-5 Integration Components, then VSS for Hyper-V IC talks to VSS inside the guest and ask to take a backup of the system place, then VSS goes and talks to all the various Writers within the guest and says get set up for backup.
Now hither things get different, if we compare Figure 1 vs Effigy ii, in Windows Server 2012 R2, Microsoft implemented the Hyper-Five VSS Provider, which made the virtual hard disks expect like they supported hardware snapshot.
The VSS within the invitee become the system prepare and sends the snapshot request downwardly, then this request gets to the storage stack where a .avhdx get created, this is exactly at the moment when the guest snapped, then VSS on the host confirm information technology'southward done, and then information technology does a host snapshot, this host snapped at present includes the (.VHDX / .avhdx), where the VHDX is the information consistent point.
In this new architecture, the whole mount/auto-revert operation gets removed which increases the scalability and reliability of the unabridged backup process.
The get-go interesting challenge with this architecture is when VSS on the Host calls the Hyper-V Author and asks to go the metadata file at the beginning of the backup operation (metadata file is basically a hulk of all the bits that yous should backup) because those files practise non exist all the same on the other side. The workaround was to generate VHDX GUIDs at an early stage and ship them to the other side in order to make sure the file names are line upward.
The big modify here is that the action of reverting the virtual difficult deejay to the data consequent VSS snapshot now takes place inside the virtual machine instead of in the host operating system as they did in Hyper-V 2008 R2 and 2012 (mount/car-recovery). This has many benefits, ane of which is that it scales excellently! It does, however, take one (minor) drawback. In gild for this method to work – Hyper-V needs to be able to hot/add and remove virtual hard disks to and from the virtual machine. And this is something that is only supported on the SCSI controller (non in the IDE controller).
If y'all have noticed when you lot create a virtual machine in Hyper-5 Managing director, in Organisation Center Virtual Machine Manager, in Windows Admin Center, or in PowerShell, Hyper-5 e'er created virtual machines with a SCSI controller connected (even if in that location were no disks attached).
However, if you accept manually removed all SCSI controllers from a virtual automobile – Hyper-V fill-in will now fail on that virtual machine, then if you take a PowerShell script that removes all SCSI controllers for Gen 1 VMs, so make sure to add together at least 1 SCSI controller.
The second challenge is if y'all are running a Hyper-V Cluster with lots of Virtual Machines, in Windows Server 2012 R2 there are two particular problems, the outset one is still an architecture problem of scale considering in VSS architecture today there is no fashion to backup virtual machines without triggering a snapshot of your underlying storage!
If you consider this scenario and accept 8 nodes Hyper-V Cluster that has 800 virtual machines on it, and when y'all trigger a backup of all VMs, then Hyper-V will generate 800 snapshots on your storage backend, so you tin can imagine what will happen with your storage one time you first hammering them like that… The workaround was to reduce the number of backup batches that fill-in vendors have implemented.
The second problem that was raised is around clustering too because we have another layer that added complexity is the Clustered Shared Book (CSV) which involved all levels of coordination to make sure that the node that is taking the snapshot is the owner node of that CSV and tin can practice all the coordination around that. Therefore Microsoft released a lot of hotfixes for Windows Server 2012 R2-based failover clusters to make this possible.
Evolving Hyper-V Fill-in
In Windows Server 2016 Hyper-V and later releases, the architecture is completely inverse, Microsoft made pretty significant changes to the backup architecture.
What they did actually, took the middle piece of the Backup compages from Windows Server 2012 R2 and completely decoupled it from the residue of the organization. They gave Hyper-V the support so that anyone (backup partners) can call into Hyper-V WMI and ask for a VSS snapshot of this virtual machine, and and then information technology volition go through and do the whole backup process independently.
So in Windows Server 2016 Hyper-V and later release, the backup workflow looks like as shown in Figure 3 below.
As y'all can see, we have the Hyper-Five Host at the bottom line, the Backup App will first call into Hyper-V WMI to become all virtual machines that they want in whatsoever fill-in set up ready for fill-in, and then the Backup App will call into VSS/VDS to orchestrate a unmarried hardware snapshot on the storage backend, the goal hither is to become to a model where no matter how many virtual machines, and no affair what scale betoken are yous running.
Then if yous compare the backup workflow in previous releases, in that location are two snapshots happening, there is the VMs snapshot and the underlying hardware snapshot, and those two operations are very tight together, so you cannot exercise one without doing the other.
Withal, in Windows Server 2016 the Backup App tin take as long every bit it requires to get the set of virtual machines with data consistency, and then practice the hardware snapshot as a separate operation, that the key architectural modify in Hyper-V 2016.
The 2d comeback that Microsoft worked on is a new set of technology called Resilient Change Tracking (RCT), the goal of RCT is ii, the first 1 is in all the previous architectures (Figure 1 and Figure 2) the results was a total fill-in of the virtual hard drives of the virtual machines, what this means is that every time you practice a backup (daily, hourly or any), the information is sent over the network each and every time and that compages wouldn't scale.
In order to avoid sending all the information over the network, in Windows Server 2008 R2 up to Windows Server 2012 R2 every backup partner has implemented a file arrangement filter so they can runway the change blocks on the storage, simply having a third-party file system filter in the kernel host Os is a potential system crashing bug, and the second issue though, it will affect the storage performance profiling.
And then what Microsoft did in Windows Server 2016 was, they built a system where you don't take to put whatever file system filter anymore, this was the offset motivation, the 2nd motivation though was in the new architecture equally shown in Figure 3 higher up, where the Backup App calls in to snapshot the VMs independently and and then take a hardware snapshot as a split operation, because in all the previous architectures at that place is an extended period of time where virtual machines will be running on a (.avhdx) files or differencing files, and Microsoft wants to mitigate the functioning impact of doing that.
In Windows Server 2016 and later release, Microsoft provided a native change block tracking as part of the platform at present. With RCT, they were able to get the block resource allotment tabular array that exists in every VHDX file and lets you know what cake is changed, but they don't write downwards the data, considering, with the Backup App, you accept a copy of the original data somewhere else, thus will avoid copying the data twice. The slap-up thing about RCT infrastructure, it's tight to the VHDX file, so wherever the file exists, information technology will stay with it, which is very flexible when information technology comes to all VM mobility scenarios.
As a side note, ii important points to be aware of, if you lot will be running virtual machines with VHDs in Windows Server 2016 instead of VHDX (delight use VHDX), or if your virtual machine is still at version five.0, yous volition not have the benefit of RCT support, considering a virtual machine with version 5.0 might be taken to a host running Windows Server 2012 R2, and 2012 R2 doesn't understand RCT, and then if you are in either of those situations, you lot volition hit a performance touch during the fill-in process, considering Microsoft will non use RCT in this case, and will employ differencing disk instead (one-time fashion).
Microsoft will also back up fill-in for guest clusters (groups of virtual machines with shared virtual hard disks) using the RCT infrastructure, but in order to do that Microsoft introduced a new file format called VHDS (VHD Set), the VHDS is a very small-scale file that has a bunch of (.avhdx) files along with it as shown in Figure 4 below.
With the introduction of the VHD Set file, Microsoft can accept advantage of the storage snapshot and then lazily update the virtual auto configurations in order to reference the correct affair. The VHDS file is a reference/pointer file and includes checkpoint metadata. No user data is stored in the VHDS file.
You can think of the VHDS as an external shared configuration file between the virtual machines (invitee clusters), considering in Windows Server 2012 R2, if y'all have two virtual machines using the Shared VHDX file, then each VM has its own configuration file which makes a existent problem well-nigh metadata update and re-synch all the changes, however in Windows Server 2016 and later release, if yous have two virtual machines with their own configuration but depending on Shared VHDS file which is essentially a configuration file that allows us to have one place to update when there are changes to the underlying storage.
The VHD Set file enables solving the issues associated with coordinated updates to all the VM's configurations by centralizing the VHD file paths in the single VHD Set up file.
The VHD Set file also provides a stable file name to utilize in the UI or PowerShell. This VHD Set file tin exist used like any other VHD file; information technology can be queried, migrated, and mounted. The master reason for VHDS is to take back up for checkpoints on guest clusters.
Conclusion
If y'all manage Hyper-V backup and know the new innovations being enabled in Windows Server 2016 and later for backup applications, which volition enable you to make informed decisions on architectures, solutions, and backups.
Many Thanks to Mr. Hyper-V, Ben Armstrong (Grouping Program Manager of the AKS on-bounds team at Microsoft) for this information.
Nosotros hope this deep dive commodity has been informative for y'all and we would like to thanks for reading!
Make certain to bank check my recent Windows Server Hyper-V Cookbook for in-depth details virtually Hyper-V!
__
Cheers for reading my weblog.
If you accept whatsoever questions or feedback, please leave a comment.
-Charbel Nemnom-
Related Posts
Source: https://charbelnemnom.com/improved-hyper-v-backup/
Posted by: andinoalearand.blogspot.com
0 Response to "How Many Components Are Present In Hyper-v Integration Services?"
Post a Comment