Monday, February 6, 2012

Converting a VMDK from IDE to SCSI

Yet another great tip that just saved me some time.  Follow these instructions to convert an IDE VMDK to a SCSI VMDK.

KB Article: 1016192
  • Important note: You cannot increase the size of an IDE drive in Virtual Center so converting to SCSI is handy in the event that you need to make the disk bigger.

Converting a virtual IDE disk to a virtual SCSI disk

Symptoms


  • Virtual machine contains an IDE virtual disk as the primary OS bootable disk after conversion from physical source.
  • Virtual machine has an IDE virtual disk but the additional secondary virtual disks are SCSI with an LSI or Bus Logic controller.
  • Virtual machine fails to boot with only a black screen after conversion with possible underscore. The Primary disk is an IDE virtual disk but LSI or Bus Logic was selected during conversion.
  • After conversion using P2V, the virtual machine fails to boot.
  • Virtual machine created after P2V failed between 95% and 99% and fails to boot.
  • After powering off a virtual machine, you are unable to increase the size of its hard disk(s) when the disk is not SCSI based.

Resolution


When converting a physical machine to a virtual machine using VMware Converter or vCenter Converter Enterprise, if an adapter type is not selected during the initial customization the resulting virtual machine may contain an IDE disk as the primary OS disk.

You must convert the IDE disk to SCSI to get the best performance. If the primary disk is an IDE virtual disk, the newly converted virtual machine may fail to boot because the guest OS does not support the driver. Second reason for this issue is that in ESX 4.x the default disk type for Windows XP 32bit virtual machine creation is IDE. This default value can be manually changed during the virtual machine creation wizard by selecting the custom option. Windows XP 64bit will still use SCSI by default.
Note: For newer versions of Windows and Linux OS guests, the typical SCSI adapter types are the LSI Logic controllers. When using LSI Logic SCSI controllers in the Windows XP virtual machine, ensure to download and install the appropriate LSI driver before proceeding. For more information on downloading and installing LSI Logic SCSI drivers, see Storage Drivers for ESX 3.5.x and Microsoft Windows XP When Using the VMware LSI Logic Storage Adapter (1007035).

To convert the IDE disk to SCSI:
  1. Locate the datastore path where the virtual machine resides.For example:/vmfs/volumes///
  2. From the ESX Service Console, open the primary disk (.vmdk) in a text editor.
  3. Look for the line:ddb.adapterType = "ide"
  4. To change the adapter type to LSI Logic change the line to:
    ddb.adapterType = "lsilogic"

    To change the adapter type to Bus Logic change the line to:

    ddb.adapterType = "buslogic"
  5. Save the file.
  6. From VMware Infrastructure/vSphere Client:
    1. Click Edit Settings for the virtual machine.
    2. Select the IDE virtual disk.
    3. Choose to Remove the Disk from the virtual machine.
    4. Click OK.

      Caution: Make sure that you do not choose Remove from disk.
  7. From the Edit Settings menu for this virtual machine:
    1. Click Add > Hard Disk > Use Existing Virtual Disk.
    2. Navigate to the location of the disk and select to add it into the virtual machine.
    3. Choose the same controller as in Step 3 as the adapter type. The SCSI ID should read SCSI 0:0.
  8. If a CDROM device exists in the virtual machine it may need to have the IDE channel adjusted from IDE 0:1 to IDE 0:0. If this option is greyed out, remove the CD-ROM from the virtual machine and add it back. This sets it to IDE 0:0.

Additional Information


In some cases, a primary operating system virtual disk is set up as IDE while the additional virtual disks are set up as LSI or Bus Logic SCSI disks. In this situation, after editing the IDE disk adapter type and removing the disk from the virtual machine in Edit Settings, you must change the SCSI channel for the secondary disks to free up SCSI 0:0 for the main OS disk.
Change the SCSI 0:0 disk to SCSI 0:1, then when you add the primary OS disk back into the virtual machine with the new LSI Logic adapter type, you can select SCSI 0:0 for the disk.
Target virtual machines that were converted to ESX 4.0 or ESXi 4.0 hosts using volume-based cloning fail to start up if they contain IDE disks. For more information, see the VMware vCenter Converter Standalone 4.0.1 Release Notes.

