Desktop pool and farm provisioning on Nutanix requires the successful completion of cloning and guest customization operations. When provisioning fails, administrators can preserve the internal template virtual machine for analysis and use Horizon, Windows, and Sysprep logs to determine the cause.
The following information describes how to troubleshoot common provisioning failures in Nutanix desktop pools and farms, including how to preserve the internal template and steps to troubleshoot Sysprep failures.
Internal Debug Mode
By default, the internal template VM will be deleted in certain provisioning failure scenarios. For example, you may see an error during a publish operation such as the following:
Fault type is UNKNOWN_FAULT_FATAL - Timed out while waiting for VM it-xxx to shutdown.
To preserve the internal template for log troubleshooting, set the pae-InstantCloneDebugEnabled flag set as true or 1 under OU=CapacityServer,OU=Properties,DC=vdi,DC=horizon,DC=internal. After setting the flag, the internal template VM will not be deleted in error scenarios, which will aid in troubleshooting.
For detailed troubleshooting information, see Nutanix - How to cleanly pair a Golden Image.
Sysprep Failures
A common cause for clone pool provisioning failures is a misconfigured master image where Sysprep generalize fails. Use the following to resolve Sysrep failures during Nutanix clone provisioning.
Test Sysprep Readiness
-
Create a VM from Template used for Pool Deployment.
-
Power on. Open Administrator CMD.
-
Run
C:\Windows\System32\Sysprep\sysprep.exe /generalize /oobe /shutdown. -
If it shuts down within two minutes, proceed. If not, check logs:
C:\Windows\System32\Sysprep\Panther\setuperr.log.
Appx Packages Blocking Sysprep
Error Example
SYSPRP Package <name> installed for a user, but not provisioned for all users.
Fixes
Disable Appx Package Processing
-
Take ownership of
Generalize.xml, grant modify rights, and remove<Microsoft-Windows-AppX-Sysprepsection. -
Run in cmd:
takeown /F %windir%\system32\sysprep\Actionfiles\Generalize.xmlicacls %windir%\system32\sysprep\Actionfiles\Generalize.xml /grant administrator:(m)
Remove All Appx Packages
-
Run in PowerShell:
Import-Module AppxImport-Module DismGet-AppxPackage -AllUsers | Remove-AppxPackageGet-AppxProvisionedPackage -Online | Remove-AppxProvisionedPackage –Online
Remove Specific Packages
-
Identify via
Get-AppxPackageand remove using:Remove-AppxPackage -Package <fullname>Remove-AppxProvisionedPackage -Online -PackageName <fullname>
Delete User Profiles
Log in as built-in Administrator, delete unused profiles via sysdm.cpl.
Pending Windows Updates
-
Errors related to reserved storage or active scenarios.
-
Solution: Run updates on the master VM and disable Windows Update service post-setup.
Unremovable Store Apps
- Follow Microsoft’s guidance to remove or update store apps manually.
BitLocker Enabled
-
Error: BitLocker is on for the OS volume.
-
Disable using:
manage-bde -status manage-bde -off c:.
Sysprep Registry Corruption
Delete key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\Sysprep\SysprepCorrupt
Sysprep Takes 45–60 Minutes
-
On some Windows builds,
provtool.dlldelays Sysprep. -
Run cmd:
sc config dmwappushservice start=delayed-autosc start dmwappushservice
Built-in Administrator Disabled
-
Sysprep disables the built-in Administrator by default.
-
If no other accounts exist, the log in will fail on clone VMs.
-
Solution: Create additional local accounts on the master image before Sysprep.
Was this page helpful?