Horizon 8 2512 • ESB 2412 • Nutanix AHV GA • March 2026

Omnissa Horizon
Deep Dive 2026

Complete Horizon 8 reference: version matrix, Instant Clone mechanics, Blast Extreme tuning, OLM licensing, vGPU, logon optimization, and Nutanix AHV. Validated on 20,000+ seat deployments.

// Version Matrix

Horizon 8 Version Matrix โ€” 2024/2025/2026

Omnissa uses YY.MM naming. ESB (Extended Service Branch) = 2-year lifecycle. Standard = 12 months. Always match Connection Server + Agent versions exactly. Interoperability Matrix โ†—

ReleaseBuildReleasedEOL DateTypeKey Changes & Notes
2512 Latest8.14.0Dec 2025Dec 2026StandardNutanix AHV GA, Entra ID SSO GA, Blast HEVC HW encode, OLM 30-char migration complete, MSIX App Attach strict mode, DEM 2512 integration.
25098.13.0Sep 2025Sep 2026StandardSmart Card SSO improvements, Linux VDA 2509 support, App Volumes 4.13, Horizon Cloud Next-Gen improvements.
25068.12.0Jun 2025Jun 2026StandardIC provisioning speed improvements, DEM 2506, USB redirection updates, Horizon HTML Access enhancements.
25038.11.0Mar 2025Mar 2026StandardEntra ID domain-join GA, logon performance improvements, vSphere 8.0 U3 support.
2412 ESB โ˜…8.10.0Dec 2024Dec 2026ESBCurrent ESB. 2-year lifecycle. Recommended for enterprises needing stability. OLM key migration, all major features stable. Quarterly patch releases.
23128.9.0Dec 2023Dec 2025 โš EOLEOL Dec 2025. Migrate immediately to 2412 ESB or 2512. No security patches.
7.x / 2111 and olderโ€”โ€”EOLEOLUnsupported. Known CVEs. Upgrade path: 7.x โ†’ 2312 โ†’ 2412 ESB โ†’ 2512.
VDI Guy Recommendation: New deployments โ†’ 2512 (Nutanix AHV GA, all latest features). Enterprises on change-controlled cycles โ†’ 2412 ESB (Dec 2026 EOL, patch quarterly). Never mix Connection Server and Agent major versions โ€” one delta maximum. Run vdmadmin -A -getDomains to verify CS health after upgrades.
// Core Architecture

Horizon 8 Component Architecture

Horizon uses a distributed component model. Each piece has specific HA requirements. Don't undersize Connection Servers โ€” they're often the first bottleneck.

๐Ÿ–ฅ๏ธ Connection Server

Central broker: AD auth, pool entitlement, session routing. 7-node max per pod. HA: 2+ nodes behind F5/NSX/HAProxy. Each node: ~2,000 CCU. Windows Server 2022 recommended.

4 vCPU ยท 16 GB RAM ยท 100 GB disk
๐Ÿ”ง Horizon Agent

Installed on every desktop/RDSH. Manages Blast/PCoIP sessions, USB, printing, SSO, clipboard. Version must match CS ยฑ1 minor version. Available for Windows and Linux (Blast only on Linux).

VMware-Horizon-Agent-x86_64.exe /silent /norestart
๐ŸŒ Unified Access Gateway

External gateway in DMZ. Replaces Security Server. Handles Blast UDP 8443, PCoIP 4172, Workspace ONE integration. Deploy 2+ for HA. OVA-based, no Windows license required.

2 vCPU ยท 4 GB RAM min ยท 20 GB disk
๐Ÿ“ฆ App Volumes Manager

Just-in-time app delivery via VMDK/VHD AppStacks and Writable Volumes. 4.13 adds MSIX App Attach. Requires SQL Server (Express OK for <1,000 users, Full for larger). Port 443 from VMs.

4 vCPU ยท 8 GB RAM ยท SQL Server required
๐ŸŽฏ DEM (FlexEngine)

Policy-based environment management. Replaces logon scripts + folder redirection GPO. Manages printers, drives, env vars, app settings via XML configs. ADMX templates for CS config. No agent on CS.

Client-side agent only ยท Config share: \\server\DEM
โ˜๏ธ Horizon Universal Broker

Cloud-hosted multi-pod broker. Federates on-prem pods + cloud capacity. Required for Horizon Cloud Next-Gen. Subscribers authenticate to HCS which routes to nearest pod. No on-prem install.

SaaS ยท Requires Horizon Universal license

Network Port Requirements

