The vVOL datastore may report as inaccessible for the ESXi host.
[root@ESXI:~]# esxcli storage vvol vasaprovider list
PureNorth-ct0
VP Name: VPNAME-ct0
URL: https://x.x.x.x: port
Status: syncError
Arrays:
Array Id: com.vpstorage:caxx72ba-d1e3-zxd6a-9a8f-388982afd324
Is Active: true
Priority: 200
In the vvold.log, you see the errors:
--> PeerThumbprint: XX:F2:X8:7D:EX:49:57:XX:D2:XX:59:CA:93:64:61:B1:13:FC:X:17
--> ExpectedThumbprint:
--> ExpectedPeerName: x.x.x.x >>>>><Storage_IP>
--> The remote host certificate has these problems:
-->
--> * unable to get local issuer certificate, using default
<Timestamp> info vvold[2099841] [Originator@6876 sub=Default] VasaSession::Initialize url is empty
<Timestamp>warning vvold[2099841] [Originator@6876 sub=Default] VasaSession::DoSetContext: Empty VP URL for VP (VPNAME-ct0)!
<Timestamp> info vvold[2099841] [Originator@6876 sub=Default] Initialize: Failed to establish connection https://x.x.x.x:8XX4
<Timestamp> error vvold[2099841] [Originator@6876 sub=Default] Initialize: Unable to init session to VPNAME-ct0 state: 0
<Timestamp> info vvold[2099817] [Originator@6876 sub=Default] VasaSession::GetEndPoint: with url https://x.x.x.x:8XX4
<Timestamp> warning vvold[2099817] [Originator@6876 sub=Default] VasaSession::GetEndPoint: failed to get endpoint, err=SSL Exception: Verification parameters:
--> PeerThumbprint: XX:XX:XX:7D:E7:XX:57:XX:D2:47:59:XX:93:XX:61:X1:13:FC:EB:17
--> ExpectedThumbprint:
--> ExpectedPeerName: x.x.x.x
--> The remote host certificate has these problems:
-->
--> * unable to get local issuer certificate, using default
------------------------------------<Timestamp> info vvold[2099843] [Originator@6876 sub=Default] CacheManager::CacheCleanUp [FriendlyNameCache] Periodic cache hits:0 Periodic cache calls:0 Periodic cache hit rate:0 %total cache hits:0 total cache calls:0 total cache hit rate:0 % maxLifetimeCap:false
Config.HostAgent.ssl.keyStore.allowSelfSigned False You can add non-CA (non-CRL Signed) self-signed certificates to the ESXi trust store, that is, certificates that do not have the CA bit set.
Config.HostAgent.ssl.keyStore.allowSelfSigned True it allows an ESXi host to accept any certificate in the trust store. (This option allows both non-CA & CA)
5. First check the Storage Providers in vCenter for the Array and vVol Datastore in question and ensure they are both online and in sync. If the storage providers are offline or out-of-sync, try to delete/un-register the providers & then manually register both CT0 and CT1 Storage Providers.
NOTE: Removing and registering storage providers in vCenter is not impactful to the vVol Data Path. Existing VMs running on vVol datastore will continue to run.
Refresh the Certificates for both Storage Providers (Standby/Active)
6. When the VASA provider is in syncError and the PE is not showing up in the esxcli storage vvol protocolendpoint / esxcli storage vvol protocolendpoint list or the host GUI, first refresh the storage provider certificates, run through vvold ssl_reset and restart the vvold service. Resetting and restarting the vvold service doesn't impact the host services and can be executed without putting the host in maintenance mode.
/etc/init.d/vvold ssl_reset && /etc/init.d/vvold restart (Not required for ESXi 7.0.3)
7. Renew and Refresh CA Certificates on each host showing 'Empty VP URL for VP' in the vvold log.
From the ESXi host CLI and HTML client follow these steps respectively when applicable:
If the PEs are still not visible after following the steps above, check and remove expiring certificates.
Manually reviewing certificates in VMware Endpoint Certificate Store for vSphere 6.x and 7.x (2111411)
root@vCenter [ ]# /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store TRUSTED_ROOTS --text | egrep 'Alias|Key Usage' -A 1 | grep -v "Entry type"
Removing Expired CA Certificates from the TRUSTED_ROOTS store in the VMware Endpoint Certificate Store(VECS) (2146011)
NOTE: Offline IOFilters showing under Storage Providers of vCenter belonging to ESXi hosts doesn't impact Protocol Endpoints visibility
This issue is being checked by Diagnostics for VMware Cloud Foundation.
The check is as follows: