Existen dos opciones para personalizar máquinas virtuales Windows de clones instantáneos durante el proceso de creación: VMware ClonePrep y Microsoft Sysprep.
ClonePrep es un proceso de personalización de VMware que se ejecuta durante la implementación de clones instantáneos para personalizar cada clon de escritorio creado a partir de la imagen principal.
Sysprep es una herramienta de Microsoft para implementar la instalación del sistema operativo configurado desde una imagen base. A continuación, el escritorio se puede personalizar en función de un script de respuesta.
Opciones de personalización del invitado
ClonePrep y Sysprep se aseguran de que todos los clones instantáneos se unan a un dominio de Active Directory. Cuando se usa ClonePrep, los clones tienen los mismos identificadores de seguridad (SID) de equipos que la imagen maestra. Si necesita que los clones instantáneos tengan SID diferentes entre sí y de la imagen maestra, utilice Sysprep. ClonePrep también conserva los identificadores únicos globales (GUID) de aplicaciones, aunque algunas aplicaciones generan un nuevo GUID durante la personalización. Para obtener más instrucciones sobre los diferentes tipos de clonación, consulte el artículo 2003797 de la base de conocimientos.
Cuando agregue un grupo de escritorios de clones instantáneos, tanto si usa ClonePrep como Sysprep, puede especificar un script de forma que se ejecute inmediatamente después de que se haya creado un clon y otro script para que se ejecute antes de que se haya apagado el clon.
- Ejecución de scripts
ClonePrep y Sysprep usan la API CreateProcess de Windows para ejecutar scripts. Su script puede invocar cualquier proceso que se pueda crear con la API CreateProcess. Por ejemplo, cmd, vbscript, exe y los procesos de archivo por lotes funcionan con la API.
ClonePrep y Sysprep pasan la ruta de acceso del script como el segundo parámetro a la API CreateProcess y establece el primer parámetro en
NULL
. Por ejemplo, si la ruta de acceso del script es c:\myscript.cmd, la llamada a CreateProcess es CreateProcess(NULL,c:\myscript.cmd,...). - Proporcionar rutas a scripts
Puede especificar los scripts al crear o editar el grupo de escritorios. Los scripts deben residir en la imagen maestra. No puede usar una ruta de acceso UNC a un recurso compartido de red.
Si utiliza un lenguaje de scripting que necesite un intérprete para ejecutar el script, la ruta de acceso del script debe empezar por el ejecutable del intérprete. Por ejemplo, en lugar de especificar C:\script\myvb.vbs, debe especificar C:\windows\system32\cscript.exe c:\script\myvb.vbs.
Importante: Coloque los scripts de personalización en una carpeta segura para evitar el acceso no autorizado. - Límite de tiempo de espera de scripts
De forma predeterminada, ClonePrep y Sysprep terminan un script si la ejecución dura más de 20 segundos. Puede aumentar este límite de tiempo de espera. Para obtener más información, consulte Aumentar el límite de tiempo de espera de los scripts de personalización de ClonePrep en una máquina Windows.
Otra opción consiste en especificar un script que ejecute otro script o proceso que tarde mucho tiempo en ejecutarse.
- Cuenta de script
ClonePrep y Sysprep ejecutan los scripts utilizando la misma cuenta que usa el servicio VMware Horizon Instant Clone Agent. De forma predeterminada, esta es el Sistema local. No cambie esta cuenta de inicio de sesión. Si lo hace, es posible que los clones no se inicien.
- Privilegios de procesos
Por motivos de seguridad, se eliminan ciertos privilegios del sistema operativo Windows del proceso VMware Horizon Instant Clone Agent que ejecuta los scripts de personalización. Los scripts no pueden realizar acciones que requieran esos privilegios.
El proceso que ejecuta scripts no tiene los siguientes privilegios:
- SeCreateTokenPrivilege
- SeTakeOwnershipPrivilege
- SeSecurityPrivilege
- SeSystemEnvironmentPrivilege
- SeLoadDriverPrivilege
- SeSystemtimePrivilege
- SeUndockPrivilege
- SeManageVolumePrivilege
- SeLockMemoryPrivilege
- SeIncreaseBasePriorityPrivilege
- SeCreatePermanentPrivilege
- SeDebugPrivilege
- SeAuditPrivilege
- Registros de scripts
ClonePrep y Sysprep escriben mensajes en un archivo de log ubicado en C:\ProgramData\Vmware\VDM\Logs.
Personalización de invitado Sysprep (con cuenta de equipo creada previamente)
Puede aprovisionar un grupo de escritorios de clones instantáneos con la personalización de Microsoft Sysprep. En este flujo de trabajo, Horizon creará previamente las cuentas del equipo. Al utilizar la personalización de Sysprep, también puede establecer scripts previos al apagado y posteriores a la sincronización.
- Es posible que se produzca un error en el proceso de Microsoft Sysprep para ciertos paquetes Appx instalados en la máquina virtual de imagen maestra. Deberá eliminar manualmente estos paquetes Appx de la máquina virtual de imagen maestra para completar el aprovisionamiento de clones. Consulte el sitio de soporte de Microsoft.
- Sysprep puede fallar porque hay actualizaciones de Windows pendientes. Para evitarlo, ejecute una actualización de Microsoft Windows en la máquina virtual de imagen maestra y considere deshabilitar el servicio de actualización de Microsoft Windows para clones instantáneos. También puede comprobar la página de actualización de Windows para confirmar que no haya errores o actualizaciones pendientes.
- De forma predeterminada, Sysprep generalize deshabilita la cuenta de administrador integrada. Si no hay otra cuenta de usuario en la máquina virtual de imagen maestra y se produce un error en la personalización del clon, los usuarios no podrán iniciar sesión en la máquina virtual clonada para recopilar información de depuración. Al intentar iniciar sesión como administrador local, los usuarios verán un mensaje en la pantalla de inicio de sesión indicando que su cuenta se ha deshabilitado. Póngase en contacto con el administrador del sistema. Para solucionar este problema, cree nuevas cuentas de usuario en la máquina virtual de imagen maestra siguiendo las instrucciones del sitio de soporte de Microsoft.
- Se puede agregar un dispositivo vTPM a clones instantáneos con la personalización de invitado Microsoft Sysprep o ClonePrep. El aprovisionamiento inteligente de clones instantáneos usa el Modo B (clones creados sin la máquina virtual principal) de forma predeterminada. Sin embargo, si usa un dispositivo vTPM en hosts ESXi con versiones anteriores a la 7.0 Update 3f, el aprovisionamiento inteligente seleccionará el Modo A (clones creados con la máquina virtual principal). Para cambiar los modos de aprovisionamiento, consulte el artículo 81026 de la base de conocimientos.
Personalización de invitado Sysprep (sin cuenta de equipo creada previamente).
En esta personalización de invitado, Microsoft Sysprep creará previamente las cuentas del equipo, no Horizon. Si el entorno de AD es complejo y está formado por varios sitios y centros de datos, es posible que se produzcan problemas de aprovisionamiento que se describen el artículo https://kb.vmware.com/s/article/2147129 de la base de conocimientos. Solo una pequeña parte de los clientes con varios sitios y centros de datos de AD experimentaron este problema. Utilice la personalización de invitado Sysprep sin cuenta de equipo creada previamente para seleccionar automáticamente el sitio de AD para la creación de grupos de clones instantáneos de forma global o a nivel de grupo. Habilitar la función a nivel de grupo permite probar el nuevo flujo de trabajo de aprovisionamiento en un grupo de pruebas antes de habilitarlo globalmente para todos los grupos que utilizan este flujo de trabajo. Consulte Habilitar la personalización de invitado Sysprep (sin cuenta de equipo creada previamente).