Thursday, July 14, 2011

Handling Snapshot LUNs in ESX/ESXi 4.x

I had a problem last week with some LUNs that were in use by some ESX 3.5 hosts where the 'DisallowSnapshotLUN' option was deactivated.

In ESX/ESXi 4.x this option was no longer available. When I attempted to mount one of these LUNs through the GUI I was only given the "Resignature" option, the Mount Only option was greyed out.

After a call to VMware this KB article gave me my solution: KB 1011387

Essentially I had to run the esxcfg-volumes -M command for each LUN and they are now available on the ESXi 4.1 hosts.

Hooray for easy fixes!

Tuesday, June 28, 2011

Removing VMs from the ADAM Database (Manually)

Yet another great KB that saved me a lot of hassle today: 1008658

Removing the virtual machine from the ADAM database

These steps are only applicable if the virtual machine has not been deleted from vCenter Server:
Find the virtual machine's GUID stored in ADAM:
  1. Log in to the culprit virtual machine using the vSphere Client Console or directly using Windows Remote Desktop Protocol (RDP).
  2. Open the Windows registry, and go to HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware VDM\Node Manager\Server DN.
  3. Record the cn=.

If the virtual machine has already been deleted from vCenter Server:

  1. Log in to the machine hosting your VMware View Connection Server through the VMware Infrastructure Client or Microsoft RDP.
  2. Open the ADAM Active Directory Service Interfaces Editor.
    • In a Windows 2003 Server, click Start > Programs > ADAM > ADAM ADSI Edit.
    • In a Windows 2008 Server, click Start > All Programs >Administrator Tools > ADSI Edit.

  3. Right-click ADAM ADSI Edit and click Connect to.
  4. Ensure that the Select or type a domain or server option is selected and the destination points to localhost.
  5. Select Distinguished Name (DN) or naming context and type dc=vdi, dc=vmware, dc=int.
  6. Run a query against OU=Servers, DC=vdi, DC=vmware, DC=int with the this string:

    (&(objectClass=pae-VM)(pae-displayname=))


  7. Record the cn=.

Take a complete backup of ADAM and Composer database.

Delete the pae-VM object from the ADAM database:
  1. Open the ADAM Active Directory Service Interfaces Editor.
    • In a Windows 2003 Server, click Start > Programs > ADAM > ADAM ADSI Edit.
    • In a Windows 2008 Server, click Start > All Programs >Administrator Tools > ADSI Edit.

  2. Right-click ADAM ADSI Edit and click Connect to.
  3. Choose Distinguished name (DN) or naming context and type dc=vdi, dc=vmware, dc=int.
  4. Locate the OU=SERVERS container.
  5. Locate the corresponding virtual machine's GUID (from above) in the list which can be sorted in ascending or descending order, choose Properties and check the pae-DisplayName Attribute to verify the corresponding linked clone virtual machine object.
  6. Delete the pae-VM object.
Note: Check if there are entries under OU=Desktops and OU=Applications in the ADAM database.
Removing the linked clone references from the View Composer database
In View 4.5 and later, use the SviConfig RemoveSviClone command to remove these items:
  • The linked clone database entries from the View Composer database
  • The linked clone machine account from Active Directory
  • The linked clone virtual machine from vCenter Server
Before you remove the linked clone data, make sure that the View Composer service is running. On the View Composer computer, run the SviConfig RemoveSviClone command.
For example:

SviConfig -operation=RemoveSviClone
-VmName=VM name -AdminUser=the local admin user -AdminPassword=the local admin password -ServerUrl=the View Composer server URL

Where:
VmName - The name of the virtual machine to remove.
AdminUser - The name of the user who is part of the local administrator group. The default value is Administrator.
AdminPassword - The password of the administrator used to connect to the View Composer server.
ServerUrl - The View Composer server URL. The default value is https://localhost:18443/SviService/v2_0
The VmName and AdminPassword parameters are required. AdminUser and ServerUrl are optional.
Note: The location of SviConfig is:
    • In 32-bit servers – \Program Files\VMware\VMware View Composer
    • In 64-bit servers – \Program Files (x86)\VMware\VMware View Composer
