Important note for vSAN clusters: If the host is part of a vSAN cluster, the ATS heartbeats must NOT be disabled and can negatively impact the cluster and its data accessibility!
To resolve this issue, revert the heartbeat to non-ATS mechanisms by disabling ATS heartbeat on ALL hosts sharing the datastore where these errors are seen.
Notes:
- If you suspect that ATS Heartbeat may be causing an issue with array workload or IO responsiveness, engage with your storage vendor to determine if they recommend disabling this function.
- This change disables or enables using ATS primitive for creating or updating VMFS heartbeat and does not change ATS primitive configuration itself.
- These operations can be safely performed online, while the storage is in use.
- Disabling ATS heartbeat:
- Does not impact Acquiring a HB slot (starting heartbeat).
- Periodic/Routine heartbeat updates are affected by this change.
- Reverts the heartbeat related activity in the ESXi host using plain SCSI reads and writes to update its heartbeat on VMFS datastores.
Process to Revert Heartbeat to non-ATS mechanisms:
For VMFS5 and VMFS6 datastores:
To disable ATS heartbeat, run either the CLI command or the PowerCLI command
Command line:
esxcli system settings advanced set -i 0 -o /VMFS3/UseATSForHBOnVMFS5
PowerCLI:
Get-AdvancedSetting -Entity VMHost-Name -Name VMFS3.UseATSForHBOnVMFS5 | Set-AdvancedSetting -Value 0 -Confirm:$false
To enable ATS heartbeat, run either the CLI command or the PowerCLI command
Command line:
esxcli system settings advanced set -i 1 -o /VMFS3/UseATSForHBOnVMFS5PowerCLI:
Get-AdvancedSetting -Entity VMHost-Name -Name VMFS3.UseATSForHBOnVMFS5 | Set-AdvancedSetting -Value 1 -Confirm:$false
- This change takes effect immediately without reboot.
- This change does not affect ESXi host OS.
- The root node of these options is /VMFS3 regardless of the VMFS version. The last character of the option matches the corresponding VMFS version.
To review the changed options, run this command
esxcli system settings advanced list -o /VMFS3/UseATSForHBonVMFS
For example:
esxcli system settings advanced list -o /VMFS3/UseATSForHBonVMFS3
You see output similar to:
Path: /VMFS3/UseATSForHBOnVMFS3
Type: integer
Int Value: 0 <--- Check this value
Default Int Value: 0
Min Value: 0
Max Value: 1
String Value:
Default String Value:
Valid Characters:
Description: Use ATS for HB on ATS supported VMFS3 volumes
This reversion of VMFS heartbeat activity is preferred instead of globally disabling VAAI or ATS when using applicable storage systems. Although some storage systems require that the heartbeat-related activity be reverted to the legacy methodology, they still handle non-heartbeat-related ATS commands normally and there are dramatic performance and scale benefits to the use of ATS even if ATS should not be used for VMFS heartbeats.