These errors look similar but their causes are unrelated.
"VSSControl: Failed to prepare guest for freeze, wait timeout 900 sec"
Refers to VSS preparation, which consists largely of enumerating VSS writers, their components, and associated files and volumes. The timeout may be exceeded because of performance limitations of the VM guest, or because a specific writer is enumerating a very large number of files. This timeout is configurable.
"VSSControl: Failed to freeze guest, wait timeout"
Refers to the limit imposed by Microsoft VSS writers on the duration of a freeze. This timeout is not configurable. Veeam uses VSS to freeze applications immediately prior to creating the VMware snapshot, and then sends the thaw command as soon as snapshot creation is complete. VSS will only hold a freeze on the writers for up to 60 seconds (20 for Exchange), so several steps must fit within this timeframe:
- Verification of freeze state1
- Snapshot creation request via VIM API2
- Snapshot creation on the ESXi host
- Return of snapshot information via VIM API2
- Thaw request to Microsoft VSS1
- Thawing of VSS writers’ I/O
1 If a network connection to the guest OS is not available, VIX API will be used, which introduces additional latency.
2 These steps should usually be near-instantaneous, but if the vCenter is heavily loaded or has a high latency to the ESXi hosts, the delay may be significant.