VM I/O performance degradation:
Starting with vSAN 6.7x we introduced a new esxcli option called esxcli vsan resync. This allows us to have more control over resync monitoring/throttling at the host level of a vSAN node without having to rely on RVC or UI
Open a SSH to the ESXi server in question and execute
- To validate current value
esxcli vsan resync throttle get > Get information about vSAN resync throttling
- To modify current value
esxcli vsan resync throttle set --level (Set vSAN resync throttle level in Mbps (integer in the range 0-512, 0 means no throttling) (required))
- Example output
esxcli vsan resync throttle set --level <0-512mb>
Note: These changes are applicable per host and not per cluster as in previous builds. No reboot is required for the changes to take effect
If the resync process is extremely slow, it is possible that bandwidth for resync traffic is being reduced due to resync throttling or heavy VM I/O on the system. Resync speed can be increased by reducing VM I/O and tuning throttling appropriately to balance VM I/O and Resync traffic. The other primary cause of slowness during resync operation is disk bottlenecking.
If a resync operation is causing a performance impact on the VM's in the cluster and throttling is disabled (as it is by default), the next step is to collect a performance data sample with Verbose and Network diagnostic mode via Perf Services for versions 6.7 and higher, and analyze the data to determine where the throughput bottleneck or latency is being introduced. More information on this process can be found in the below documentation.
Configure vSAN Performance Service