Session Host
A single VM within a host pool on which user sessions actually run. Session hosts are the workhorses of an AVD estate — this is where the computing happens, where the applications run and where resources get optimised.
What is a session host?
A session host is a single virtual machine in an Azure Virtual Desktop host pool on which users open their remote sessions. Depending on the host pool type:
- Personal Host Pool: 1 Session Host = 1 User
- Pooled Host Pool: 1 Session Host = mehrere User gleichzeitig (Multi-Session)
Session hosts are ordinary Azure VMs with the AVD agent software installed. They register with the AVD broker service, which then routes user sign-ins to them.
What runs on a session host?
| Component | Zweck | Required / optional |
|---|---|---|
| Windows 10/11 Enterprise (Multi-Session) | The base operating system | Required |
| AVD Agent | Registers the VM with the broker | Required |
| Boot Loader | Verbindet Session Host ins AVD-Backend | Required |
| FSLogix | Profile-Management | Strongly recommended |
| Microsoft Teams Media Optimization | Audio/Video-Redirect | Recommended |
| Intune Agent / MDE | Endpoint-Management & Security | Recommended |
| Monitoring-Agent | Azure Monitor, Log Analytics | Recommended |
| Line-of-Business Apps | Business applications | As needed |
Which Azure VM sizes for session hosts?
The right VM size depends on the workload, the host pool type and the target density:
| SKU | vCPU / RAM | Target workload | Typical users per VM |
|---|---|---|---|
| D2s_v5 | 2 / 8 GB | Personal Desktop (Light) | 1 |
| D4s_v5 | 4 / 16 GB | Personal Desktop (Standard) | 1 |
| D8s_v5 | 8 / 32 GB | Multi-Session Office | 6-10 |
| D16s_v5 | 16 / 64 GB | Multi-Session Power | 10-15 |
| E8s_v5 | 8 / 64 GB (Memory-optimized) | Multi-session office, RAM-bound; SAP GUI | 14-18 |
| NVv4 (NV12ads A10) | 12 / 110 GB + GPU | CAD, 3D, Video | 1 (Personal) |
| NCasT4_v3 | 4 / 28 GB + T4 GPU | AI/ML, DeepLearning | 1-2 |
Premium SSD vs standard SSD
For session hosts, always use premium SSD (P10 or P15). OS disk I/O is a bottleneck in multi-session — standard SSD makes sign-in noticeably slower for every user.
Session host life cycle
A typical life cycle
- Provisioning — creating the VM from the gold image (Azure template, Nerdio, or manually)
- Domain join — joining Microsoft Entra ID or on-premises AD
- Agent-Installation — the AVD agent with a registration token
- Pool assignment — the VM joins the host pool and becomes available to users
- Active phase — users work, monitoring runs, autoscaling optimises
- Patching — updates through Intune or Nerdio, ideally automated
- Drain mode — before maintenance: no new users, running sessions ended
- Rebuild/Retire — replace with a new image (multi-session VMs typically have short life cycles)
Best Practice: Cattle, not Pets: Session hosts should be treated as cattle, not pets — replaceable, interchangeable, impersonal. If a VM causes trouble: throw it away and rebuild it from the image. Never repair it laboriously. That only works if profiles and data sit centrally (FSLogix) and application configuration is automated.
Session-Host-Sizing in DaaS Maps
DaaS Maps shows session host sizing recommendations for different workloads, with real cost scenarios. For a conversation about VM sizing and session host patterns, you will find me on LinkedIn.