Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

VMDK files

Posted on 2016-08-11
8
Medium Priority
?
189 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +1
8 Comments
 
LVL 14

Assisted Solution

by:Schnell Solutions
Schnell Solutions earned 400 total points
ID: 41752635
They are used for snapshots, or continuous backups.
0
 
LVL 124

Accepted Solution

by:
Andrew Hancock (VMware vExpert / EE MVE^2) earned 800 total points
ID: 41752639
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 11

Assisted Solution

by:Richardson Porto
Richardson Porto earned 800 total points
ID: 41752646
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
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
LVL 124
ID: 41752658
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
 

Author Comment

by:jskfan
ID: 41752707
*.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 124
ID: 41752722
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 11

Assisted Solution

by:Richardson Porto
Richardson Porto earned 800 total points
ID: 41752777
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
ID: 41760366
Thank you
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If we need to check who deleted a Virtual Machine from our vCenter. Looking this task in logs can be painful and spend lot of time, so the best way to check this is in the vCenter DB. Just connect to vCenter DB(default DB should be VCDB and using…
In this article, I will show you HOW TO: Create your first Windows Virtual Machine on a VMware vSphere Hypervisor 6.5 (ESXi 6.5) Host Server, the Windows OS we will install is Windows Server 2016.
Teach the user how to edit .vmx files to add advanced configuration options Open vSphere Web Client: Edit Settings for a VM: Choose VM Options -> Advanced: Add Configuration Parameters:
This Micro Tutorial steps you through the configuration steps to configure your ESXi host Management Network settings and test the management network, ensure the host is recognized by the DNS Server, configure a new password, and the troubleshooting…

610 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