Sunday, October 5, 2014

Timekeeping in VMware Virtual Machines

It is very important guaranteed a time consistency of physical and virtual systems, for many reasons including logging, transaction integrity, authentication, establishing encrypted channels and overall network stability.
Because virtual machines work by time-sharing host physical hardware, they cannot exactly duplicate the timing activity of physical machines.
VMware virtual machines use several techniques to minimize and conceal differences in timing performance, but the differences can still sometimes cause timekeeping inaccuracies and other problems in software running in a virtual machine.
 For the most accurate timekeeping, configuring your guest operating system to use NTP, Windows Time Service, or other timekeeping utility suitable for your operating system. The time-synchronization option in VMware Tools can be used instead, but it is not designed for the same level of accuracy as these other tools.
 ! However, within any particular virtual machine you use either the VMware Tools time-synchronization option, or other timekeeping utility, but NOT both !
 Note that a VM will take the first data from the host were they boot from.
 By default, the VMware Tools daemon checks the guest operating system clock only once per minute.    
 ! If the guest operating system does not get enough CPU time to handle the number of Timer interrupts per second that it has requested, its clock falls behind real time.
 In certain cases, memory overcommitment that is too high or not configured properly can cause timekeeping problems.
 For achieving accurate timekeeping in Windows guest operating systems correctly configure time synchronization and avoid excessive CPU and memory overcommitment.
 It is best to use only one clock synchronization service at a time in a given virtual machine to ensure That multiple services do not attempt to make conflicting changes to the clock.
  So if you are using native Synchronization software, turn VMware Tools periodic clock synchronization off.
  The VMware Tools daemon corrects the guest operating system clock after reboot occur, even if periodic Time synchronization is turned off.

 Best Practices
 The first step in dealing with timekeeping issues is preventive: check that your host and virtual machine are Configured properly.
 ·         use the most recent release of your VMware product
 ·         use the most recent supported version of the guest operating system in each of your virtual machines.
 ·         Check that your host system is configured for the correct time and time zone. Check that it is running suitable clock synchronization software.
 ·         Check that VMware Tools is installed in your virtual machines. Even if you are not using VMware Tools periodic clock synchronization, the one-time clock corrections. In addition, the VMware Tools package includes specialized device drivers that improve overall performance of virtual machines, reducing CPU load and thereby indirectly helping timekeeping performance as well.
 ·         When using w32time or NTP in the guest, disable VMware Tools periodic time synchronization.
  
VMware Tools Time Synchronization and Configuration
To disable VMware Tools periodic time sync, use one of these options:
Deselect Time synchronization between the virtual machine and the host operating system in the VMware Tools toolbox GUI of the guest operating system.
OR
Run the VMwareService.exe -cmd "vmx.set_option synctime 1 0" command in the guest operating system. VMwareService.exe is typically installed in C:\Program Files\VMware\VMware Tools.
 Note:
 If the virtual machine is attached to a domain, but the host machine is not, the virtual machine synchronizes time with the domain controller irrespective of the options selected in tools. This prevents login issues if the virtual machine's time is significantly different than the domain controller. You must adjust the time of the domain controller or remove the virtual machine from the domain controller to maintain a specific time within the virtual machine.

Timekeeping in VMware Virtual Machines:
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1318
http://www.vmware.com/files/pdf/techpaper/Timekeeping-In-VirtualMachines.pdf

VMware recommends using following registry values when modifying properties:
http://www.vladan.fr/time-keeping-for-windows-vms-best-practices/

No comments:

Post a Comment