VMware Cloud Community
butlpau
Contributor
Contributor

Time on Client moves forward

Hi, strange one here. We are running ESX 3.5 v 123630 with a W2K3SP2 Server client.

Lets say the clock on the ESX host was incorrect by 3 months in the past. We noticed that after a reboot of the client, it sync'd with the ESX Server (as it was suppsoed to) and ended up being 3 months in the past too. Fair enough I hear you say, but....

We manually changed the time on the client Windows machine to the correct time (today) and unchecked the option under VMWare tools to sync with the ESX host.

If we then changed the time on the ESX host to the correct time (today) and reboot the client, the client date & time will move ahead by 3 months.

This happenned on one of our production systems before it went live (while Testing) and the date & time on the client stayed ahead for over a week. I am trying to replicate the issue on another vm test machine, and while I can make the time jump forward by the 3 months, it reverts back to the correct date and time shortly after booting - time sync is still turned off though.

Just wondering if anyone else has come across anything like this on your travels?

Many Thanks,Paul.

0 Kudos
3 Replies
mkmorrison
Contributor
Contributor

Odd problem, did you check the VMWare BIOS date? Hit on boot.

There are some instances where users have time-skew in VMware systems in which the client time ticks by slower than the host. This would result in a client being slower in most cases, your issue seems to be a time offset.

I assume you are not running this machine in an Active Directory network otherwise it would sync with the DC.

Try this site: Configuring Windows-based clients to synchronize time.

Or, just use a "net time" batch file in startup to synch to some other server in your domain.

Now I have one question, why were you running the Host machine 3 months in the past? Was this for testing? If you use Time Machine ( ) you could avoid this problem.

0 Kudos
ThompsG
Virtuoso
Virtuoso

Evening,

The guests (just like a real machine) read their time from the VMware BIOS before booting. This will be the time on the ESX host, no matter what option is selected on the VMware tools.

Your other problem is a head scratcher though. The time should stay ahead if the time on the ESX server was ahead when the VM booted. Couple of things to check:

1. Machine is not a member of a domain

2. If it is not a domain member does it have access to the internet?

3. VMware tools sync option is definitely off

If it is not one of the above then you have me at a lost too.

Kind regards,

Glen

0 Kudos
mkmorrison
Contributor
Contributor

Just an update,

We are now able to spoof the BIOS time on HyperV as well as in ESX, & VMware server to give the virtual machine whichever date in the future we want it to run.

One thing to remember, if the virtual machine is part of a domain it will either not be able to login or would auto-adjust it's time to match the domain date & time.  This process usually takes a few minutes.  The solution around this is to either run the virtual machine as a workgroup member, or deploy a testing AD server and launch it under the future date as well.  Plus, make sure you're not time syncing to an offsite NTP server, such as 1.north-america.pool.ntp.org.

With this you can easily setup a set of virtual machines that are all running N-months or years ahead of the real time.  This is extremely beneficial for groups wanting to forward date test applications or for instance run a sentinel virtual-instance of production that always stays 3 months ahead of "today" so you will know in plenty of time wether an application license will expire, if there are any trigger date problems (i.e. leap year, scripted time-bombs from dismissed admins, certificate expirations,etc..)

http://www.solution-soft.com/whitepapers/Hyper-V/TimeMachine_Hyper-V_guide.htm

0 Kudos