PortProtocolFlowPurposeRequired?
443TCPClient โ†’ UAG/CSHTTPS Horizon client, HTML Access, Blast TCP fallbackMust Open
8443UDPClient โ†’ UAGBlast Extreme UDP โ€” primary display protocolMust Open
4172UDP+TCPClient โ†’ UAG/AgentPCoIP protocol (legacy thin clients)If PCoIP used
22443UDP+TCPClient โ†’ AgentBlast Extreme internal/direct connectionInternal only
389/636TCPCS โ†’ DCLDAP / LDAPS for Active DirectoryMust Open
902TCPCS โ†’ ESXiInstant Clone provisioning, VM power operationsMust Open
443TCPCS โ†’ vCentervCenter API โ€” provisioning, inventory, snapshotsMust Open
8472UDPESXi โ†’ ESXiVXLAN/Geneve for NSX (if used)NSX only
// Instant Clone Technology

Instant Clone โ€” Architecture, Mechanics & Tuning

Instant Clone (IC) replaced Linked Clone as the standard for all new pooled deployments in Horizon 7.x+. Uses vSphere memory COW from a running parent โ€” no quiesce, no reboot chain.

How IC Provisioning Works

01
Golden Image (Parent VM)
Windows 10/11 LTSC or Server. Horizon Agent installed. Parent stays powered ON. IC clones from live memory state โ€” not from snapshot.
02
Memory Fork (vSphere COW)
vSphere forks running parent memory pages via copy-on-write. New VM boots in ~100ms sharing parent pages. No quiesce, no snapshot chain overhead.
03
ClonePrep Customization
Assigns SID, hostname (pool-XXXX), IP, joins AD. ClonePrep (not Sysprep) โ€” 80% faster. Takes 60โ€“90s. Minimize by pre-joining, disabling Windows Update, using static IP pools.
04
Available State โ†’ Session
VM sits in pool headroom. User connects โ†’ assigned in <1s. At logoff: VM deleted immediately, new clone provisioned. Zero leftover user state.

IC Performance Tuning Parameters

ParameterRecommended ValueNotes
Headroom VMs10โ€“15% of pool sizePre-provisioned VMs prevent logon wait
Min # Machinesโ‰ฅ headroom countKeeps VMs alive always
ClonePrep vs SysprepClonePrep always80% faster โ€” no full reboot
Storage PolicyvSAN / NVMe SSDCOW deltas need low-latency storage
Max Concurrent Provisions20โ€“50 per vCenterMore = vCenter API saturation
Parent VM placementSame cluster as clonesCross-cluster IC = network overhead
Parent vCPU topologyMatch clone topologyMismatch slows fork
Power policyAlways On or OffSuspend NOT supported with IC
Gold Image Seal Checklist: Run VMware OS Optimization Tool โ†’ Disable Windows Update service โ†’ Disable pagefile on OS disk (move to D:) โ†’ Enable disk cache โ†’ Set power plan to High Performance โ†’ Remove unused startup items โ†’ Run cleanmgr /verylowdisk. Smaller parent = faster fork = faster logon.
// Blast Extreme Protocol

Blast Extreme โ€” Tuning, GPO Settings & Best Practices

Blast Extreme (HEVC/H.264 over UDP 8443) is the standard protocol for all Horizon 2026 deployments. PCoIP only for legacy hardware. Never RDP as primary.

GPO SettingRegistry PathRecommended ValueImpact
Max Session BandwidthBlast\MaxSessBandwidthKbps0 (unlimited)Let Blast auto-throttle. Hard cap degrades UX. Only limit on severely constrained WANs.
Min Session BandwidthBlast\MinSessBandwidthKbps256Prevents Blast throttling below 256 Kbps. Maintains minimum quality floor.
H.264 Hardware EncodeBlast\H264Enabled1 (enabled)Enable always. Falls back to software if no GPU. Software H.264 adds CPU overhead.
HEVC Hardware EncodeBlast\HEVCEnabled1 (enabled)HEVC = 50% better compression than H.264. Requires NVIDIA vGPU or Intel QSV on ESXi host. New in 2512.
Max Frame RateBlast\MaxFramesPerSecond30 (general) / 60 (GPU users)60 FPS nearly doubles bandwidth. Use QoS to protect GPU pool bandwidth.
Build-to-LosslessBlast\AllowBuildToLosslessDisabled (general) / Enabled (finance)Lossless for pixel-perfect compliance. 3โ€“5ร— bandwidth increase. GPO restrict to finance OU only.
Audio QualityBlast\AudioQualityLow (22 Kbps default)High = 64 Kbps/session overhead. Default Low fine for voice/Teams. Set High for AV production.
UDP TransportUAG blastExternalUrludp://host:8443UDP MUST be open at firewall. TCP 443 fallback works but latency/quality significantly worse.
Clipboard DirectionBlast\ClipboardRedirectionClient-to-Agent only (secure)Restrict clipboard direction for DLP. Bidirectional for productivity, Agent-to-Client only for kiosk.

Protocol Comparison โ€” 2026

ScenarioProtocol
Knowledge workers (LAN/WAN)Blast UDP 8443
CAD / 3D / vGPU workloadsBlast HEVC + GPU
Financial (pixel-perfect)Blast Lossless
Legacy PCoIP thin clientsPCoIP UDP 4172
Firewall restricted (no UDP)Blast TCP 443
Linux VMsBlast (PCoIP = extra lic)

Bandwidth Estimates

User TypeAvg BWPeak BW
Task/call center200โ€“400 Kbps1 Mbps
Knowledge worker500 Kbpsโ€“1.5 Mbps3 Mbps
Power user (video)2โ€“5 Mbps8 Mbps
CAD / vGPU (HEVC)4โ€“8 Mbps15 Mbps
// GPU Virtualization

vGPU & GPU Virtualization โ€” NVIDIA, vDGA, vSGA

GPU acceleration for CAD, rendering, media, financial workstations. Horizon 2512 supports NVIDIA vPC/vWS, vDGA passthrough, and deprecated vSGA. Requires NVIDIA vGPU licensed driver stack on ESXi host.

ModeGPU SharingUsers/GPUDisplay EncodeUse CaseNotes
vPCShared computeUp to 32Software (host CPU)GPU-accelerated apps (ArcGIS, AutoCAD 2D)Best cost/density. No OpenGL 4.x. No protocol HW encode.
vWS (Quadro)Shared full-stack1โ€“8NVIDIA NVENCCAD, 3D modeling, Revit, CATIA, video editFull OpenGL/DX12. Blast HEVC HW encode. NVIDIA RTX required.
vDGA (Passthrough)1:1 dedicated1Full GPU NVENCML inference, rendering farms, max perfNo vMotion. Bare-metal GPU performance. GPU idle when user logged off.
vSGA (deprecated)Shared display onlyUp to 64SoftwareAero / DWM glass effects onlyDeprecated. No HEVC. No modern GPU features. Use vPC instead.

NVIDIA A40 Profile Reference (48 GB)

# A40 = 48 GB GDDR6 total vRAM
# Format: GPU-[size]Q = workstation class
# GPU-[size]B = virtual PC class (compute only)

A40-1Q   =  1 GB โ†’ 48 users/GPU  (knowledge)
A40-2Q   =  2 GB โ†’ 24 users/GPU  (knowledge+)
A40-4Q   =  4 GB โ†’ 12 users/GPU  (CAD light)
A40-8Q   =  8 GB โ†’  6 users/GPU  (CAD/3D)
A40-24Q  = 24 GB โ†’  2 users/GPU  (rendering)
A40-48Q  = 48 GB โ†’  1 user/GPU   (ML/workstation)

# Check in VM: nvidia-smi โ†’ shows vgpu_type
# Check NVENC utilization: nvidia-smi dmon -s u

Blast + vGPU GPO Settings

# VMware View Agent > Blast Config (GPO)
# Path: Computer Config > Policies > Blast

Allow H.264 hardware encoding = Enabled
Allow HEVC hardware encoding  = Enabled  # 2512+
Max monitors per session      = 4
Max resolution per display    = 3840x2160
Enable FBC (Frame Buffer Capture) = Enabled

# NVIDIA host driver GPO (optional):
# Unlimited vGPU display memory = Enabled
# Validate: In VM > Task Manager > GPU
# Should show "NVIDIA xxx vGPU" not "VMware SVGA"
// VM & Host Sizing

Desktop & Host Sizing Reference 2026

User TypevCPURAMDiskUsers/Host*Pool TypeNotes
Task Worker12โ€“4 GB40 GB150โ€“200Non-persistent ICCall center, kiosk, single app. No Office.
Knowledge Worker24โ€“6 GB60 GB80โ€“120Non-persistent ICOffice 365, Teams, browser, LOB apps.
Power User48โ€“16 GB80 GB40โ€“60Persistent / FloatingDevelopers, analysts, thick apps.
CAD / 3D (vGPU)4โ€“816โ€“32 GB120 GB6โ€“12 (GPU limited)PersistentNVIDIA vWS 4Qโ€“8Q. NVMe storage required.
RDSH (per session)0.25โ€“0.51โ€“2 GBโ€”40โ€“60 sessions/VMNon-persistentRDSH VM: 16โ€“24 vCPU / 64โ€“128 GB. Published apps + desktops.
Connection Server416 GB100 GB1 per 2,000 CCUInfrastructureMin 2 for HA. Windows Server 2022.

* Users/host based on dual-socket host with 2ร— Intel Xeon 6338 (32 cores each) or AMD EPYC 7543 (64 cores) โ€” 256 GB RAM total. Adjust for your hardware.

โš  vCPU Overcommit Warning: Max 6:1 vCPU:pCPU for knowledge workers. Max 4:1 for power users. Higher ratios cause CPU ready spikes at logon storm. Monitor cpu.ready < 5% at peak. Use vROps "Lagoon" dashboards for VDI-specific metrics.
// OLM Licensing

Omnissa Licensing Model (OLM) 2026

Omnissa completed the VMware โ†’ OLM transition in 2025. 30-character keys replace 25-char VMware keys. Legacy 25-char keys remain valid until next renewal.

EditionIncludesModelBest For
Horizon UniversalHorizon + App Volumes + DEM + HCS. On-prem + cloud.Named User or CCU ยท AnnualBest value 2026. CCU for shift workers (<100% utilization). Named for 1:1 dedicated.
Horizon Enterprise PlusAll Universal + HCS Next-Gen + advanced analytics.Named User ยท AnnualMulti-cloud + Next-Gen broker. Universal Broker required.
Horizon StandardCore broker + agent only. No App Volumes or DEM.CCU ยท Perpetual or subscriptionSmall deployments, tight budgets. No cloud burst.
Legacy VMware Keys (25-char)Pre-Omnissa entitlementsPerpetual (no new purchases)Migrate at renewal via licenses.omnissa.com. Hot-swap โ€” no downtime.

25โ†’30 Char Key Migration

# VMware 25-char: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
# Omnissa 30-char: XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX

# Migration steps:
# 1. Login: https://licenses.omnissa.com
# 2. License Keys โ†’ Convert Legacy Keys
# 3. Enter 25-char โ†’ receive 30-char equivalent
# 4. Horizon Admin Console:
#    Settings โ†’ Product Licensing โ†’ Edit License
# Hot-swap: no downtime, no session disruption
# Verify: vdmadmin -L (list current license info)

License Monitoring (REST API)

# Horizon REST API โ€” license status
# Base URL: https://cs.corp.com/rest

GET /monitor/v3/license
# Returns: usedLicenseCount, maxLicensedSessions,
#          licenseExpiry, licenseEdition

# PowerShell via Horizon API:
$header = @{Authorization = "Bearer $token"}
$lic = Invoke-RestMethod -Uri "$cs/rest/monitor/v3/license" -Headers $header
Write-Host "Used: $($lic.usedLicenseCount)/$($lic.maxLicensedSessions)"

# Alert: >85% usage, <90 days to expiry
// Logon Optimization

Logon Time Blueprint โ€” Sub-10 Second Target

Every second over 15 seconds to usable desktop generates helpdesk tickets. Target: <10s total. Measure with Horizon Logon Monitor, Lakeside SysTrack, or Nexthink before tuning.

StageTargetCommon CulpritsRemediation
Kerberos / Network Auth<0.5sDC latency, DNS failure, NTP skew (>5 min)DC in same AD site as VMs. Split-brain DNS. Check w32tm /query /status.
FSLogix Container Mount<2sLarge VHDX (>20 GB), slow SMB storage, Cloud Cache sync delayVHDX <15 GB + redirections.xml. Azure Files Premium. Local CacheDirectory on NVMe.
Group Policy Processing<2sSlow WMI filters, many GP extensions, Software Install policyAudit with gpresult /h report.html. Disable unused CSEs. Loopback Replace mode. Remove Software Install from VDI GPOs.
DEM FlexEngine<1sMany logon tasks, synchronous drive mapping, large DEM config shareAsync DEM tasks. Background drive mapping. Keep DEM config share <50 MB. Async printer mapping.
App Volumes Mount<2sToo many AppStacks, large VMDKs, AVM network latencyMax 8 AppStacks/user. Each <10 GB. Enable AppStack caching. AVM server in same vCenter.
Shell Load (Explorer.exe)<3sStartup apps, network printer enumeration, drive mapping, OneDrive initDisable startup apps via GPO. Background printer discovery. Async drive mapping. OneDrive Files On Demand.
Total to Usable Desktop<10sโ€”Measure each stage. Address highest contributor first.
Quick Win Checklist: โœ“ OS Optimization Tool (disables 50+ services) โœ“ Async GP processing (single biggest gain after storage) โœ“ FSLogix VHDX <15 GB with redirections.xml โœ“ DC in same AD site โœ“ NTP sync <5 min skew โœ“ Disable "Always wait for network" GPO on Instant Clone โœ“ Background printer enum GPO โœ“ DEM async logon tasks. Run gpresult /r and check "The following GPOs were not applied" โ€” often reveals irrelevant policies slowing processing.
// Nutanix AHV (2512 GA)

