My VMware vSphere Upgrade saga started with my having to upgrade my PDC to support Windows 2008 as I discussed within Upgrading to vSphere – The Saga Starts. The next stage of the saga continues...
I am creating my VMware vCenter server as a virtual machine (VM) running Windows 2008 R2 with 64 bit hardware. Previously VMware vCenter was running on physical 32 bit hardware. Given this starting point there are several steps that need to occur to allow me to perform the upgrade while using my older data.
The first step is to migrate my data from my existing Windows 2003 server running MS SQL 2000 to the new Windows 2008 R2 VM running MS SQL 2008 SP1. Sounds easy enough, as there is an Import and Export Data tool that comes as part of MS SQL 2008 SP1. My attempts to use this however failed with it not being able to properly handle the Views that come as a part of the VMware vCenter tables specifically it failed on VPXV_HOST_FIELDS whether I was using 32 or 64 bit import tools with the following error:
Could not connect source component.
Error 0xc0202009: Source 153 - VPXV_HOST_FIELDS [210]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E07.Error 0xc02020e8: Source 153 - VPXV_HOST_FIELDS [210]: Opening a rowset for "[dbo].[VPXV_HOST_FIELDS]" failed. Check that the object exists in the database.
(SQL Server Import and Export Wizard)
So I tried to migrate from MS SQL 2000 to MS SQL 2008 R2 and could not even connect to the MS SQL 2008 server as MS SQL 2000 uses DTS while MS SQL 2008 uses SSIS.
The next attempt to copy the data was successful, the steps are to:
Now I was ready to install VMware vCenter 4.0 on my Windows 2008 R2 VM running MS SQL 2008 SP1. However, I first had to create a 32 bit ODBC DSN to speak to the migrated database tables. To do this run the following command:
C:\Windows\SysWOW64\odbcad32.exe
This is necessary as the default ODBC Data Source Administrator creates 64 bit DSNs which will not work with VMware vCenter Server 4.0 yet. Hopefully this will change.
However, the setup is not quite done, now copy the old vCenter SSL certificate folder to the appropriate location on the new server:
\\MSSQL2000Host\C$\Documents and Settings\All Users\Application Data\VMware\VMware Server\SSL C:\ProgramData\VMware\VMware VirtualCenter
The last item to do before you install VMware vCenter 4.0 is ensure the MS SQL 2008 Report Server is disabled as it lives on port 80 and vCenter requires this. To find this took using netsh from an administrative cmd.exe.
Once all these steps are taken, VMware vCenter 4.0 will install without any issues. However, after multiple reboots the VMware vCenter server did not start on boot, yet going in and starting it from window's services worked just fine. I traced the problem down to authentication between MSSQL and VMware vCenter. I fixed this by reinstalling the SQL server and ensuring that all the correct service credentials were in use as VMware vCenter requires the SQL Server Agent to be present. That had the wrong credentials.
For vCenter 4.0 to manage VMware VI3 hosts you need to hook vCenter 4.0 to your existing License Server, which is explained within vsp_4_legacy_host_lic.pdf documentation from VMware on page 2. Once this is done, all you need to do is reconnect the hosts within the new VMware vCenter 4.0 server.
I also have private vSwitches within my configuration, these are vSwitches not connected to a physical adapter and as such, vMotion does not work with them very well. To fix this problem, I add the following to C:\ProgramData\VMware\VMware VirtualCenter\vpxd.cfg before the final line:
<migrate>
<test>
<CompatibleNetworks>
<VMOnVirtualIntranet>false</VMOnVirtualIntranet>
</CompatibleNetworks>
</test>
</migrate>
You may also need this setting if you have AD issues or domain connection issues during service load time on your new vSphere vCenter host (I have these issues; due to using Samba as my DC).
<security>
<ignoreUserResolveFailures>true</ignoreUserResolveFailures>
</security>
Once this is done and saved, restart the VMware VirtualCenter Service.
Now we have to install the vSphere Client. I prefer to have a copy on my VMware vCenter server just in case. The install works just fine, however when you run the vSphere Client it fails. My good friend Simon has a great post on how to fix this for Windows 7, which also works for Windows Server 2008 R2.
Next: Upgrade some hosts
Virtualization expert Edward L. Haletky is the author of VMWare ESX Server in the Enterprise: Planning and Securing Virtualization Servers. He recently left HP, where he worked in the Virtualization, Linux, and High-Performance Technical Computing teams. Haletky owns AstroArch Consulting, providing virtualization, security, and network consulting and development. Haletky is also a Guru and moderator for the VMware discussion forums, providing answers to security and configuration questions.
Edward's latest book was selected as the March, 2011, book giveaway for Cisco Subnet.Read a chapter excerpt of VMware ESX and ESXi in the Enterprise: Planning Deployment of Virtualization Servers.