In View 4.0.x and earlier, you must manually delete linked-clone data from the View Composer database.
To remove the linked clone references from the View Composer database:
    1. Open SQL Manager > Databases > View Composer database > Tables.
    2. Open dbo.SVI_VM_NAME table and delete the entire row where the virtual machine is referenced under column NAME.
    3. Open dbo.SVI_COMPUTER_NAME table and delete the entire row where the virtual machine is referenced under column NAME.
    4. Open dbo.SVI_SIM_CLONE table, find the virtual machine reference under column VM_NAME and note the ID. If you try to delete this row it complains about other table dependencies.
      • Open dbo.SVI_SC_PDISK_INFO table and delete the entire row where dbo.SVI_SIM_CLONE ID is referenced under column PARENT_ID.
      • Open dbo.SVI_SC_BASE_DISK_KEYS table and delete the entire row where dbo.SVI_SIM_CLONE ID is referenced under column PARENT_ID.
      • If the linked clone was in the process of being deployed when a problem occurred, there may be additional references to the clone left around in the dbo.SVI_TASK_STATE table and dbo.SVI_REQUEST table:
        • Open dbo.SVI_TASK_STATE table and find the row where dbo.SVI_SIM_CLONE ID is referenced under column SIM_CLONE_ID. Note the REQUEST_ID in that row.
        • Open dbo.SVI_REQUEST table and delete the entire row where dbo.SVI_TASK_STATE REQUEST_ID is referenced ID.
        • Delete the entire row from dbo.SVI_TASK_STATE table

    5. In dbo.SVI_SIM_CLONE table, delete the entire row where the virtual machine is referenced.
    6. Remove the virtual machine from Active Directory Users and Computers.

Deleting the virtual machine from vCenter Server

Note: If you run the SviConfig RemoveSviClone command to remove linked clone data, the virtual machine is removed from vCenter Server. You can skip this task.
To delete the virtual machine from vCenter Server:
  1. Log in to vCenter Server using the vSphere Client.
  2. Right-click the linked clone virtual machine and click Delete from Disk.

Friday, June 24, 2011

vCenter Client Command Line Arguments

From trial and error as well as some searching I have been able to come up the the following list of command line arguments for the vCenter client. I am sure there are many more but these are the ones I have found so far.

-s = Use this argument to specify a specific vCenter server
-u
= Use this argument to specify a username to login with
-p = Use this option to provide a password with the -s argument.
-passthroughAuth (this option allows the client to use the credentials of the currently logged in user)

Thursday, June 23, 2011

Removing a connection server from VMware View

Found this helpful KB article. KB 1010153

Works great if you are doing a 4.5 to 4.6 upgrade.

  1. Uninstall the connection server and ADAM instance from the server that you want to remove from the cluster.
    1. Click Control Panel > Add or Remove Programs.
    2. Remove VMware View Connection Server and Adam Instance VMwareVDMDS.

  2. Refer to Remove View Manager Entry in the Command Line Tool for View Manager document for full details on how to use the vdmadmin.exe tool to remove the reference to the now redundant server in the ADAM database.

    Here is an example of the command:

    "C:\Program Files\VMware\VMware View\Server\bin\vdmadmin.exe -S -r -s "

    For View 4.5 and later run this command:

    "C:\Program Files\VMware\VMware View\Server\tools\bin\vdmadmin.exe -S -r -s "

Wednesday, June 22, 2011

Coping an SSL Certificate for one VMware View Connection Server to another

Found a really easy way to move/copy an exsisting SSL certificate from one VMware View Connection server to another today.

Copy the .p12 and the locked.properties files in [install_directory]\VMware\VMware View\Server\sslgateway\conf\ directory of the first server into the second server and restart the VMware View Connection Server service.

Bingo! The certificate is now on both servers!