Solved

VMDK files

Posted on 2016-08-11
8
64 Views
Last Modified: 2016-08-17
When I browse Datastore in Vsphere, I see 3 .vmdk files
Servername.vmdk
servername_1.vmdk
servername_2.vmdk

In Fact the VM has 3 Hard disks, however in some documentation it says the .vmdk is a Descriptor of the hard disk. What does that mean ?
I also see the:
servername-ctk.vmdk
servername_1-ctk.vmdk
servername_2-ctk.vmdk

ctk files if I am correct are for change tracking, but what does that mean? do they get created whenever there is a snapshot? how do they get created ?

Thank you
0
Comment
Question by:jskfan
  • 3
  • 2
  • 2
  • +1
8 Comments
 
LVL 14

Assisted Solution

by:Schnell Solutions
Schnell Solutions earned 100 total points
Comment Utility
They are used for snapshots, or continuous backups.
0
 
LVL 117

Accepted Solution

by:
Andrew Hancock (VMware vExpert / EE MVE) earned 200 total points
Comment Utility
When you BROWSE you are not observing ALL the files, they are hidden because you are in "idiot view" mode.

there are a pair for every vmdk,

e.g.

server.vmdk
server-flat.vmdk
server-ctk.vmdk

only the server.vmdk contains the VM OS data...

a file with a server_X.vmdk, means another disk, e.g. disk X.

and a file that looks like server-0000X.vmdk is a snapshot.

HOW TO: VMware Snapshots :- Be Patient



As for the VMDK files there are two...

you can read here

Recreating a missing virtual machine disk descriptor file (1002511)

*.vmdk - the descriptor which describes the disk geometry.

see my EE Article, and look and read the comments, it explains it in detail, and how it's calculated

HOW TO: Shrink a VMware Virtual Machine Disk (VMDK) in 15 minutes

the flat file, actually contains the VM OS DATA.

This is what CTK files are all  is about... they track blocks which have been changed, change block tracking

from Anton Gostev from Veeam on CBT:

In essence, CBT is all about CTK files, these are the files which contain change tracking information of the corresponding VMDK file.

The concept is pretty simple, and if you are familiar with AD DirSync control, or Exchange ICS (public folders change tracking) – it is essentially the same: global USN (Update Sequence Number) for each object. CTK file describes the state of each block for tracking purposes, and contain USN for each block in the corresponding VMDK. After any block is updated, it is assigned the new global USN (which is previous USN value that was used on previously processed block plus 1). This way, any application can ask VMware API “tell me if this block was changed since THIS moment”, and the API will easily tell that by simply comparing the provided sequence number with the actual USN on each block. If provided USN is smaller than actual for particular block, it means that the block was changed (and needs to be backed up, replicated or otherwise processed). So multiple processes cannot conflict with each other anyhow. Each process just memorizes the USN corresponding to the snapshot that the application created during processing, and next time it will use the memorized USN to query for changed blocks.

There should be one CTK file per VMDK file, and CTK file cannot grow out of proportion with number of blocks in VMDK (as it stores only 1 record per VMDK block). CTK file is also thousands time smaller than actual VMDK, because it stores only a few bytes of information (USN) for each corresponding 256KB VMDK block (I am 90% sure it is 256KB, used to calculate it once using CTK debug/stats data, just don’t remember for sure – unimportant info escapes my head automatically to prevent overload with useless facts ;) . For the same reasons, I/O overhead is barely noticeable with CBT: change few extra bytes to write for each 256000 bytes of data.

The CTK files are permanent, and should not be deleted after backup/replication.
0
 
LVL 9

Assisted Solution

by:Richardson Porto
Richardson Porto earned 200 total points
Comment Utility
A VMware virtual disk is composed by two files, one descriptor file (that contains information about the virtual data disk) and a flat file (that contain the actual content data of the virtual disk).

The descriptor is something like mydisk.vmdk (it have small size) and the flat disk is something like mydisk-flat.vmdk (that may be a big file, depending of how much data you have on disk and/or how big is your virtual disk).

Browsing using the Datastore Browser through the vSphere Client, you will not see the files -flat.vmdk, to see these files you will need to log in through SSH on host.

The CTK files are created once any application that use the Change Block Tracking for example backup the virtual machine.

The file created by snapshots are the delta files, and it should looks like -00001.vmdk and -00001-delta.vmdk.
0
 
LVL 117

Expert Comment

by:Andrew Hancock (VMware vExpert / EE MVE)
Comment Utility
didn't we do this here on the 15 July 2016 ?

vmware VMDK Files

do you have poor memory ? forget ? easier to post and ask the question again, rather than look up your previous answer ?
0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 

Author Comment

by:jskfan
Comment Utility
*.vmdk - the descriptor which describes the disk geometry.

.VMDK I see it is 40GB it got to be the physical file of the first hard disk
_1.VMDK I see it is 62GB it got to be the physical file of the second hard disk
_2.VMDK I see it is 52GB it got to be the physical file of the third hard disk

so where is the descriptor ?
0
 
LVL 117

Expert Comment

by:Andrew Hancock (VMware vExpert / EE MVE)
Comment Utility
logon to the console, or remotely via SSH, and view the files.

in vSphere Client Browser Mode, it groups all the files together, "idiot mode"

you cannot see the pair of files which make up the virtual machine disk ?

server.vmdk is a TEXT FILE!

Understand now ?
0
 
LVL 9

Assisted Solution

by:Richardson Porto
Richardson Porto earned 200 total points
Comment Utility
To see both files (descriptor and flat) separately you have to login on host through SSH, navigate to the folder where files are stored. After you locate the file you can open the mydisk.vmdk with a text editor, like vi.
0
 

Author Closing Comment

by:jskfan
Comment Utility
Thank you
0

Featured Post

Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

Join & Write a Comment

This article is an update and follow-up of my previous article:   Storage 101: common concepts in the IT enterprise storage This time, I expand on more frequently used storage concepts.
This is an issue that we can get adding / removing permissions in the vCSA 6.0. We can also have issues searching for users / groups in the AD (using your identify sources). This is how one of the ways to handle this issues and fix it.
This Micro Tutorial walks you through using a remote console to access a server and install ESXi 5.1. This example is showing remote access and installation using a Dell server. The hypervisor is the very first component of your virtual infrastructu…
This video shows you how to use a vSphere client to connect to your ESX host as the root user. Demonstrates the basic connection of bypassing certification set up. Demonstrates how to access the traditional view to begin managing your virtual mac…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now