Tuesday, February 28, 2012

Error 15: Could not find file

After patching one of my ESX hosts, it became inaccessible after the reboot.  I DRAC'd into the server and found the following error:
Error 15: Could not find file

running the vdf -ha command showed that /boot was nearly full.  This host was upgraded from ESX 3.5 to 4.1 and was never "cleaned up"

Go into troubleshooting mode and run the following command to removed the old ESX 3.5 files:
cleanup-esx3 –f

The ESX host was then rebooted, and came back up without incident. 

The .dvsData folder


After deploying the Cisco Nexus 1000v and moving VMs onto it, I noticed a new folder called .dvsData in each of the datastores.  

Within the .dvsData folder are files with information regarding the port state of each VM using a dvport on the Cisco Nexus 1000v.  The .dvsData folder is located on the same datastore that the VM is registered.  In the event of a VMware High Availability (HA) event, the destination ESX host pulls the dvPort state of the VM from the .dvsData folder.

In addition, each ESX host, has a local database that contains vDS information.  (/etc/vmware/dvsdata.db) This allows the vDS to continue to run in the event vCenter is unavailable.

When deleting the .dvsData folder, confirm there are no registered VMs within the datastore.  Then proceed with the maintenance.

Monday, February 27, 2012

Configuring the Cisco Discovery Protocol (CDP) on ESX

By default, CDP on ESX(i) 3.5-5.0 is set to listen.  This allows ESX to read CDP information from attached Cisco Devices.  To listen and advertise vSwitch information,  the following must be performed on the ESX host.

1. Gather the current vSwitch configuration on the host by running the following command:
esxcfg-vswitch -l

2. To set the CDP status for a vSwitch, run the following.  Use the appropriate vswitch name for your environment:
esxcfg-vswitch -B both vSwitch1

3. Confirm the change by running the following:
esxcfg-vswitch -b vSwitch1

**Update Feb 15th 2013**
The esxcli command to configure CDP on an ESXi host with a standard switch is:
esxcli network vswitch standard set -c both -v vSwitch0

**Update Jan 27th 2017**
Commands for setting up CDP on a standard switch through powerCLI
$esxcli = Get-EsxCli -VMHost myhost.mycompany.com

$esxcli.network.vswitch.standard.set("both","9000","vSwitch1")

Confirm by running the following:
$esxcli.network.vswitch.standard.list()

Sunday, February 26, 2012

EqualLogic Multipathing Extension Module (MEM)

For those of you using Equallogic Arrays and VMware Software iSCSI, I highly recommend the EqualLogic Multipathing Extension Module (MEM). 

The standard method of configuring SW iSCSI with 2 or more adapters is time consuming and tedious at best.  (create vSwitch, create vmkernels for each adapter, Override vSwitch Failover order, console in to set MTU to 9000, bind vmk's to the iSCSI initiator ect...)

The EqualLogic Multipathing Extension Module comes with a setup script which performs the configuration of SW iSCSI, in addition to installing the MEM. 

The SW iSCSI configuration is a breeze using the setup.pl script.  I ran it using vSphere CLI 4.1 from a local Windows host.   Run the script, enter in the host specific info (vmnics used, IP's, netmask, sw iscsi, etc..)  and the script does the rest.  It even enables sw iSCSI and enters the EqualLogic Group IP for you.

After the configuration, run the same setup script with "--install" to install the Equallogic Multipathing Extension Module.  After the successful install, and a reboot, I saw a noticable reduction in latency to the storage.

Saturday, February 25, 2012

Unable to install the Cisco Nexus 1000V - Virtual Ethernet Module (VEM)

The Cisco Nexus 1000V is a software implementation of a Nexus switch.  It's comprised of 2 main components:

1. Virtual Supervisor Module (VSM) - In our environment, the VSM is made up of 2 VMs (Primary and Secondary)
2. Virtual Ethernet Module (VEM) - This component is installed onto each host.  It's similar to a linecard.

I was attempting to install the VEM using VMware Update Manager (VUM).  Unfortunately, I was unable to successfully complete the install,  it kept on erroring out. I confirmed that VUM was configured successfully, restarted the VUM service etc..

It turns out, VMware High Availability (HA) must be disabled to complete the VEM install.  After disabling HA at the cluster level,  I was able to successfully install the VEM on all 4 ESX hosts in this particular cluster.

How to change the VLAN ID of your ESX Service Console:


Need to change the VLAN ID of your Service Console?  Have you ever forgotten to enter the VLAN ID for your Service Console during the installation process?  If so, there's no need to reinstall, just console in and change it using the following commands.

Run the following command to see the current vSwitch configuration.  Make note of the virtual switch and the name of the Service console.  (typically vSwitch0 and "Service Console")
esxcfg-vswitch -l

Issue the following command to change the VLAN ID.   X is the desired VLAN:
esxcfg-vswitch vSwitch0 -v X -p "Service Console"

Verify the vSwtich configuration:
esxcfg-vswitch -l

Restart the network service:
service network restart