Qué vas a conseguir
Un pool de escritorios virtuales en VMware Horizon (ahora bajo Omnissa) que se crea desde una imagen maestra, se asigna a un grupo de Active Directory y se recrea limpio en cada sesión. Y un método fijo para el ticket "me conecto y se queda en negro" o "no aparece mi escritorio".
Antes de empezar
- Acceso a Horizon Console (
https://horizon-cs-01.contoso.local/admin) con rol de administrador o de help desk. - vCenter añadido en Settings → Servers con la cuenta de servicio que Horizon documenta, y un Connection Server sano.
- Una VM de Windows 11 Enterprise preparada como imagen maestra: unida al dominio, optimizada (OS Optimization Tool), con Horizon Agent instalado y las aplicaciones base. Apagada y con una snapshot con nombre y fecha.
- Un grupo de AD con los usuarios del pool (
GG-VDI-Finanzas).
1. Las piezas (y su equivalente en Citrix)
- Connection Server: el broker; los clientes se autentican aquí (equivale al Delivery Controller).
- Horizon Agent en la VM: lo que hace que el escritorio sea gestionable (el VDA).
- Pool: el conjunto de escritorios y su política (grupo de entrega + catálogo).
- Entitlement: qué usuarios o grupos ven el pool.
- Protocolo: Blast Extreme (el de Horizon, puerto 8443/22443) o PCoIP (4172). El cliente es Horizon Client.
2. Crear un pool de clones instantáneos
Clones instantáneos: cada escritorio se crea en segundos a partir de la snapshot y se destruye al cerrar sesión. Un usuario arranca siempre limpio; lo que tiene que persistir (perfil, datos) va en FSLogix o en un perfil de DEM, nunca en el escritorio.
Después: Entitlements → Add entitlement → GG-VDI-Finanzas. Hasta que no hay entitlement, el pool existe pero nadie lo ve.
3. Comprobar que está sano
Available y Connected son los estados buenos. Agent unreachable es un escritorio cuyo agente no habla con el Connection Server (red, DNS, hora, o clon a medias): con clones instantáneos, se recrea (Machines → la máquina → Remove, el pool crea otra). Provisioning atascado largo rato suele ser vCenter o el datastore lleno.
4. "No conecta": el orden
- ¿Ve el pool en Horizon Client? Si no: entitlement (el usuario no está en el grupo o el grupo no está en el pool) o el pool está deshabilitado. Comprueba
Users and Groups → el usuario → Entitlements. - ¿Se queda en "Connecting…" o pantalla negra? El cliente ha llegado al Connection Server pero no al escritorio. Hace falta el puerto 8443/22443 (Blast) desde el cliente hasta la VM del escritorio (no solo al broker) cuando se conecta por túnel desactivado, o hasta el Unified Access Gateway si viene de internet.
Test-NetConnection FIN-W11-002 -Port 22443desde el equipo del usuario lo dice. - ¿Conecta y a los segundos se cierra? El escritorio está asignado pero el inicio de sesión falla: perfil de FSLogix bloqueado (otro escritorio tiene el contenedor abierto; se ve en el log de FSLogix
C:\ProgramData\FSLogix\Logs), o la GPO de inicio tarda más que el tiempo de espera. - ¿Le toca siempre la misma máquina rota? En pools flotantes, Horizon reintenta la última; Reset o Remove de esa máquina desde la consola y que vuelva a entrar.
Logs del cliente cuando hay que escalar: en Windows, %LOCALAPPDATA%\VMware\VDM\Logs\ (vmware-horizon-client-*.log); en el escritorio, C:\ProgramData\VMware\VDM\logs\ (debug-*.txt del agente). Horizon Console → Help Desk (con el usuario) resume sesión, protocolo, latencia y los eventos de inicio de sesión en una pantalla: es por donde empieza el soporte de primer nivel.
5. Actualizar la imagen maestra
Cambiar algo en el pool (parche, aplicación nueva) es: encender la imagen maestra, hacer el cambio, apagarla, nueva snapshot con fecha, y en el pool Maintain → Push Image eligiendo esa snapshot y cuándo (al cerrar sesión cada usuario, o forzado en una ventana). Nunca se toca un escritorio del pool a mano: desaparece en el siguiente cierre de sesión.
Antes del Push Image, prueba la snapshot nueva en un pool de prueba de 2 máquinas. Una imagen con el agente mal instalado deja los 40 escritorios en *Agent unreachable* a la vez.
Siguientes pasos
- Monta FSLogix para los perfiles si no está: es lo que hace que un escritorio flotante parezca el del usuario.
- Un Unified Access Gateway en la DMZ para el acceso desde fuera sin VPN; y en el Nivel 4, Azure Virtual Desktop y Windows 365, la alternativa en nube.
- La guía de Citrix VDI es el espejo de esta: mismos problemas, otros nombres. Conocer las dos te sitúa en cualquier empresa.
¿Falta algo o en tu entorno es distinto? Escríbeme y lo corrijo.
What you'll get
A virtual desktop pool in VMware Horizon (now under Omnissa) created from a golden image, entitled to an Active Directory group and rebuilt clean on every session. And a fixed method for the ticket "I connect and it stays black" or "my desktop doesn't appear".
Before you start
- Access to Horizon Console (
https://horizon-cs-01.contoso.local/admin) with an administrator or help desk role. - vCenter added under Settings → Servers with the service account Horizon documents, and a healthy Connection Server.
- A Windows 11 Enterprise VM prepared as the golden image: domain-joined, optimised (OS Optimization Tool), with Horizon Agent installed and the base applications. Powered off, with a snapshot named and dated.
- An AD group with the pool's users (
GG-VDI-Finance).
1. The pieces (and their Citrix equivalent)
- Connection Server: the broker; clients authenticate here (equivalent to the Delivery Controller).
- Horizon Agent on the VM: what makes the desktop manageable (the VDA).
- Pool: the set of desktops and their policy (delivery group + catalog).
- Entitlement: which users or groups see the pool.
- Protocol: Blast Extreme (Horizon's own, port 8443/22443) or PCoIP (4172). The client is Horizon Client.
2. Create an instant-clone pool
Instant clones: each desktop is created in seconds from the snapshot and destroyed at logoff. A user always starts clean; whatever must persist (profile, data) lives in FSLogix or a DEM profile, never on the desktop.
Then: Entitlements → Add entitlement → GG-VDI-Finance. Until there is an entitlement, the pool exists but nobody sees it.
3. Check that it is healthy
Available and Connected are the good states. Agent unreachable is a desktop whose agent is not talking to the Connection Server (network, DNS, time, or a half-made clone): with instant clones, you rebuild it (Machines → the machine → Remove, the pool creates another). Provisioning stuck for a long time is usually vCenter or a full datastore.
4. "It won't connect": the order
- Can they see the pool in Horizon Client? If not: entitlement (the user is not in the group, or the group is not on the pool) or the pool is disabled. Check
Users and Groups → the user → Entitlements. - Stuck on "Connecting…" or a black screen? The client reached the Connection Server but not the desktop. Port 8443/22443 (Blast) is needed from the client to the desktop VM (not just the broker) when tunnelling is off, or to the Unified Access Gateway when coming from the internet.
Test-NetConnection FIN-W11-002 -Port 22443from the user's device tells you. - Connects and closes after a few seconds? The desktop is assigned but logon fails: a locked FSLogix profile (another desktop has the container open; visible in the FSLogix log
C:\ProgramData\FSLogix\Logs), or the logon GPO takes longer than the timeout. - Always lands on the same broken machine? In floating pools, Horizon retries the last one; Reset or Remove that machine from the console and have them log in again.
Client logs when escalating: on Windows, %LOCALAPPDATA%\VMware\VDM\Logs\ (vmware-horizon-client-*.log); on the desktop, C:\ProgramData\VMware\VDM\logs\ (the agent's debug-*.txt). Horizon Console → Help Desk (with the user) summarises session, protocol, latency and logon events on one screen: that is where first-line support starts.
5. Update the golden image
Changing something in the pool (a patch, a new application) means: power on the golden image, make the change, power it off, new snapshot with a date, and on the pool Maintain → Push Image choosing that snapshot and when (as each user logs off, or forced in a window). Never touch a pool desktop by hand: it vanishes at the next logoff.
Before the Push Image, test the new snapshot on a 2-machine test pool. An image with the agent badly installed leaves all 40 desktops in *Agent unreachable* at once.
Next steps
- Set up FSLogix for profiles if it is not there: it is what makes a floating desktop feel like the user's own.
- A Unified Access Gateway in the DMZ for access from outside without VPN; and in Level 4, Azure Virtual Desktop and Windows 365, the cloud alternative.
- The Citrix VDI guide is this one's mirror: same problems, other names. Knowing both puts you at home in any company.
Is something missing, or different in your environment? Get in touch and I'll fix it.
Tech Career Lab · newsletter
¿Te ha servido? Cada dos semanas envío una idea práctica para perfiles IT: LinkedIn, proyectos, networking y procesos de selección.Found this useful? Every two weeks I send one practical idea for IT professionals: LinkedIn, projects, networking and hiring processes.
Apúntate y llévate las 33 ideasSign up and get the 33 ideas →