GET https://<mgr-ip>/api/v1/fabric/discovered-nodes
Logs show this:
2023-03-01 15:26:39,476 ERROR [LCM] [lcm-node-0] c.v.l.c.b.BatchUpgrade [BatchUpgrade.java:1280] Attempt 2/3 of vSAN access exception. but failed with error: com.vce.lcm.exception.LCMException: Upgrade cannot continue because the NSX VIB is an incompatible version on host
2023-03-02T12:10:19.773Z ERROR task-executor-11 VcHostIssueResolveHandler 4243 FABRIC [nsx@6876 comp="nsx-manager" errorCode="MP26044" level="ERROR" subcomp="manager"] Repair failed. java.lang.IllegalArgumentException: Illegal base64 character d
NSX-T is unable to accept hosts certificates which has \n within the certificate.
This is a known issue affecting NSX-T 3.2.2 and above and is planned to be fixed in future release.
Workaround:
Remove from the certificate on the affected ESXi host.
Steps:
1. Remove character from the host ESXi certificate
(A). You can use any opensource tool like dos2unix to change the cert format and then replace the host certificate present at location /etc/vmware/ssl/rui.crt and then restart the services.
OR you can perform the below steps
(B). Login ssh to each ESXi that we need to fix;
cat -v /etc/vmware/ssl/rui.crt
cp /etc/vmware/ssl/rui.crt /etc/vmware/ssl/rui_old.crt
sed 's/$//' /etc/vmware/ssl/rui.crt > /etc/vmware/ssl/rui_new.crt
rm -f /etc/vmware/ssl/rui.crt
mv /etc/vmware/ssl/rui_new.crt /etc/vmware/ssl/rui.crt
cat -v /etc/vmware/ssl/rui.crt
services.sh restart
2. Wait for few minutes and verify that is removed. You can use below API to verify if certificate is updated correctly.
GET https://<mgr-ip>/api/v1/fabric/discovered-nodes
3. Remove NSX from the cluster where hosts are stuck at 0%
4. Configure NSX again
Hosts which are already prepared prior to upgrade to 3.2.2 , with \n in certificates don’t have any issues.
Impact/Risks:
Unable to add / prepare host for NSX-T