Tuesday, October 11, 2011

Examining LUNs with vicfg-scsidevs

On ESX/ESXi4.x hosts, information about available LUNs can be displayed using vicfg-scsidevs CLI command. In Windows client, the command is vicfg-scsidevs.pl. For ESX/ESXi 3.5 systems, the coresponding command is vicfg-vmhbadevs.

vicfg-scsidevs --query and vicfg-scsidevs --vmfs can be used against ESX/ESXi version 3.5. The other options are supported only for the ESX/ESXi version 4.0 and later.

To display all lofincal devices known on this system with detailed information, run
vicfg-scsidevs  <conn_options>  --list
To display all logical devices with abbreviated information, run
vicfg-scsidevs  <conn_options>   --comppact-list


To display all device unique identifiers (UIDs), run
vicfg-scsidevs  <conn_options>  --uids


To list a specific logical device with its detailed information, run
vicfg-scsidevs  <conn_options>  -l  -d  mpx.vmhba32:C0:T1:L0


To print mappings for VMFS to the corresponding partition, path to that partition, VMFS uuid, extent number, and volume names, run
vicfg-scsidevs  <conn_options>  --vmfs


To print HBA devices with identifying information, run
vicfg-scsidevs  <conn_option>  --hbas


To print a mapping between HBAs and devices it provides path to, run
vicfg-scsidevs  <conn_options>   --hba-device-list



vicfg-scsidevs help message:
Synopsis: C:\Program Files (x86)\VMware\VMware vSphere CLI\bin\vicfg-scsidevs.pl OPTIONS

Command-specific options:
   --compact-list
    -c
             List all logical devices each on a single line, with limited information.  Supported on ESX 4.0 and ESXi 4.0.

   --device
    -d
             Used to filter the --list, --compact-list and --uids commands to limit output to a specific device.   Supported on ESX 4.0
             and ESXi 4.0.

   --hba-device-list
    -A
             Print a mapping between HBAs and the devices it provides paths to.  Supported on ESX 4.0 and ESXi 4.0.

   --hbas
    -a
             Print HBA devices with identifying information.   Supported on ESX 4.0 and ESXi 4.0.

   --list
    -l
             List all logical devices known on this system with detailed information.  Supported on ESX 4.0 and ESXi 4.0.

   --query
    -q
             Print mappings in 2.5 compatibility mode to mimic vmkpcidivy -q vmhba_devs.  Supported on ESX 2.5, ESX 3.0,
             ESX 3.5, ESX 3i only.

   --uids
    -u
             List all device unique identifiers with their primary name.  Supported on ESX 4.0 and ESXi 4.0.

   --vihost
    -h
             The host to use when connecting via Virtual Center.

   --vmfs
    -m
             Print mappings for VMFS volumes to the corresponding partition,  path to that partition, VMFS uuid, extent number and
             volume names.  Supported on ESX 2.5, ESX 3.0, ESX 3.5, ESX 3i, ESX 4.0 and ESXi 4.0.


Common VI options:
   --config (variable VI_CONFIG)
      Location of the VI Perl configuration file
   --credstore (variable VI_CREDSTORE)
      Name of the credential store file defaults to <HOME>/.vmware/credstore/vicredentials.xml on Linux and <APPDATA>/VMware/credstore/v
icredentials.xml on Windows
   --encoding (variable VI_ENCODING, default 'utf8')
      Encoding: utf8, cp936 (Simplified Chinese), iso-8859-1 (German), shiftjis (Japanese)
   --help
      Display usage information for the script
   --passthroughauth (variable VI_PASSTHROUGHAUTH)
      Attempt to use pass-through authentication
   --passthroughauthpackage (variable VI_PASSTHROUGHAUTHPACKAGE, default 'Negotiate')
      Pass-through authentication negotiation package
   --password (variable VI_PASSWORD)
      Password
   --portnumber (variable VI_PORTNUMBER)
      Port used to connect to server
   --protocol (variable VI_PROTOCOL, default 'https')
      Protocol used to connect to server
   --savesessionfile (variable VI_SAVESESSIONFILE)
      File to save session ID/cookie to utilize
   --server (variable VI_SERVER, default 'localhost')
      VI server to connect to. Required if url is not present
   --servicepath (variable VI_SERVICEPATH, default '/sdk/webService')
      Service path used to connect to server
   --sessionfile (variable VI_SESSIONFILE)
      File containing session ID/cookie to utilize
   --url (variable VI_URL)
      VI SDK URL to connect to. Required if server is not present
   --username (variable VI_USERNAME)
      Username
   --verbose (variable VI_VERBOSE)
      Display additional debugging information
   --version
      Display version information for the script

No comments: