Issue is resolved in NSX 6.4.2 and NSX 6.3.7. If you are unable to upgrade, please consult the steps below to correct the problem:
The resolution is to use an API call to delete all of the unused certificates, whose <certificateType> is undefined.
To get all of global certificates, you can call "GET api/2.0/services/truststore/certificate/scope/globalroot-0".
To delete a specified certificate, you can call "DELETE https://localhost/api/2.0/services/truststore/certificate/
<certificate-id>".Example:
1. Confirm certificates whose <certificateType> is undefined.
$ curl -k -u 'admin:
<password>' -X GET https://
<nsxmgr-ip>/api/2.0/services/truststore/certificate/scope/globalroot-0 | xmllint --format - | egrep 'objectId|certificateType|certificate'
<certificates>
<certificate>
<objectId>certificate-1</objectId>
<certificateType>certificate_self_signed</certificateType>
</certificate>
<certificate>
<objectId>certificate-2</objectId>
<certificateType>certificate_self_signed</certificateType>
</certificate>
<certificate>
<objectId>certificate-11</objectId>
</certificate>
</certificates>
2. Then, you should delete
certificate-11 because it doesn't have
<certificateType>.$ curl -k -u 'admin:
<password>' -X DELETE https://
<nsxmgr-ip>/api/2.0/services/truststore/certificate/
certificate-11$ curl -k -u 'admin:
<password>' -X GET https://
<nsxmgr-ip>/api/2.0/services/truststore/certificate/scope/globalroot-0 | xmllint --format - | egrep 'objectId|certificateType|certificate'
<certificates>
<certificate>
<objectId>certificate-1</objectId>
<certificateType>certificate_self_signed</certificateType>
</certificate>
<certificate>
<objectId>certificate-2</objectId>
<certificateType>certificate_self_signed</certificateType>
</certificate>
</certificates>
Workaround:
If the issue still exists after deleting all the "undefined" certificates, please open a Support Request with NSX support for further assistance.