In our vCloud Director 5.5 instances I’ve noticed that all of our Windows VMs that are sysprepped by vCloud Director have their time zones set to GMT Standard Time.
VMs in vCloud Director will be sysprepped if “Changed SID” is enabled. “Enable guest customization” must be selected as well for any guest customization to occur.
After the guest are customized the time zone resets from the original time zone to the following:
vCloud Director syspreps the VMs by injecting an unattend.xml file into the guest and passes this file to sysprep. Here is the time zone section of this unattend.xml file in VM that was sysprepped by vCloud Director:
Prior to vCloud Director 5.5, the unattend.xml file was on the vCloud Director cells, but I was unable to find it on vCloud Director 5.5 cells. I was thinking that I could perhaps edit the unattend.xml file on cell and correct the problem.
I imagine this issue could be solved several different ways, but for now I decided to edit the customization script and have it set the time zone correctly. We use vCenter Orchestrator to build the customization script, but here is a simple example that sets the time zone to “Mountain Standard Time”.
if "%1%" == "precustomization" ( goto end ) else if "%1%" == "postcustomization" ( tzutil /s "Mountain Standard Time" ) :end
This is a temporary fix until VMware can resolve the issue. I’ve submitted a service request to them and will update this post when I receive an answer.
Please let me know what you find out – This has been frustrating for me as well. I have opened a Support Request with VMware as well. I am not sure why they don’t open more customization within vCloud Director.
At first they sent me the link http://kb.vmware.com/kb/2062098, but this is only mentioning vCenter. I asked for clarification and they said the issue is also affecting vCloud Director and will be resolved in the next release. By looking at the customization files on the vCloud cells and the guests, it looks like a lot was changed and it appears that this time zone issue was introduced.
I’d be interested if you get a different answer than I did.
Interesting – the article references changing the specification XML which would be perfect, except vCloud Director appears to wrap in a default xml file. I have checked the guestcustomization director on the vCD instance and only see Sysprepdecryptor.exe’s throughout. I will let you know what I find out. The tzutil will suffice for now.
In my support request, I also plan on bringing up the fact that the post customization now occurs after the system reboots the first time. I want to avoid the Change password at first logon message without using vCloud Director’s local admin password feature. I had a script that worked perfectly in VCD 1.5 when post customization ran before it came back to ctl-alt-del. My assumption is that if I could get an unattend.xml with timezone, I could adjust the force password change as well.
Support came back and said the issue will be fixed in the next release.
I’ve noticed that the guest customization process seems to have changed a little between versions just based off of what I’ve seen (how VMs reboot, etc) when provisioning new VMs, but I’ve only looked into the issues that people bring to me. In vCD 5.5, I’ve noticed several changes such as the location of the guest customization file and I think the contents of the file are a lot different. Then the guest customization files on the cells are a lot different as well so it looks like they overhauled things and introduced some new problems. I know one thing they were trying to change is setting the IP information earlier so you wouldn’t need a DHCP server available to join VMs to the domain, but it looks like that’s still the same. I’d be interested to hear what you find out from VMware.
Well, they are pointing me down the path of the same KB regarding vCenter and the specification thus far. VMware states they offloaded the guest customization to vCenter, but if that were the case, I would believe we would see an option to point to a vCenter specification. I have asked that if I create a specification in vCenter, if VCD sees this automatically (which I doubt). Stay tuned!
Well I was given the same reply about the tzutil fix coming in a code-fix. I did notice some weird behavior on VMs though in the process. After each reboot I would briefly see a “VM Image Customization is in Progress…” message. I traced this to VMware KB1018378 (http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1018378).
In some instances the VM is hanging onto thinking it still needs to run sysprep even though it doesn’t run fully. I have noticed this on VMs with outdated tools and VM hardware as well as VMs with up-to-date tools and HW. I have not been able to find a common thread amongst the templates at this juncture.
Thanks for the update. I haven’t seen the issue in KB1018378.
I’ve seen issues where it the scheduled task that vCloud creates to run sysprep never seems to run. Then if you manually start the scheduled task, the guest customizes and works correctly. It seems that problem went away in our environment (maybe after an update to vCloud? This environment is 5.1.3). Usually when there is a problem I’ll see that the customization log says it started sysprep, but then when I look at the sysprep logs I see errors. The log I usually check is c:\windows\system32\panther\setuperr. Right now we’ve been working on Windows 8.1 VMs failing to customize because of the issue described in http://support.microsoft.com/kb/2769827, which mentions that log.
Another annoying thing that I’ve noticed that vCD 5.5 does is wipe out all of your DNS search suffixes and replaces them with only the DNS suffix of the vCloud network. Without all of the DNS suffixes in there our VMs can’t lookup the KMS server to activate. If I get some time, I may try to do something with guest customization like with the timezones. Our Windows guy that manages our vCloud templates is also going to work with the AD team to see if they can create a GPO.