ESXi 6.0 Nested Lab–NIC not detected

In my nested lab of ESXi 6.0 on vmware workstation, the host was prepared using 4 NIC, the setup was a breeze as usual and no issues.

I needed few more NIC, and added them as usual.

Once the host is up, I check in vSphere web client, and unfortunately the NICs did not get detected. ( That’s what I thought 1st)

Upon check the KB1034782 I checked if host really did detected them or not by using lspci -v | grep -A1 -i ethernet

So, the output shows the New NICs were showing as AMD instead of Intel
I went ahead and to check what esxcfg-nics –l will show up.

What caught my eyes was the “Driver” Column showing value of e1000 for NICs what are detected.
Immediately I thought of checking .vmx file. What I found was an entry
ethernet1.virtualDev = “e1000”

This entry was available for detected NICs and un-detected NICs did not have it.
I added the entries for each NIC and rebooted the host.
Upon checking again, the NICs were detected



Synology DS1515+ SSD Cache (Read/Write)

As everything is real world has time limit, so does the HDD in my Synology DS1515+, one HDD failed and lost all of the entertainment media.
1515+ got 5 drive bays and had to use a single HDD for entertainment, truth is non of the data I put on synology really matters as its for vmware vSphere HomeLab!

Anyways, stories aside.

Got 2 x Kingston v300 240GB SSD for R/W cache to speed up my Lab. Though 240GB is not listed on Synology compatibility list, but 120GB v300 is listed here.

The Firmware is also different than what is listed for 120Gb v300 (FW: 605ABBF2)
SSD that I got are running on FW: 603ABBF0

I will not go into much details about the IOPS, throughput and all that.
What matters to me is that VM performance has improved to a good extent, nothing jaw dropping, but yes Guest OS is responding fast as compared to before. Got what I was expecting.

One thing that I noticed when using “SSD Cache Advisor” on Synology that I gives a vague message “The memory on your Synology NAS is full so it is not possible to create SSD cache” Though I have 8GB memory installed.
I ran Advisor with/without installed into bays. But it did finally create Cache volume.

There is requirement about RAM that you can read on Synology website here.

Continue reading

Upgrading and Migrating Virtual Center 4.0 to vCenter 5.0 to a x64Bit platform

I have been planning to put together an article on Upgrading and Moving Virtual Center 4.0 to vCenter 5.0 since a long time and here it goes today.

What we have in Lab?
I have prepared 2 ESX named as ESX4-A and ESX4-B. (we will be upgrading this to ESXi 5 in next article)
Also, I have setup a MS-SQL 2005 Enterprise server on Windows 2003 R2 Enterprise SP2 x86 which  is serving as a separate database server for Virtual Center server. This server is named as SQL2005
A Virtual Center 4.0 server on Windows 2003 R2 Enterprise SP2 x86, named as vcenter4
XP Pro workstation from where virtual center will be managed using vSphere Client.

A SQL2008R2 x64 server on Windows 2008 R2 x64 OS, which will serve as Database server for vCenter 5
A Windows 2008 R2 x64 Server which will host our new vCenter Server 5.0

From XP Client I have connected to Virtual Center server via vSphere Client.

On SQL2005 Server, The database is using a SQL User account “VCDBUser” (it is not a local user account)

On Virtual Center server a 32-Bit ODBC DSN is created to connect to database VC_DB on SQL2005, using VCDBUser account that is created on SQL Server.
Now, Lets prepare the SQL2008R2 server and install SQL2008 R2 database server. I have also enabled .Net 3.5 feature of windows 2008 R2.
Here is the feature selection page for SQL2008 R2.
Using default instance name.
Using system account for all the services that will be installed. (not as per the best practice)
Default Collation settings Latin1_General.
Used Mixed Mode authentication, as we will be again using SQL user account for database.
Once the setup is complete, set the memory consumption settings under Server properties / Memory. I set it to use 640MB as I am using only 1GB for this server.

Lets move to vCenter5 server, very 1st we will enable .Net 3.5 feature and Install SQL 2008 R2 Native Client x64 so what we can create a x64 bit DSN to connect to database on SQL2008R2, which is a requirement to connect vCenter to SQL.
If you check the ODBC / System DSN and create a new DSN you will not find the Native Client, for that you need to install it.

We will create the ODBC DSN later.
So, we have checked what we have got in hand..


Lets Move the Database now!!

