Inhoud

Inleiding

Achtergrondinformatie

Tijdelijke oplossing

Op vCenter Server voor Windows

Op de vCenter Server-applicatie

Inleiding

In dit document wordt het probleem beschreven van de mislukking van de registratie van HyperFlex vCenter na de VCSA-certificeringsregeneratie.

Na de regeneratie/vervanging van het certificaat op vCenter Server is de EAM-service niet op de hoogte van het nieuwe certificaat en kan ze niet inloggen.

Bijgedragen door Ignacio Orozco, Cisco TAC Engineer.

Achtergrondinformatie

Wanneer u probeert het Hyperflex-cluster opnieuw te registreren in vCenter na de regeneratie/vervanging van het vCenter-certificaat, ziet u deze fout:

"Verbindingsfout tussen vCenter en ESX Agent Manager (EAM). Start vanuit vSphere de EAM-services opnieuw op. Klik vervolgens op Cluster opnieuw proberen maken."

In stMgr.log ziet u dit:

017-12-20-21:51:17.015 [opId=6b747f93e3224869, operationId=6b747f93e3224869.6b747f93e3224869<:6b747f93e3224869] [pool-4-thread-2] ERROR c.s.s.v.VirtPlatformImpl$ - ESX Agent Manager error

java.rmi.RemoteException: VI SDK invoke exception:; nested exception is:

com.vmware.eam.NoConnectionToVCenter

at com.vmware.vim25.ws.WSClient.invoke(WSClient.java:157) ~[vijava-eam-5.5.6sp.jar:na]

at com.vmware.eam.ws.EamService.queryAgency(EamService.java:144) ~[vijava-eam-5.5.6sp.jar:na

In het VCSA: /var/log/vmware/eam/eam.log file OR the VC on Windows server C:\ProgramData\VMware\vCenterServer\logs\eam\eam.log file for the ESX Agent Manager (EAM), ziet u items vergelijkbaar met:

YYYY-MM-DDTHH:MM:SS.MSZ |  INFO | eam-0 | VcConnection.java | 167 | Connecting to vCenter as com.vmware.vim.eam extension

YYYY-MM-DDTHH:MM:SS.MSZ |  INFO | eam-0 | VcConnection.java | 603 | Connecting to https://vCenter_Server_FQDN:8089/sdk/vimService via vCenter proxy http://localhost:80

YYYY-MM-DDTHH:MM:SS.MSZ | DEBUG | http-bio-0.0.0.0-15005-exec-1 | AllowAllSamlTokenPolicy.java | 24 | HealtStatus request's token subject name: machine-7502fb4c-3521-48c7-93ed-3d1865e0fff1, subject domain: vsphere.local

YYYY-MM-DDTHH:MM:SS.MSZ | ERROR | eam-0 | VcConnection.java | 179 | Failed to login to vCenter as extension. vCenter has probably not loaded the EAM extension.xml yet.: Cannot complete login due to an incorrect user name or password.

YYYY-MM-DDTHH:MM:SS.MSZ |  WARN | eam-0 | VcListener.java | 114 | Trying to recover from error

(vim.fault.InvalidLogin) {

faultCause = null,

faultMessage = null

}

at sun.reflect.GeneratedConstructorAccessor82.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at java.lang.Class.newInstance(Unknown Source)

at com.vmware.vim.vmomi.core.types.impl.ComplexTypeImpl.newInstance(ComplexTypeImpl.java:173)

at com.vmware.vim.vmomi.core.types.impl.DefaultDataObjectFactory.newDataObject(DefaultDataObjectFactory.java:26)

at com.vmware.vim.vmomi.core.soap.impl.unmarshaller.ComplexStackContext.

(ComplexStackContext.java:31)

at com.vmware.vim.vmomi.core.soap.impl.unmarshaller.UnmarshallerImpl$UnmarshallSoapFaultContext.parse(UnmarshallerImpl.java:141)

at com.vmware.vim.vmomi.core.soap.impl.unmarshaller.UnmarshallerImpl$UnmarshallSoapFau

Tijdelijke oplossing

Referentiedocument: https://kb.vmware.com/s/article/2112577

Op vCenter Server voor Windows

1. Maak verbinding met vCenter Server via een console of externe desktopsessie.

2. Open een verhoogde opdrachtprompt.

3. Maak een tijdelijke map met de naam c:\certificate.

4. Voer deze opdracht uit om het gebruikerscertificaat en de sleutel voor de vpxd-extensie oplossing op te halen:

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry getcert --store vpxd-extension --alias vpxd-extension --output c:\certificate\vpxd-extension.crt

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry getkey --store vpxd-extension --alias vpxd-extension --output c:\certificate\vpxd-extension.key

5. Navigeren naar C:\Program Files\VMware\vCenter Server\vpxd\scripts:

cd C:\Program Files\VMware\vCenter Server\vpxd\scripts

Opmerking: Het weergegeven pad is voor een standaardinstallatie van vCenter Server. Als u de installatielocatie van vCenter Server hebt aangepast, moet u de directory dienovereenkomstig wijzigen.

6. Voer deze opdracht uit om het certificaat van de extensie bij te werken met vCenter Server:

"%VMWARE_PYTHON_BIN%" updateExtensionCertInVC.py -e com.vmware.vim.eam -c C:\Certificate\vpxd-extension.crt -k C:\Certificate\vpxd-extension.key -s localhost -u Administrator@domain.local

Opmerking: De standaardgebruiker en het domein zijn administrator@vsphere.local. Als dit tijdens de configuratie is gewijzigd, wijzigt u het domein in overeenstemming met uw omgeving.

7. Voer het lokale wachtwoord van Administrator@domain.local in als hierom wordt gevraagd.

8. Ga naar de map C:\Program Files\VMware\vCenter Server\bin:

cd C:\Program Files\VMware\vCenter server\bin

9. Start de VMware ESX Manager-service opnieuw met deze opdrachten:

- Service Control —stop EsxAgentManager

- service-control —start EsxAgentManager

Op de vCenter Server-applicatie

1. Log in op de vCenter Server-applicatie met SSH.

2. Voer deze opdracht uit om toegang tot de Bash-shell mogelijk te maken:

shell.set --enabled true

3. Typ shell en druk op Enter.

4. Voer deze opdracht uit om het gebruikerscertificaat en de sleutel voor de vpxd-extensie oplossing op te halen:

mkdir /certificate

/usr/lib/vmware-vmafd/bin/vecs-cli entry getcert --store vpxd-extension --alias vpxd-extension --output /certificate/vpxd-extension.crt

/usr/lib/vmware-vmafd/bin/vecs-cli entry getkey --store vpxd-extension --alias vpxd-extension --output /certificate/vpxd-extension.key

5. Voer deze opdracht uit om het certificaat van de extensie bij te werken met vCenter Server.

python /usr/lib/vmware-vpx/scripts/updateExtensionCertInVC.py -e com.vmware.vim.eam -c /certificate/vpxd-extension.crt -k /certificate/vpxd-extension.key -s localhost -u Administrator@domain.local

Opmerking: De standaardgebruiker en het domein zijn Administrator@vsphere.local. Als dit tijdens de configuratie is gewijzigd, wijzigt u het domein in overeenstemming met uw omgeving. Typ desgevraagd het wachtwoord Administrator@domain.localpassword.

6. Start de VMware ESX Manager-service opnieuw met deze opdrachten:

service-control --stop vmware-eam

service-control --start vmware-eam