Problem att installera VMware vCenter 5.5: Error 29113

Idag tänkte jag ta upp ett problem jag råkade ut för i mitt hemmalab som resulterade i Error 29113. Bakgrunden är att i hemmalabbet ville jag ha några virtuella ESXi hostar, Domänkontrollant samt vCenter. Eftersom det är en enkel och liten miljö endast tänkt för test/lab så ville jag lägga alla vCenter beroenden på samma server (Single Sign On, Inventory service, Web Client) som vCenter servern. Dessutom ville jag använda Windows vCenter istället för vCenter Server Appliance.

Så vi börjar installation av vCenter server, väljer Simple installation – alla delarna installeras på samma server:

(Bild saknas)

Installationen startar med Single Sign On, som installeras utan problem.

Fortsätter med installationen av Web Client men får felmeddelande om att något gått snett:

(Bild saknas)

Så låt oss titta på de olika alternativen som ovanstående bild visar. Felsökning påbörjas, vi börjar uppifrån och går ner:

-Verify that the certificate file specified in vcsso.properties is valid.

Filen vcsso.properties ligger som standard på en Windows 2008 installation i katalogen:

C:\ProgramData\VMware\VMware VirtualCenter\ssl

Eftersom vCenter ännu inte blivit installerad saknas katalogen helt och ingen fil finns tillgänglig att verfiera. En sökning på disk visar inte heller något resultat, filen finns inte på servern.

(Bild saknas)

-Verify that the clocks on the Single Sign On system and the vSphere Web Client system are in sync.

Eftersom det är en simple install så läggs både Web Client och Single Sign On på samma server, men för säkerhets skull verfierar jag att klockan på domän kontrollanten och vCenter servern är i synk, vilket de är.

-Check the vm_ssoreglog in the system temporary folder for more details on the error.

Vi tar upp filen och kollar innehållet. Filen innehåller en del information:


[2013-10-13 09:57:15,154 main  DEBUG com.vmware.vim.install.cli.RegTool] $Id: //depot/vicore/vicore-2013-rel/regtool/viregtool/src/main/java/com/vmware/vim/install/cli/RegTool.java#4 $
[2013-10-13 09:57:15,156 main  DEBUG com.vmware.vim.install.cli.RegTool] Executing command: checkVersion -d https://VCENTER_VS.vclass.local:7444/lookupservice/sdk –version-number 1.5
[2013-10-13 09:57:15,200 main  INFO  com.vmware.vim.install.impl.RegistrationProviderImpl] Intializing registration provider…
[2013-10-13 09:57:15,741 main  DEBUG com.vmware.vim.install.impl.LookupServiceAccess] Creating VMODL client for LookupService
[2013-10-13 09:57:15,743 main  INFO  com.vmware.vim.install.impl.CertificateGetter] Getting SSL certificates for https://VCENTER_VS.vclass.local:7444/lookupservice/sdk
[2013-10-13 09:57:17,234 main  DEBUG com.vmware.vim.install.impl.CertificateGetter] Establishing socket connection to VCENTER_VS.vclass.local/192.168.0.240:7444. Timeout is 60000
[2013-10-13 09:57:17,566 main  ERROR com.vmware.vim.install.cli.commands.CommandArgumentsParser] Host name may not be null
[2013-10-13 09:57:17,567 main  INFO  com.vmware.vim.install.cli.RegTool] Return code is: InvalidInput
[2013-10-13 09:57:17,940 main  DEBUG com.vmware.vim.install.cli.RegTool] $Id: //depot/vicore/vicore-2013-rel/regtool/viregtool/src/main/java/com/vmware/vim/install/cli/RegTool.java#4 $
[2013-10-13 09:57:17,942 main  DEBUG com.vmware.vim.install.cli.RegTool] Executing command: checkVersion -d https://VCENTER_VS.vclass.local:7444/lookupservice/sdk –version-number 1.5 -c C:\Users\ADMINI~1.VCL\AppData\Local\Temp\1\{0A94097F-6DE2-484D-A2B2-ADAF51CC3FDF}\certs\
[2013-10-13 09:57:17,986 main  INFO  com.vmware.vim.install.impl.RegistrationProviderImpl] Intializing registration provider…
[2013-10-13 09:57:18,564 main  DEBUG com.vmware.vim.install.impl.LookupServiceAccess] Creating VMODL client for LookupService
[2013-10-13 09:57:18,568 main  INFO  com.vmware.vim.install.impl.CertificateGetter] Getting SSL certificates for https://VCENTER_VS.vclass.local:7444/lookupservice/sdk
[2013-10-13 09:57:19,053 main  DEBUG com.vmware.vim.install.impl.CertificateGetter] Establishing socket connection to VCENTER_VS.vclass.local/192.168.0.240:7444. Timeout is 60000
[2013-10-13 09:57:19,396 main  ERROR com.vmware.vim.install.cli.commands.CommandArgumentsParser] Host name may not be null
[2013-10-13 09:57:19,398 main  INFO  com.vmware.vim.install.cli.RegTool] Return code is: InvalidInput

