This evening I got an urgent email from a colleague that just got the rug pulled out from under him. His customer decided that the two web servers on the front end of a SharePoint farm he was building couldn’t be 2008 R2 because they require 32bit servers. I stayed far away from the “why” – and just wanted to help deliver the “how” as easy and fast as possible.
The problem he ran into was when he deployed two Windows 2008 32bit Enterprise Edition servers… they never customized from the template. Still had the default password, network settings, and host names, just bit for bit clones of the template with a customized answer file waiting to be applied.
Normally, vCloud Director will clone the template, push an answer file to it that contains all the things that have to change to make it a unique server, then kick off a sysprep (in windows) to make it all happen. Within a few minutes your clone is now a new server with your settings already set – ready to run.
Not this time. And to be honest, I don’t ever think we deployed a 2008 32bit Enterprise server – so the template may have been broken from day -1.
After digging around in the sysprep logs, I find a break…
SYSPRP LaunchDll:Failure occurred while executing 'C:\Program Files\Internet Explorer\iessetup.dll,SysPrep_Cleanup', returned error code 2 SYSPRP RunExternalDlls:An error occurred while running registry sysprep DLLs, halting sysprep execution. dwRet = 2
Okay, so I verify iessetup.dll exists. So why aren’t you executing it.
After more digging and some Googling, I think I find the root of the issue… we’re missing a registry key.
It appears that when .NET is installed and removed before sys prep – it can remove the RunOnce key, which is used by Sysprep to store some commands using iessetup.dll.
I simply launched our template, added the key, and wrapped it back up. Redeployed the two servers – and bam…
Two 2k8 32bit servers deployed without a hitch. It’s now 1:10am and I haven’t even touched my other work tonight.
Source of Solution: