November 16, 2021
Datto Windows Agent 3.0: The Next Generation of Windows Backup
We are proud to announce the release of a new version of the Datto Windows Agent. DWA 3.0.3 is live and available on downloads.datto.com. So, what has changed in this new version?
DWA 3.0 utilises a modern driver architecture that simplifies our design and enables a variety of new and exciting features. Below is a summary of these improvements:
- We have built a stronger relationship with VSS (Volume Shadow Copy Service) which is critical to ensuring operating system stability.
- Our driver stack is simplified leading to less risk when upgrading.
- DWA 3.0 can now operate without a driver installed/loaded, but can only perform differential merge backups in this case.
- DWA 3.0 has an additional fallback mechanism to take a backup with no VSS writers involved, this backup would be crash consistent.
- We no longer require a CoW (Copy on Write) file for each volume to track changes—a mechanism with the ability to make snapshots of open files—saving your drive space, eliminating the need for a minimum of 10 Gb or 10% of free space on each protected volume.
Explanation of VSS relationship and simplification
Our most used production version of DWA (2.8) includes four drivers which are needed to snapshot data at the block level for all protected volumes and ensure application-level consistency for files that might be in use. One driver for the volume enumeration, one to manage our CoW file, a Snapshot driver, and one driver which orchestrates communication between DWA and Windows via Microsoft’s VSS (Volume Shadow Copy Service). These drivers run in kernel mode, which makes updates difficult, and always requires a reboot.
Version 18.104.22.168 is in the process of auto-update to 2.8 to prepare for a future auto-update to DWA 3.0 over time.
VSS and CoW relationship
DWA 3.0 changes how the agent interacts with the operating system dramatically. Our simplified approach means DWA only has to handle changed block tracking. DWA no longer needs to create and manage a CoW file instead, application awareness is left to Microsoft’s VSS. This is the preferred design by the industry and by Microsoft. This improvement means we are no longer running in Kernel-mode, and instead are running in a User-mode relationship.
As previously mentioned, the snapshot mechanism will rely more on Microsoft VSS. As a matter of fact, we will reside between VSS (VolSnap) and filesystem (NTFS), which makes this an upper-level driver. Ultimately, VSS has CoW functionality built-in, so we do not need to duplicate this functionality anymore.
What are the benefits from a technical perspective?
With a simplified single-driver design, updates are less complex and have fewer required reboots. A backup is possible upon initial install without a reboot, for instance, in this state DWA is in a differential backup only mode. After initial reboot, normal incremental tracking will resume the single driver loaded. We intend this driver to be far more stable. Much of our code can now run in User-mode, meaning it can be unloaded, replaced, and loaded again with ease.
The biggest benefit is that the CoW file will no longer exist. With the current Datto Windows Agent (2.7.1 and before) we require a file of 10GB (or 10% of the free space of the volume whichever comes first) per protected volume. But with 10GB per protected volume, this is a burden in large environments. With Datto Windows Agent 3.0 we no longer require this CoW file and open files are handled by Microsoft’s VSS services. Microsoft’s mechanism is reliable and resilient and fully trusted by the industry for application-aware backups.
How to install and use the benefits of the new Datto Windows Agent?
There are several Agent-versions mentioned in this article and depending on the version, the behavior is different, just like the steps to get to version 3.0. To be able to use these benefits, follow the upgrade paths below:
- If agent 22.214.171.124 is installed, it will be automatically updated to version 2.8. This does not require any action from your end. Backups will continue to be made in the way that is normal for the 2.7.x agent. It does however require a reboot to get to 2.8.
- If agent 2.8 is installed, your agent will be able to auto-update over time. For now, those Agents on 2.8 will remain 2.8. Major updates to 3.0 are not forced upon you. This will however ask for a reboot once 3.0 is installed; it needs to unload the old driver stack.
- If agent 3.0 needs to be installed, it will need a reboot if 2.8 or older is installed. This is needed to unload the old drivers and load the new ones. If the reboot can not take place (yet) the old drivers are still loaded and will still make backups in the way the 2.x Agent used to make them. The CoW file will still be used. With the reboot, the old drivers will be removed and the new drivers will be registered.
- If you have the ShadowSnap agent installed, the upgrade path requires two installations. This is covered in a help article found here.
Backup and restore
Backups with the old or the new agent do not greatly differ. The difference is on a driver level. There can be scenarios, however, where a restore may be needed a moment prior to the DWA 3.0 update. Please keep in mind that in those situations, your roll-back is to an older agent and will need to be updated back to 3.0 and to trigger a Differential Merge on the BCDR unit for that Agent. Typically, these backups are larger in size and take more time to finalise. And will trigger another large sync to our cloud.
We are always listening to the market and want to deliver more functionality to our agent in the future. This means we have already facilitated some exciting new features that are still under development.