En del av informationen är info och debugrelaterat, men det finns några Error meddelande som säger att Host name may not be null, dock så finns det ju faktiskt ett namn på servern så det kan det väl inte vara? Om vi blickar tillbaka till punkten då servern lades till i MS domänen så fick man ett meddelande som angav att namnet inte var lämpligt (i mitt fall vCenter_VS):

(Bild saknas)

Men i labmiljön använder jag Microsoft DNS server så det borde funka?

Slutligen får man rådet att besöka VMware knowledge base och söka efter feler ”Error 29113”.

Rubriken för KB artikeln är ”Upgrading to vCenter Server 5.1 fails with the error: Certificate already expired”. Eftersom vi inte gör en uppgradering så är problemet inte riktigt relaterat till KB artikeln, men den pekar åtminstone på att man ska verifiera vcsso.properties igen men hänvisar till en annan katalog.

Note: The vcsso.properties file is located at C:\Program Files\VMware\Infrastructure\VirtualCenter Server\ssoregtool\.

Den visar sig vara lika tom som förra katalogen:

(Bild saknas)

När det ursprunliga felmeddelande klickas bort kommer följande meddelande: Fields cannot be blank.

Och det ursprungliga felmeddelandet presenteras på nytt:

(Bild saknas)

Därefter avinstalleras tjänsten och ett meddelande hänvisar till manuell installation istället:

(Bild saknas)

Så då fortsätter vi med en manuell installation av Web Client och ser om vi kan testa några saker:

(Bild saknas)

Eftersom vi hade ett fel tidigare i vm_ssoreg.log filen som indikerade problem med hostname så gör vi ett test att använda IP adressen till Lookup Service URL istället för FQDN för att se om det kan vara problemet:

(Bild saknas)

Även denna gång misslyckas installationen, men ett nytt felmeddelande visas som hänvisar till KB artikel 29102.

(Bild saknas)

Inte heller det är relaterad till vårt problem, det handlar om att servernamn som innehåller ”port” ersätts med ”portNumber” och föreslår att man inte ska döpa servern med namn som innehåller port (exempelvis en server som döps till ”support” kommer att fallera på grund att någonstans i uppgraderingskoden finns en ”search & replace” funktion som ändrar strängnamn ”port” till ”portNumber” och som en följd blir servernamnet i vårt exempel till ”supportNumber” istället Problem att installera vCenter 5.5: Error 29113 )

To work around this issue when you do not want to upgrade, ensure that vCenter Server and the database server FQDNs do not contain the string port in the name.

Problemet verkar uppenbarligen vara relaterat till någon form av namnuppslag. Även om servernamnet inte var enligt best practise så skulle det ändå inte vara ett problem så länge man använde sig av Microsoft DNS, vilket jag gör. Men för att testa tesen så byter vi namnet på vCenter servern och ersätter understrykningstecknet med ett bindestreck istället (från vCenter_VS till vCenter-VS alltså).

Sen för enkelhetens skull avinstalleras Single Sign On och installeras igen så vi är säkra på att det ändrade namnet är uppdaterat överallt.

Därefter installeras alla tjänsterna utan problem.

(Bild saknas)

Specialtecken i servernamn kan alltså ställa problem som resulterar i inte helt uppenbara felmeddelande. Det man ska undvika då man namnger servrarna är enligt KB artikel 2041856 (som även hänvisar till Microsoft KB artikel 909264) följande:

  • comma (,)
  • tilde (~)
  • colon (:)
  • exclamation point (!)
  • at sign (@)
  • number sign (#)
  • dollar sign ($)
  • percent (%)
  • caret (^)
  • ampersand (&)
  • apostrophe (‘)
  • period (.)
  • parentheses (())
  • braces ({})
  • underscore (_)
  • white space (blank)