At present virtual center database is served by a SQL 2005 server which is on x86 platform. We need to move it on SQL 2008 R2 x64 on x64 platform.

Let us go to SQL2005 server and detach the database.
Note: When you try to detach, you will see the Database is still in use. Check the Message column, it says “12 Active Connections”
This means the virtual center server is using the database, hence we need to stop the virtual center services before we move ahead.
Once the database is detached, it will not appear under databases section in left panel.

Now, browse to the location where the database files were located.
The default installation will save the files under C:\program files\Microsoft SQL server\MSSQL.1\MSSQL\Data
From here we need to copy VC_DB.mdf and VC_DB_log.ldf files to SQL 2008 R2 server.
On SQL2008R2 server, I copied the files to default location.

Open SQL Server Management studio on SQL2008R2 server and Attach the copied database.
As you can see, VC_DB database is attached.
If we check the Users folder we find user “VCDBUser” associated with the database, but it is not available under “Logins” folder.
Delete the User VCDBUser which is associated with database.
I will create the user VCDBUser with same password as I had before.

User “VCDBUser” with SQL Authentication and Default database set to VC_DB.
Now, we will create a ODBC DSN on vCenter5 Server.
Here you can see the Database that is selected by default is showing “VC_DB” coz we have associated the VCDBUser with this database, which is correct.
We have successfully moved the database from SQL 2005 to SQL2008 R2.


Virtual Center Server Configuration Backup

On Virtual Center server (vCenter4) insert vCenter DVD.
Create a directory named “DataMigration” on C Drive.
Browse the DVD and extract the content of found under D:\datamigration folder.
Start the Command Prompt with administrator rights and run Backup.bat.
If you get the error similar to this, that means the Command Prompt did not start with Full Administrator privilege.
Make sure to Right Click CMD and select Run As… and UNCHECKRun this program with restricted access
Now run Backup.bat again.
The backup is created successfully.
The Configuration backup is done!.

vCenter Server 5 Installation

Now, Copy DataMigration folder from Virtual Center server to vCenter5 server, put it on C drive.
On vCenter5 Server, run Command Prompt with administrator rights.
Put vCenter 5 DVD.

From CMD go to directory C:\DataMigration and run “Install.bat
It will prompt that the name of system is different than the original. type Y to continue.
It will prompt to enter the Path for media. Type D:\
Installation of vCenter will start.
Continue the setup, it will ask for ODBC DSN. Select the DSN from dropdown that we created before.
Enter the password for the username VCDBUser
Select “Upgrade existing vCenter server database
In production, you should put the Service Account username and password that you have created for vCenter service.
Continue with the setup. This takes time so be patience.
The Installation will continue with “vCenter Inventory Service”
Upgrade vSphere Client on XP/Win7 workstation using vCenter server 5.0 media.
That’s it. Smile.

Setup and Configure vSPhere Distributed Switch on vSphere 5.0

vSphere Distributed Switch which is referred as vDS functions as a single virtual switch across all associated ESXi hosts.

Like a vSwitch, virtual Distributed Switch provides connectivity to VMs as well as VM-Kernel interfaces.

vDS is connected to physical network via the NICs available on Host and thus these NIC’s acts as an “UpLinks” for our vDS.

To have a functioning vDS we need 2 ESXi Host and 2 NIC’s per Host.
In this Lab we have 2 Hosts and 2 NICs on each Host, 1 is an OnBoard NIC whereas an additional PCI-E NIC added. (
NIC Info)

Lets check the NICs on each host.
Select the Host and under “Configuration / Network Adapters” check for the available free NIC, Free in the sense that it is not associated to any vSwitch. You can see under the “Switch” column it says “None” whereas for the vmnic0 which is an onBoard NIC is connected to vSwitch0

Now we will go ahead to create a new vSphere Distributed Switch by going to “Networking” and selecting “New vSphere Distributed Switch” option.

Lets go through the wizard, where ever necessary I will explain the selected option.

For “Number of Uplink Ports” we will select ‘2’ . what we mean by selecting 2 is that we have 2 NIC (UpLinks) on each Host.
We will add the Hosts and connect the physical adapters to this vDS later.

We will create the “Port Group” later.

Once the wizard is complete we will have our 1st distributed switch named as “dvSwitch”.

We will rename the dvSwitch-DVUplinks-110 to “dvSwitch-DVUplinks” by selecting “Edit Settings” Image-0043

