When there is a connectivity issue while reaching an NTP server from an ESXi host, the system clock
on the ESXi host might experience a significant drift.
Upon executing the vsish command vsish -e get /system/ntpclock/clockData, a large negative value is recorded in the adjtime field.
NTP clock data {
Clock state:0
Clock status:0x00002001
TAI offset:0
Maximum error (usec):655420
Estimated error (usec):349
Poll shift:6
Time offset (nsec):-143603
Freq offset (nsec/sec):12888
adjtime() (usec):-309237290312 <<<<<<
tick adjustment (nsec/sec):-4987251
Ref timer freq (cycles/sec):2399998000
Known issue on ESXi 7.0 U3 and later.
This issue has been fixed in ESXi 7.0 Update 3o, ESXi 8.0 Update 1d and ESXi 8.0 Update 2.
Workaround:
To address this issue, one of the following workarounds can be implemented:
vsish -e set /system/ntpclock/clockData 1
Verify that the correct value has been set in the adjtime() function by executing the following command:
vsish -e get /system/ntpclock/clockData
NTP clock data {
Clock state:0
Clock status:0x00000040
TAI offset:0
Maximum error (usec):503000
Estimated error (usec):500000
Poll shift:3
Time offset (nsec):0
Freq offset (nsec/sec):0
adjtime() (usec):0 <<<<<
tick adjustment (nsec/sec):0
Ref timer freq (cycles/sec):2399998000
}
Failure to synchronize with the NTP server due to loss of connectivity leads to time drift on ESXi hosts. If the connectivity issue is temporary and subsequently resolved, time drift will be corrected eventually.