Problema A seguito delle operazioni di convergenza del domino Single Sign-On di una PSC esterna a una singola Virtual Machine vCenter ed Embedded Platform Services Controller si è verificata l'impossibilità di accedere via web all'Appliance VxRail Manager, con qualsiasi utenza registrata. Nello specifico l'utenza amministrativa administrator@vsphere.local visualizzando il seguente messaggio di errore ....
Authentication could not be completed due to network connectivity problems.
Sembra che la VxRail Manager Appliance non sia più connessa al vCenter Server. Soluzione WARNING: Procedures described below are not officially supported. Procedures can be performed ONLY with supervision of technical support DELL EMC. Use it at your own risk. Connessi in SSH sulla VxRail Manager Appliance (VRM) con l'utenza mystic diventare root e procedere come indicato di seguito ...
-
analizziamo i log
vxrailserver:/home/mystic # find / -iname web.log
vxrailserver:/home/mystic # cat /var/log/mystic/web.log
quello che possiamo riscontrare è che la VRM sta tentando di accedere al vCenter (nel mio caso indicato come vCenter.FQDN) cercando di ottenere un token sso dalla PSC (nel mio caso indicato come vpsc.FQDN) per l'utenza management@vsphere.local. In questo caso, vpsc.FQDN è la vecchia PSC esterna non più disponibile.
2019-09-09T08:07:53.266+0200 INFO [myScheduler-8] com.vce.commons.core.services.ConnectionHelper ConnectionHelper.refreshConnection:34-- VC connection timed out, reconnecting. 2019-09-09T08:07:53.601+0200 INFO [myScheduler-8] com.vce.commons.core.services.ConnectionHelper ConnectionHelper.refreshConnection:36 - Connecting to virtualcenter.FQDN username management@vsphere.local 2019-09-09T08:07:53.266+0200 INFO [myScheduler-8] com.vce.commons.core.connection.misc.ConnectionUtils ConnectionUtils.getSsoUrl:124 - Trying to obtain sso token from: https://vpsc.FQDN/sts/STSService/vsphere.local 2019-09-09T08:07:56.412+0200 ERROR [myScheduler-8] com.vce.commons.core.connection.services.ConnectionFactoryImpl ConnectionFactoryImpl.createVCConnection:94 - unable to connect to VCcom.sun.xml.ws.client.ClientTransportException: HTTP transport error: java.net.NoRouteToHostException: No route to host (Host unreachable)
- verifichiamo le impostazione presenti nella tabella "settings" del database ... vxrailserver:/home/mystic # psql -U postgres mysticmanager mysticmanager=# select * from settings; Come possiamo notare nell'immagine precedente, le impostazioni fanno riferimento alla vecchia PSC (vpsc.FQDN).
- e della tabella "management_account" ... mysticmanager=# select * from management_account; Anche in questo caso si fa riferimento alla vecchia PSC. Prendiamo nota dell'id corrispondente alla riga con component=PSC; nel mio caso ID=5.
-
Non fanno eccezione le impostazioni presenti nel file "runtime.properties"; che fanno sempre riferimento alla vecchia PSC.
vxrailserver:/home/mystic # find / -iname runtime.properties vxrailserver:/home/mystic # cat /var/lib/vmware-marvin/runtime.properties
- generiamo nuovamente la password associata all'utente manager@vsphere.local. vxrailserver:/home/mystic # echo -n "<password>" | openssl bf-ecb -nosalt -K $(xxd -p < /etc/vmware-marvin/password.key) | xxd -p prendiamo nota della nuova password cifrata....
-
editare il file runtime.properties tramite il comando .....
vxrailserver:/home/mystic # vi /var/lib/vmware-marvin/runtime.properties e sostituire, le righe data.vcenter.pscHost=vpsc.FQDN con data.vcenter.pscHost=virtualcenter.FQDN #(1) Nuova PSC interna al vcenter e data.managementPassword=blowfish\:bffe...........df8aa0 con data.managementPassword=blowfish\:3bfa...........2a9e34 #(2) chiave generata in precedenza
-
infine aggiornare le tabelle settings ed management_account del database nel modo seguente ...
vxrailserver:/home/mystic # psql -U postgres mysticmanager mysticmanager=# update settings set psc_ip='virtualcenter.FQDN';mysticmanager=# update management_account set host='virtualcenter.FQDN' where id=5; mysticmanager=# update management_account set password='3bfa...........2a9e34' where id=5;
- aggiorniamo la pagina Web e verifichiamo l'accesso .....
That's it.