What are the Files and Folders Behind Hyper-V 2016 VMs (Part 1)

The next few blogs posts come from a recent article that I wrote for SearchServerVirtualization.com.  Here are some of the excerpts from that article that focus on the files and folders of Hyper-V in 2016

There are plenty of articles about how to use many of the features of Hyper-V in Windows Server 2016, but this articles will give you a deeper look at what is behind some of these features. What is really going on? How does it all work? Sometimes it is something very simple, other times it is a chain of complex steps that give you a view into some of the brilliance of the developers that make it all work. In this article, we are going to look at the Files and Folders that make up a VM, knowing how to locate them, and what function they perform, which will give you a great start at troubleshooting problems if they arise.

Where do these files live?

For standalone hosts, the default files are found in two different locations.

Configuration files: C:\ProgramData\Microsoft\Windows\Hyper-V

Virtual Hard Disk Files: C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks

For clustered hosts, VM files are located in a different default location. Whereas you can separate VM files into different directories or even volumes, usually these are all stored in the same VM directory with subdirectories under that. In most cases, clusters use a type of shared storage called Cluster Shared Volumes (CSV) volumes where VMs live and all nodes of the cluster have access to. Two common methods of creating this type of storage is to have some sort of SAN storage connected by Fiber, ISCSI, SMB etc… or using Storage Spaces Direct (S2D).

When using CSVs for your shared cluster storage, a mount point off of the C:\ drive is created on each node of the cluster that links to each of the CSV volumes. These will be located at:

C:\ClusterStorage\Volume1

C:\ClusterStorage\Volume2

Virtual Hard Disk folder: VHD, VHDX, AVHD, AVHDX, RTC, and MRT files

clip_image002

  • Virtual hard disk files: These come in to different varieties .VHD or .VHDX. VHD is the older version of Microsoft’s virtual hard disk and has been around since the Virtual Server 2005 days. VHDX files have been around since Windows Server 2012 timeframe and provide better performance and fault tolerance. These are your hard drives of you VMs and contain all of the individual files, Operating system etc… You can also mount these files directly with Disk Management in Windows 7 and above and browse or change the content.
  • Automatic virtual hard disk: .AVHD or .AVHDX are differencing files where all newly written data is stored after a Checkpoint is created either by the administrator or as a result of backup procedure.
  • Resilient Change Tracking: .RCT files are a new addition to Windows Sever 2016 Hyper-V. That allows the tracking of changes between backup operations. Instead of having to backup the entire VHD(X) file or traverse the whole file, the .RCT file tracks changes and directs backup software to only the blocks that have changed. This provides much quicker backups that previous version of Hyper-V and puts the technology on par with VMware’s Change Block Tracking (CBT)
  • Modifiable Region Table: .MRT Like the .RCT file, the .MRT file aids in tracking changes between backup operations, but its function is to provide resiliency in the event of a host crash, BSOD or even a power failure. These make sure data is not missed in the case of something catastrophic happening to one of your hosts during a backup procedure.
Advertisements
This entry was posted in Hyper-V, Windows Server 2016 and tagged , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s