vSphere Storage Appliance

 View Only
  • 1.  Virtual RDM Version

    Posted Oct 29, 2009 05:47 PM

    I am currently running vSphere 4, ESX 4, all VM's hardware v7, fully patched.

    A number of VM's have virtual RDM's.

    I have a backup software package "Veeam" that takes advantage of changed block tracking via the vSphere Backup API, but the changed block tracking only works with version 2 virtual RDM's.

    I'm told the following from their support "Changed block tracking is supported in build 77, but there are 2 generations of vRDM disks, v1 and v2, and changed block tracking is only supported for v2 vRDMs."

    When I asked how to see what version my RDM's are, I got this response "there is a way, but it inlvolves browsing deep through ESX MOB (managed object browser) and I would not try to repeat the sequence of click even after I saw devs doing this a few times."

    I need to find out what version of RDM's I have, and if I do have the earlier version, I have to find out how to update or recreate them as version 2...?

    Any help would be much appreciated. Thank you. Matt



  • 2.  RE: Virtual RDM Version

    Broadcom Employee
    Posted Oct 30, 2009 04:38 AM

    I'm not aware there is a RDM v2? afaik, the various version of a disk backing are documented here in the vSphere API reference guide

    It's not unheard of that this data object could exists, there are lots that isn't publicly documented but within the API themselves. I've updated this script: to also printout the specific disk backing and it's version for all VMs, you could use the modified script to see what version your RDMs are (unfortunately I don't have any setup right now to test) .. though from what I remember, I've only seen version 1 ...

    Here's a quick example of what the output would look like:

    [vi-admin@scofield ~][http://reflex.primp-industries.com|http://reflex.primp-industries.com]$ ./getVMDiskInfo.pl --server reflex.primp-industries.com
    test-pvscsi
            Hard disk 1 = [http://himalaya-local-SAS.Savvio|http://himalaya-local-SAS.Savvio] test-pvscsi/test-pvscsi.vmdk
            Hard disk 1 = isThinProvsioned
            Hard disk 1 = persistent
            Hard disk 1 = VirtualDiskFlatVer2BackingInfo
            Hard disk 2 = [http://himalaya-local-SAS.Constellation|http://himalaya-local-SAS.Constellation] test-pvscsi/test-pvscsi.vmdk
            Hard disk 2 = isNotThinProvisioned
            Hard disk 2 = persistent
            Hard disk 2 = VirtualDiskFlatVer2BackingInfo
            Hard disk 3 = [http://himalaya-local-SAS.Savvio|http://himalaya-local-SAS.Savvio] test-pvscsi/test-pvscsi_2.vmdk
            Hard disk 3 = isNotThinProvisioned
            Hard disk 3 = persistent
            Hard disk 3 = VirtualDiskFlatVer2BackingInfo
            Hard disk 4 = [http://dlgCore-iSCSI.test|http://dlgCore-iSCSI.test] test-pvscsi/test-pvscsi.vmdk
            Hard disk 4 = isNotThinProvisioned
            Hard disk 4 = persistent
            Hard disk 4 = VirtualDiskFlatVer2BackingInfo
            Hard disk 5 = [http://himalaya-local-SAS.Savvio|http://himalaya-local-SAS.Savvio] test-pvscsi/test-pvscsi_1.vmdk
            Hard disk 5 = isThinProvsioned
            Hard disk 5 = persistent
            Hard disk 5 = VirtualDiskFlatVer2BackingInfo
    
    vMA-2
            Hard disk 1 = [http://himalaya-local-SAS.Constellation|http://himalaya-local-SAS.Constellation] vMA-2/vMA-2.vmdk
            Hard disk 1 = isNotThinProvisioned
            Hard disk 1 = persistent
            Hard disk 1 = VirtualDiskFlatVer2BackingInfo
    
    vm-1
            Hard disk 1 = [esxi40-1-local-storage] vm-1/vm-1.vmdk
            Hard disk 1 = isThinProvsioned
            Hard disk 1 = persistent
            Hard disk 1 = VirtualDiskFlatVer2BackingInfo
    
    vm-2
            Hard disk 1 = [esxi40-1-local-storage] vm-2/vm-2.vmdk
            Hard disk 1 = isThinProvsioned
            Hard disk 1 = persistent
           Hard disk 1 = VirtualDiskFlatVer2BackingInfo
    
    
    

    Hopefully this helps you out

    =========================================================================

    William Lam

    VMware vExpert 2009

    VMware ESX/ESXi scripts and resources at:

    VMware Code Central - Scripts/Sample code for Developers and Administrators

    VMware Developer Comuunity

    Twitter: @lamw

    If you find this information useful, please award points for "correct" or "helpful".



  • 3.  RE: Virtual RDM Version

    Posted Oct 30, 2009 05:28 PM

    I tried running the script on my ESX server, but it just spat out errors as seen below. I suspect I shouldn't either be running it from ESX or I should have something special installed on the server? I'm not very linux savvy.. I was able to get the file over to the ESX server, fire up a putty session, chmod 755 it and run it, and that's about the extent of my knowledge these days.

    # ./getVMDiskInfo.pl --server esx12.generac.com

    Can't locate VMware/VIRuntime.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib64/perl5/site_perl/5.8.7/x86_64-linux-thread-multi /usr/lib64/perl5/site_perl/5.8.6/x86_64-linux-thread-multi /usr/lib64/perl5/site_perl/5.8.5/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.8.7/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.8.6/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at ./getVMDiskInfo.pl line 10.

    BEGIN failed--compilation aborted at ./getVMDiskInfo.pl line 10.

    Any suggestions on how I should run the script?



  • 4.  RE: Virtual RDM Version

    Broadcom Employee
    Posted Oct 30, 2009 07:10 PM

    The requirements on noted on the document, you do not run this on Service Console, this uses the VMware SDK and specifically the vSphere SDK for Perl. Please download the vCLI on either Windows or Linux ( I prefer Linux, since the script was developed on vmA ). You can also just download the vMA which is a VMware RHEL virtual appliance which contains the vCLI and other useful tools and you can just deploy as a new VM and upload the script and connect.

    =========================================================================

    William Lam

    VMware vExpert 2009

    VMware ESX/ESXi scripts and resources at:

    VMware Code Central - Scripts/Sample code for Developers and Administrators

    VMware Developer Comuunity

    Twitter: @lamw

    If you find this information useful, please award points for "correct" or "helpful".



  • 5.  RE: Virtual RDM Version

    Broadcom Employee
    Posted Oct 30, 2009 04:50 AM

    Actually while poking around the API documents, I just found what Veeam was referring to as vRDM v2: VirtualDiskRawDiskVer2BackingInfo, it looks like it has further information which is used for change block tracking.

    Again, I'm not exactly sure how one would setup a vRDM to be either v1 or v2? Perhaps this is standard from vSphere? I'm not 100% sure, but hopefully the script provided should display the version and maybe you can let me know if you have any v2 and if that is specific to creating vRDMs on vSphere with ESX(i) 4.

    =========================================================================

    William Lam

    VMware vExpert 2009

    VMware ESX/ESXi scripts and resources at:

    VMware Code Central - Scripts/Sample code for Developers and Administrators

    VMware Developer Comuunity

    Twitter: @lamw

    If you find this information useful, please award points for "correct" or "helpful".