VM Junkie

June 22, 2009

A Plea to VMware: Please add a timezone setting to ESXi

Filed under: esx, vmware — ermac318 @ 1:33 pm

So as ESXi 4.0 is becoming the new standard in our lab, we’re running into little annoyances here and there. The first of which is something that’s been a problem since ESXi was still called “ESX 3i” – ESXi has no ability to set a timezone. On the face of it, this doesn’t seem too critical, but this has a big impact on some environments.

First, we need to cover some background. Back in 1979 when MS-DOS was first shipped, no one could envision it being involved in a giant network of computers across different time zones, so it stored the hardware clock as local time. When Windows was released, it piggybacked off DOS for timekeeping. When Windows NT came out, they decided since people would be dual-booting between 16-bit Windows and NT, they needed to keep the same convention (having the hardware clock set to local time). When 2000 came out, because people might dual-boot….. ad-naseum. Windows 7 is coming out and still stores the hardware clock as local time. Almost all modern Unix-like operating systems store the hardware clock in universal time (UTC). This includes ESX server (and, by extension, ESXi).

Now, in ESX Server Classic, one of the options during the setup process is to assign the server a timezone. This is important because the UTC of the server + the TimeZone offset will be presented as the hardware clock to Guest Operating Systems which expect a hardware UTC clock (like Windows).

ESXi has no ability to assign it a timezone. This means that when you start up Windows systems, their clock is wrong (it’s UTC). You also can no longer rely on VMware Tools to perform timesync with the host OS, you must use NTP or some other method of time keeping. Obviously, in lab, test, and development environments this can be less than desirable.

Is there any way around this? Can Windows be forced to use UTC? Yes and no. There is a registry setting called “RealTimeIsUniversal” that supposedly helps, but it is buggy and doesn’t work properly in several instances in all current shipping versions of Windows. Supposedly, this will be fixed in Windows 7/Server 2008 R2, however this promise has been made before, and it doesn’t appear very high on Microsoft’s to-do list.

This is not an unusual problem for people. VMware – why can’t we set a TimeZone in ESXi, and then present this modified clock to “legacy” operating systems?



  1. and please please to the GUI function to generation certificate with new host names

    ESXi get hostname from dhcp or static, but certificate have the first names

    Comment by petr — June 23, 2009 @ 1:04 am

  2. I’m glad I’m not the only one who’s having this problem of windows servers having the wrong time upon booting. Not very practical, especially when they are domain controllers…

    Internally, in ESXi, there seems to be no /etc/localtime as in other linuxes 😦

    Comment by Ronny D'Hoore — October 24, 2009 @ 3:11 am

  3. Did anyone find a solution to set the timezone in ESXi. It´s a horrible bug!

    Comment by Tom — February 19, 2010 @ 3:46 am

  4. Bug still an issue in ESXi 4.1, I’m guessing they just don’t care.

    Very VERY annoying.

    Make something great, then poop on it.

    Comment by Tim C — September 22, 2010 @ 6:13 am

  5. Absolutely.

    This is problematic and forced me to implement an NTP kludge measure for my DC’s.

    Comment by spage — November 10, 2010 @ 2:26 pm

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

Blog at WordPress.com.

%d bloggers like this: