Skip to main content

Understanding the Interactions Between Virtual Storage Provisioning and Physical Storage Provisioning

This post is intended to look at the VCAP-DCA objective of the same title. The thing that springs to mind here is thin provisioning and other methods of provision virtual disks, which are discussed in some detail here. Thin provisioning is probably the technology that highlights the differences between physical and virtual provisioning the most.

Thin Provisioned Disks

When using thin provisioning, the virtual disk does not pre-allocate all of the disk space. Blocks in the VMDK file are not allocated and backed by physical storage until they are written to during the operation of the virtual machine. A thin virtual disk is zero bytes until you begin installing the guest OS (or other means of adding data to the disk).
This can be demonstrated by looking at the sizes of the different types of virtual disks. We’ll start by creating a new thick-provisioned virtual disk:
# vmkfstools -c 10M thick.vmdk
Create: 100% done.
Listing the files we can see that two files have been created, with the ‘-flat.vmdk’ file being 10Mb is size:
# ls -alh thick*.vmdk
-rw-------    1 root     root       10.0M Jan  1 21:03 thick-flat.vmdk
-rw-------    1 root     root         460 Jan  1 21:03 thick.vmdk
Now, if we run ‘du’ we can see that the file sizes are the same as those reported above:
# du -ah
10.0M   ./thick-flat.vmdk
0       ./thick.vmdk
Next, if we create another disk, also 10MB in size, but this time thin provision the disk with the following:
# vmkfstools -c 10M -d thin thin.vmdk
Create: 100% done.
Again, using ‘ls’ we can see that the output is similar for both the thick and thin provisioned disks:
# ls -lah
-rw-------    1 root     root       10.0M Jan  1 21:03 thick-flat.vmdk
-rw-------    1 root     root         460 Jan  1 21:03 thick.vmdk
-rw-------    1 root     root       10.0M Jan  1 21:20 thin-flat.vmdk
-rw-------    1 root     root         485 Jan  1 21:20 thin.vmdk
However, this time when we run ‘du’ the difference between the thick and thin provisioned disks are clear:
# du -ah
10.0M   ./thick-flat.vmdk
0       ./thick.vmdk
0       ./thin-flat.vmdk
0       ./thin.vmdk
We can see that the ‘thin-flat.vmdk’ is actually zero bytes rather than 10MB as nothing has been written to it as yet.

Useful Links and Resources

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1005418

Comments

Popular posts from this blog

  Issue with Aria Automation Custom form Multi Value Picker and Data Grid https://knowledge.broadcom.com/external/article?articleNumber=345960 Products VMware Aria Suite Issue/Introduction Symptoms: Getting  error " Expected Type String but was Object ", w hen trying to use Complex Types in MultiValue Picker on the Aria for Automation Custom Form. Environment VMware vRealize Automation 8.x Cause This issue has been identified where the problem appears when a single column Multi Value Picker or Data Grid is used. Resolution This is a known issue. There is a workaround.  Workaround: As a workaround, try adding one empty column in the Multivalue picker without filling the options. So we can add one more column without filling the value which will be hidden(there is a button in the designer page that will hide the column). This way the end user will receive the same view.  

57 Tips Every Admin Should Know

Active Directory 1. To quickly list all the groups in your domain, with members, run this command: dsquery group -limit 0 | dsget group -members –expand 2. To find all users whose accounts are set to have a non-expiring password, run this command: dsquery * domainroot -filter “(&(objectcategory=person)(objectclass=user)(lockoutTime=*))” -limit 0 3. To list all the FSMO role holders in your forest, run this command: netdom query fsmo 4. To refresh group policy settings, run this command: gpupdate 5. To check Active Directory replication on a domain controller, run this command: repadmin /replsummary 6. To force replication from a domain controller without having to go through to Active Directory Sites and Services, run this command: repadmin /syncall 7. To see what server authenticated you (or if you logged on with cached credentials) you can run either of these commands: set l echo %logonserver% 8. To see what account you are logged on as, run this command: ...
  The Guardrails of Automation VMware Cloud Foundation (VCF) 9.0 has redefined private cloud automation. With full-stack automation powered by Ansible and orchestrated through vRealize Orchestrator (vRO), and version-controlled deployments driven by GitOps and CI/CD pipelines, teams can build infrastructure faster than ever. But automation without guardrails is a recipe for risk Enter RBAC and policy enforcement. This third and final installment in our automation series focuses on how to secure and govern multi-tenant environments in VCF 9.0 with role-based access control (RBAC) and layered identity management. VCF’s IAM Foundation VCF 9.x integrates tightly with enterprise identity providers, enabling organizations to define and assign roles using existing Active Directory (AD) groups. With its persona-based access model, administrators can enforce strict boundaries across compute, storage, and networking resources: Personas : Global Admin, Tenant Admin, Contributor, Viewer Projec...