Horizon on Nutanix AHV โ€” General Availability in 2512

Horizon 2512 marks the GA of Nutanix AHV as a first-class hypervisor. No vSphere license required. Full Instant Clone support. Nutanix Files replaces Azure Files or external NAS for FSLogix.

AHV Requirements (2512)

  • โ–ธNutanix AOS 6.7 or later
  • โ–ธAHV 20230302.x or later
  • โ–ธPrism Central (PC) โ€” required for Horizon integration
  • โ–ธNutanix Files 4.4+ for FSLogix SMB storage
  • โ–ธConnection Server 2512 (exact version match)
  • โ–ธInstant Clone only (Linked Clone not supported on AHV)
  • โ–ธPrism Central Starter license minimum

AHV vs vSphere โ€” Key Differences

  • +No vCenter required โ€” Prism Central API integration
  • +Built-in HCI storage โ€” no SAN/NAS license
  • +Nutanix Files for FSLogix replaces Azure Files
  • +Lower license cost (no ESXi + vCenter)
  • !Fewer memory management knobs (no TPS/balloon visibility)
  • !NVIDIA vGPU support limited vs ESXi
  • โ€“No DRS equivalent โ€” manual VM placement
When to choose Nutanix AHV: Already on Nutanix HCI. Want to eliminate VMware licensing cost. Nutanix Files available for FSLogix. Avoid if: heavy vGPU workloads (ESXi has better NVIDIA support), complex DRS/HA automation, or running 7.x โ†’ migration preferred on vSphere first.
// Common Issues

Troubleshooting Reference โ€” Common Horizon Issues

SymptomLikely CauseDiagnostic Command / ToolFix
Black screen after loginExplorer.exe crash, shell load failure, missing profileEvent Viewer > Application > Source: Desktop Window ManagerCheck FSLogix logs. Verify redirections.xml not excluding AppData\Roaming. Re-seal gold image.
Slow logon (>30s)FSLogix mount, GPO, printer enum, domain trustgpresult /h > logon.html; frx list-profile-sizeSee Logon Tuning section above. Stage-by-stage measurement required.
Session disconnect / reconnect loopUDP 8443 blocked, MTU mismatch, network path issueTest-NetConnection -Port 8443 -ComputerName [UAG]; Wireshark on clientVerify UDP 8443 open at all firewall hops. Check MSS/MTU on tunnel if VPN. Try Blast TCP 443 to confirm UDP is the issue.
IC provisioning stuckvCenter API overload, parent VM unhealthy, AD join failureHorizon Admin Console > Problem VMs; vCenter Tasks panelReduce max concurrent provisions. Check AD join account permissions. Review CS logs: C:\ProgramData\VMware\VDM\logs
No desktops available (all missing)CS AD connection broken, vCenter unreachable, license expiredvdmadmin -A -getDomains; vdmadmin -LTest CS โ†’ DC connectivity. Verify vCenter creds in CS config. Check license in Settings > Licensing.
Poor video / choppy BlastTCP fallback active, bandwidth cap, CPU saturationHorizon Client > Help > Collect Support Logs; check BlastTransport in logsVerify UDP 8443 open. Check MaxSessBandwidthKbps (should be 0). Enable HEVC. Check vCPU ready time <5%.

Key Log Locations

# Connection Server logs:
C:\ProgramData\VMware\VDM\logs\

# Agent logs (in VM):
C:\ProgramData\VMware\VDM\logs\

# Blast log (client-side):
%APPDATA%\VMware\VMware Horizon View Client\Logs\

# vdmadmin useful commands:
vdmadmin -A -getDomains     # AD trust status
vdmadmin -L                  # license info
vdmadmin -S -s [CS-FQDN]    # service status
vdmadmin -U -u [username]    # user session info

Horizon Event DB (PowerShell)

# Horizon REST API โ€” recent events
$header = @{Authorization = "Bearer $token"}
$events = Invoke-RestMethod `
  -Uri "$cs/rest/monitor/v3/events/summary" `
  -Headers $header

# View pool status:
$pools = Invoke-RestMethod `
  -Uri "$cs/rest/inventory/v8/desktop-pools" `
  -Headers $header
$pools | Select-Object displayName, enabled,
  provisioningStatusData
// Related Pages

Continue the Deep Dive