Now, let us rename the Uplinks, which will be helpful later.
Select the “dvSwitch” under “Configuration” select the “Settings” icon

Click “Edit Uplink Names” and lets name each uplink which will describe which NIC it is on our physical Host, Like I have named “OnBoard” and “PCI-E”

Now we will create the “Distributed Port Groups” Select “”New Port Group” and name the port group as “dv-VM-Network” and “Number of ports” as ‘128’
Which means there will be 128 ports associated with this port group.
We are not using any VLAN and hence will be “None” as default.


In case if you need to change Number of Ports or Name, you can go under “Edit Settings” options and do the changes.
In the “Summary” you will also find Total Ports and Available Ports which is helpful information which you start using this port group.

If you check the “Ports” tab you will see list of all Ports from 0-127.

Now we will add “Hosts” 
Select “dvSwitch / Add Host” and select appropriate NIC from each Host.
In case if you are confused which NIC to select (if you have more NICs) you can see “View Details…” link and check the NIC that you are using.

Next, the wizard will ask you to Migrate “Management Network” from vSwitch0 to a Port group on dvSwitch. we will not migrate for now.
so, keep the defaults as is and click Next.

In this section we will migrate VMs (Powered On and Powered Off) from vSwitch0 to dvSwitch. Under the “Destination Port Group” Column you can select the new Port Group (it’s a dropdown list)

You can see I am moving DC, Exchange Mailbox Server, Client Access Server, Hub Transport Server from “VM Network” Port Group which is on vSwitch0 to “dv-VM-Network” Port Group which is on dvSwitch. These VMs are currently Powered On on Host.
Also, I am moving a Powered Off VM i.e, INT-CA a RootCA VM.

Also, check the VC VM which is a “vCenter Server” I am not moving it at present, coz we are creating/configuring Distributed Switch on vCenter server, to avoid loss of connectivity I will move vCenter later.

There is also a “Vyatta Router” VM which have 3 vNICs (virtual NIC) from these I am moving 1 vNIC to “dv-VM-Network” Port Group.

From Host, I will be moving 1 vNIC of another “Vyatta Router” VM and a XP Client VM to new Port Group.

Here you will see all the VMs that we are migrating from vSwitch0 to dvSwitch.
Under vDS-DVUplinks you will see something strange. ie., The vmnic1 from both Hosts is shown under “OnBoard” uplink.
The Names that we have given to Uplink Group is Logical grouping, vSphere does not know which NIC is connected where (according to our naming).
How vsphere works is vmnic0 from each Host will goes under DVUplink1 and vmnic1 goes under DVUplink2 and so on…
In our case, vmnic0 which is an On-Board NIC is connected to vSwitch0 and which adding Host to dvSwitch we did not select vmnic0, we only selected vmnic1, when the time came to put vmnic under proper group, the only available vmnic was vmnic1 and that’s the reason why vmnic1 is shown under “OnBoard”.
We will correct this later. lets Finish this wizard and the dvSwitch is ready.

Check the Recent Tasks section at the bottom to see the updates going on.
The VMs network adapters are getting reconfigured and completed.
Check the “Summary” tab of any VM
Now lets correct the vmnic1 placement.
Go to the Host, under “Configuration” tab select “Networking” and click on “vSphere Distributed Switch” .
Click “”Manage Physical Adapters…” you will see vmnic1 under OnBoard, click “Remove”

Now Click on “Add NIC” and select vmnic1.
Repeat the same steps on other Host too..

Lets go and check the dvSwitch / Configuration. OK, so its as required.


Now its time to move “vCenter Server” to dvSwitch by going to the properties of vCenter VM and select the Network Adapter, select “dv-VM-Network” Port Group from dropdown list, and the VM is on dvSwitch.

**Moving Management Network (VMKernel Port) to dvSwitch**


Lets check the management network on both Hosts.
I have created a new Port Group on dvSwitch for VMKernel Port named “Mgmt-Network”

On dvSwitch / Configuration tab, select “Manage Hosts…” option and select both the Hosts.


Select “Mgmt-Network” as Destination Port Group from the dropdown.

Once completed, you can see the VMKernel Ports are available under “Mgmt-Network” and vmnic0 is listed under “OnBoard”.
As I explained before, vmnic0 falls under DVUplink1 (which we renamed to OnBoard) and it did.

Finally, All bits are now together and the final vSphere Distributed Switch is as shown below.