Categoria: Windows Server
Tags: AVD · Azure Virtual Desktop · VDI · Azure · RDP · FSLogix
Atualizado: 4 de Julho de 2026
Azure Virtual Desktop: Implementação para PMEs em 2026
O Azure Virtual Desktop (AVD) é hoje uma das soluções mais robustas e flexíveis de virtualização de desktops e aplicações em nuvem da Microsoft. Para pequenas e médias empresas (PMEs) portuguesas, o AVD oferece uma forma de proporcionar ambientes de trabalho seguros e geridos, sem necessidade de infraestrutura física local. Este artigo cobre tudo o que precisa saber para implementar o AVD em 2026, desde a arquitectura até à optimização de custos.
1. O Que é o Azure Virtual Desktop
O Azure Virtual Desktop é um serviço de virtualização de desktops e aplicações executado na nuvem do Azure. Permite que os utilizadores acedam a um ambiente Windows completo — incluindo Windows 11 Multi-session — a partir de praticamente qualquer dispositivo, com uma experiência semelhante a um PC local.
Lançado originalmente como Windows Virtual Desktop em 2019 e renomeado para AVD em 2021, o serviço evoluiu significativamente. Em 2026, o AVD oferece integração nativa com o Microsoft Entra ID (antigo Azure AD), suporte completo para Windows 11 24H2 multi-sessão, e gestão centralizada via Azure Portal, PowerShell e CLI.
ℹ️ Informação: O AVD é um serviço PaaS (Platform as a Service) — a Microsoft gere o plano de controlo (control plane), incluindo gateways, brokers e web services. O cliente gere apenas os session hosts (VMs), o armazenamento de perfis e a configuração.
As principais vantagens do AVD para uma PME incluem:
- Acesso remoto seguro a partir de qualquer dispositivo (Windows, macOS, iOS, Android, navegador web);
- Sessão multi-utilizador no Windows 11 Enterprise multi-session — reduz o custo de licenciamento;
- Gestão centralizada de imagens e aplica via Azure Image Builder;
- Integração com Microsoft Entra ID sem necessidade de controladores de domínio locais (com Entra-joined hosts);
- Escala automática conforme a procura dos utilizadores.
2. AVD vs Windows 365: Qual Escolher
A Microsoft oferece duas soluções de virtualização de desktops que se sobrepõem parcialmente, mas servem cenários diferentes. Compreender as diferenças é fundamental para a decisão de arquitectura.
| Aspecto | Azure Virtual Desktop | Windows 365 |
|---|---|---|
| Modelo | PaaS — partilha de recursos | SaaS — PC dedicado na nuvem |
| Atribuição de recursos | Multi-sessão (partilhado) | 1 utilizador = 1 PC dedicado |
| Custos | Pay-as-you-go + Reserved Instances | Preço fixo mensal por utilizador |
| Escalonamento | Automático (autoscale) | Manual (adicionar/remover licenças) |
| Personalização | Elevada — imagens custom, scripts | Moderada — configurações predefinidas |
| Ideal para | PMEs com 30+ utilizadores, cenários variáveis | Pequenas equipas (<30), previsibilidade |
💡 Dica: Para uma PME com 50 ou mais utilizadores e padrões de uso variáveis (por exemplo, trabalho por turnos), o AVD com escalonamento automático é quase sempre mais económico que o Windows 365. Para 15 utilizadores com uso constante das 9 às 18h, o Windows 365 oferece simplicidade e custo previsível.
3. Arquitectura do AVD
A arquitectura do AVD separa claramente o plano de controlo (gerido pela Microsoft) do plano de dados (gerido pelo cliente). Esta separação reduz a carga operacional e elimina a necessidade de manter gateways RDS tradicionais.
Os componentes principais são:
- AVD Control Plane: gestão de ligações, autenticação, broker de sessões — gerido pela Microsoft sem custo adicional;
- Host Pools: conjuntos de VMs que executam as sessões dos utilizadores;
- Application Groups: agrupamentos lógicos de aplicações ou desktops atribuídos a utilizadores;
- Workspaces: contentores que organizam application groups para publicação nos clientes;
- FSLogix: solução de perfil que armazena perfis de utilizador em VHDs/XHDs montados dinamicamente;
- Armazenamento: Azure Files (Premium ou Standard) ou Azure NetApp Files para os contentores FSLogix.
# Diagrama simplificado da arquitectura AVD
[Utilizadores] --> [AVD Gateway (Microsoft)]
|
v
[AVD Broker / Control Plane]
|
v
[Host Pool -- Session Hosts (VMs)]
| |
v v
[Azure Files / [Entra ID /
NetApp Files] AD DS]
# O cliente liga-se ao gateway, que encaminha
# directamente para o session host via ligação RDP inversa.
Uma das vantagens fundamentais é que o tráfego RDP não passa pelo plano de controlo da Microsoft — apenas a sinalização inicial. Após o estabelecimento da sessão, o tráfego flui directamente entre o cliente e o session host, reduzindo a latência.
ℹ️ Informação: Em 2026, o AVD suporta três modelos de identidade para session hosts: Entra ID-joined (sem AD DS), Entra ID + AD DS híbrido, e AD DS puro. Para PMEs que pretendem eliminar servidores locais, o Entra ID-joined é a opção recomendada.
4. Host Pools e Session Hosts
Um Host Pool é um conjunto de VMs que executam o mesmo SO base e conjunto de aplicações. Existem dois tipos: pooled (multi-sessão, partilhado entre utilizadores) e personal (atribuição dedicada 1:1).
A criação de um host pool pode ser feita via Azure Portal, ARM template, Bicep, Terraform ou PowerShell. Abaixo, um exemplo completo em Azure CLI:
# Criar resource group
az group create --name "rg-avd-pme" --location "westeurope"
# Registar o provider do AVD (se ainda não estiver)
az provider register --namespace Microsoft.DesktopVirtualization
# Criar host pool pooled (multi-sessão)
az desktopvirtualization hostpool create \
--name "hp-pme-pooled" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--host-pool-type "Pooled" \
--load-balancer-type "DepthFirst" \
--max-session-limit 8 \
--preferred-app-group-type "Desktop" \
--validation-environment false
# O DepthFirst load balancing preenche primeiro uma VM
# até ao limite de sessões antes de usar a próxima,
# optimizando o uso de recursos.
Para criar session hosts (VMs) e adicioná-los ao host pool, pode-se usar o Azure Image Builder para gerar uma imagem personalizada:
# Adicionar session hosts ao host pool existente
# Via Azure CLI — criar 3 VMs D4s v5
az vm create \
--resource-group "rg-avd-pme" \
--name "avd-sh-{1..3}" \
--image "/subscriptions/SUB-ID/resourceGroups/rg-avd-pme/providers/Microsoft.Compute/galleries/sig_avd/images/win11-avd/versions/1.0.0" \
--size "Standard_D4s_v5" \
--admin-username "adminavd" \
--admin-password "PasswordSegura#2026!" \
--vnet-name "vnet-avd-pme" \
--subnet "snet-sessionhosts" \
--os-disk-type "Premium SSD" \
--no-wait
# Após criação, registar as VMs no host pool
# (feito automaticamente pela extensão AVD agent)
| Tipo de Host Pool | Load Balancer | Casos de Uso |
|---|---|---|
| Pooled | Breadth-first / Depth-first | Call centers, equipas partilhadas |
| Personal | Automático (1:1) | Desenvolvedores, utilizadores com software especializado |
⚠️ Atenção: Defina o max-session-limit com cuidado. Um valor demasiado alto degrada a experiência por sobrecarga de CPU/RAM por VM; demasiado baixo aumenta custos por necessitar de mais VMs. Para cargas de escritório típicas, 6–10 sessões por D4s v5 é um bom ponto de partida.
5. Application Groups
As Application Groups são contentores lógicos que determinam o que cada utilizador vê quando se liga. Existem dois tipos: Desktop Application Group (ambiente completo) e RemoteApp Application Group (aplicações individuais publicadas).
Cada host pool é criado com um Desktop Application Group predefinido, mas é possível criar RemoteApp groups para publicar apenas aplicações específicas — ideal para cenários onde os utilizadores só precisam de uma ferramenta pontual como um ERP.
# Criar RemoteApp Application Group
az desktopvirtualization appgroup create \
--name "ag-erp-remoteapp" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--host-pool-arm-path "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.DesktopVirtualization/hostpools/hp-pme-pooled" \
--app-group-type "RemoteApp"
# Adicionar aplicações ao RemoteApp group
az desktopvirtualization application create \
--app-group-name "ag-erp-remoteapp" \
--resource-group "rg-avd-pme" \
--name "erp-prima" \
--file-path "C:\\Program Files\\ERP\\Prima.exe" \
--icon-path "C:\\Program Files\\ERP\\prima.ico" \
--command-line-settings "Allow"
A atribuição de utilizadores é feita via atribuição de funções RBAC no Entra ID, tornando a gestão simples e auditável:
# Atribuir o grupo de utilizadores ao Application Group
az role assignment create \
--role "Desktop Virtualization User" \
--assignee "[email protected]" \
--scope "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.DesktopVirtualization/appgroups/ag-erp-remoteapp"
6. Workspaces
Os Workspaces são o contentor final na hierarquia do AVD. Um workspace agrega um ou mais application groups e é o que os clientes AVD (Windows Remote Desktop, web client, mobile) apresentam ao utilizador final.
# Criar workspace
az desktopvirtualization workspace create \
--name "ws-pme-empresa" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--friendly-name "Ambiente de Trabalho - Empresa PME"
# Associar o Desktop Application Group ao workspace
az desktopvirtualization workspace update \
--name "ws-pme-empresa" \
--resource-group "rg-avd-pme" \
--application-group-references "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.DesktopVirtualization/appgroups/ag-desktop-default"
# Os utilizadores vêem os recursos no cliente AVD após
# autenticação com a sua conta Entra ID.
💡 Dica: Para organizações com múltiplas filiais ou departamentos distintos, considere criar workspaces separados por unidade organizacional. Isto simplifica a experiência do utilizador final — cada pessoa vê apenas os recursos relevantes, sem ruído visual.
7. FSLogix para Profile Containers
O FSLogix é a solução de perfil recomendada pela Microsoft para ambientes não-persistentes. Em vez de perfis tradicionais (roaming ou locais), o FSLogix cria um contentor VHD(X) por utilizador, montado dinamicamente no início da sessão e desmontado no fim. Isto garante persistência de perfil mesmo em ambientes pooled multi-sessão.
As vantagens do FSLogix incluem:
- Tempos de início de sessão muito reduzidos comparado a perfis roaming;
- Suporte para Outlook em modo cached (OST dentro do contentor);
- Funciona com Azure Files sem necessidade de VM de storage gateway;
- Compatibilidade com Office 365, OneDrive e Teams.
# Criar Azure Files Premium para FSLogix
az storage account create \
--name "stavdfslogixpme" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--sku "Premium_ZRS" \
--kind "FileStorage" \
--enable-large-file-shares true
# Criar a partilha de ficheiros
az storage share create \
--name "fslogix-profiles" \
--account-name "stavdfslogixpme"
# Activar Entra ID (Entra Kerberos) no Azure Files
az storage account file-service-properties update \
--account-name "stavdfslogixpme" \
--resource-group "rg-avd-pme" \
--enable-azure-files-aad-kerberos true \
--azure-files-aad-kerberos-ticket-encryption "AES256"
Após criar o armazenamento, configura-se o FSLogix via GPO ou registry nos session hosts:
# Configuração FSLogix via PowerShell (executar em cada session host)
$regPath = "HKLM:\SOFTWARE\FSLogix\Profiles"
# Activar FSLogix
New-Item -Path $regPath -Force
Set-ItemProperty -Path $regPath -Name "Enabled" -Value 1 -Type DWord
# Caminho UNC do contentor
Set-ItemProperty -Path $regPath -Name "VHDLocations" -Value "\\stavdfslogixpme.file.core.windows.net\fslogix-profiles"
# Tamanho máximo do contentor (GB)
Set-ItemProperty -Path $regPath -Name "SizeInMBs" -Value 30000 -Type DWord
# Formato do ficheiro (VHDX recomendado)
Set-ItemProperty -Path $regPath -Name "VolumeType" -Value "VHDX"
# Eliminar perfil local se existir
Set-ItemProperty -Path $regPath -Name "DeleteLocalProfileWhenVHDShouldApply" -Value 1 -Type DWord
# Convenção de nome do contentor
Set-ItemProperty -Path $regPath -Name "FlipFlopProfileDirectoryMode" -Value 2 -Type DWord
Write-Output "FSLogix configurado. Reiniciar para aplicar."
🚫 Perigo: Nunca active o DeleteLocalProfileWhenVHDShouldApply sem confirmar que não existem perfis locais importantes nos session hosts. Esta opção elimina perfis locais pré-existentes sem confirmação. Faça backup antes de aplicar em produção.
8. Configurar Azure AD Join
Em 2026, o Entra ID Join (antigo Azure AD Join) é o modelo recomendado para PMEs que pretendem eliminar infraestrutura local. Os session hosts juntam-se directamente ao Entra ID, sem necessidade de controladores de domínio, VPNs site-to-site ou sincronização de identidades.
O Entra ID Join suporta:
- SSO para serviços Microsoft 365 via Primary Refresh Token (PRT);
- Acesso a file shares Azure Files via Entra Kerberos;
- Acesso condicional (Conditional Access) sobre as sessões AVD;
- MFA via Microsoft Entra durante o início de sessão.
# Registar a app do AVD no Entra ID (já criada por defeito)
# Verificar a aplicação "Azure Virtual Desktop"
Get-AzADServicePrincipal -DisplayName "Azure Virtual Desktop" | Select-Object DisplayName, AppId
# Configurar Entra ID Join no host pool
az desktopvirtualization hostpool update \
--name "hp-pme-pooled" \
--resource-group "rg-avd-pme" \
--custom-rdp-property "targetisaadjoined:i:1"
# Atribuir role "Virtual Machine User Login" ao grupo de utilizadores
az role assignment create \
--role "Virtual Machine User Login" \
--assignee "[email protected]" \
--scope "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme"
ℹ️ Informação: O targetisaadjoined:i:1 no ficheiro RDP instrui o cliente a usar o token Entra ID para autenticação. Sem isto, a autenticação NTLM/Kerberos clássica seria tentada e falharia num ambiente sem AD DS.
Para casos em que aplicações legadas dependem de AD DS, é possível manter uma configuração híbrida: session hosts Entra-joined, com Azure AD Application Proxy ou Entra Domain Services para compatibilidade. Para mais detalhes sobre identidade e MFA, consulte o artigo sobre Microsoft Entra MFA.
9. Networking e MSIX App Attach
O desenho de rede é um dos factores mais críticos na performance do AVD. A latência entre os session hosts e os utilizadores, entre os session hosts e o armazenamento FSLogix, e entre os session hosts e os controladores de domínio (se aplicável) determinam a qualidade da experiência.
Boas práticas de networking:
- Colocar session hosts e Azure Files na mesma região e mesmo VNet;
- Usar Azure Files Premium com ZRS para baixa latência e resiliência;
- Configurar Private Endpoints para Azure Files, Key Vault e outros serviços PaaS;
- Usar RDP Shortpath para ligações directas e optimizadas (UDP quando possível);
- Implementar NSGs para restringir tráfego entre subnets.
# Criar VNet e subnets para AVD
az network vnet create \
--name "vnet-avd-pme" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--address-prefix "10.40.0.0/16"
# Subnet para session hosts
az network vnet subnet create \
--name "snet-sessionhosts" \
--resource-group "rg-avd-pme" \
--vnet-name "vnet-avd-pme" \
--address-prefix "10.40.1.0/24"
# Subnet para Private Endpoints
az network vnet subnet create \
--name "snet-privateendpoints" \
--resource-group "rg-avd-pme" \
--vnet-name "vnet-avd-pme" \
--address-prefix "10.40.2.0/27"
# Private Endpoint para Azure Files (FSLogix)
az network private-endpoint create \
--name "pe-avd-files" \
--resource-group "rg-avd-pme" \
--vnet-name "vnet-avd-pme" \
--subnet "snet-privateendpoints" \
--private-connection-resource-id "/subscriptions/SUB-ID/resourceGroups/rg-avd-pme/providers/Microsoft.Storage/storageAccounts/stavdfslogixpme" \
--group-ids "file" \
--connection-name "conn-avd-files"
O MSIX App Attach é uma tecnologia de distribuição de aplicações que monta pacotes MSIX dinamicamente durante a sessão, sem necessidade de instalação. Isto permite:
- Actualizar aplicações sem recriar a imagem base;
- Aplicações isoladas, sem conflitos entre versões;
- Distribuição granular por grupo de utilizadores.
# Registar uma imagem MSIX no host pool (preview CLI)
az desktopvirtualization msix-package create \
--host-pool-name "hp-pme-pooled" \
--resource-group "rg-avd-pme" \
--name "msix-libreoffice" \
--image-uri "https://stavdimagespme.blob.core.windows.net/msix/LibreOffice-7.6.msix" \
--package-name "LibreOffice" \
--package-version "7.6.0.0" \
--package-display-name "LibreOffice 7.6" \
--package-alias "libreoffice" \
--active true \
--regular-package true
10. Escalonamento Automático
O Scaling Plan do AVD permite ajustar automaticamente o número de session hosts activos conforme os padrões de uso. Isto reduz custos significativamente, especialmente em cenários com janelas de baixo uso (noite, fins de semana).
Os scaling plans definem:
- Capacidade mínima e máxima de hosts activos;
- Percentagem de hosts a manter em draining;
- Horários por dia da semana (ramp-up, peak, ramp-down, off-peak);
- Dias de exclusão (feriados, períodos de manutenção).
# Criar scaling plan para horário de escritório
az desktopvirtualization scaling-plan create \
--name "sp-escritorio" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--host-pool-references "[{\"hostPoolArmPath\":\"/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.DesktopVirtualization/hostpools/hp-pme-pooled\",\"scalingPlanEnabled\":true}]" \
--time-zone "GMT Standard Time" \
--schedules '[{"name":"Seg-Sex","daysOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"rampUpStartTime":"08:00:00","rampUpLoadBalancingAlgorithm":"DepthFirst","rampUpMinimumHostsPct":50,"rampUpCapacityThresholdPct":90,"peakStartTime":"09:00:00","peakLoadBalancingAlgorithm":"BreadthFirst","rampDownStartTime":"18:00:00","rampDownLoadBalancingAlgorithm":"DepthFirst","rampDownMinimumHostsPct":10,"rampDownCapacityThresholdPct":50,"rampDownStopHostsWhen":2,"offPeakStartTime":"20:00:00","offPeakLoadBalancingAlgorithm":"DepthFirst"}]'
💡 Dica: Configure rampDownStopHostsWhen:2 para que as VMs sejam dealocadas (stop) em vez de apenas colocadas em draining. VMs dealocadas não incorrem em custo de computação, apenas o disco gerido continua a ser cobrado. Esta é a forma mais eficaz de reduzir a factura mensal.
11. Monitorização com Azure Monitor
A monitorização é essencial para garantir a qualidade da experiência dos utilizadores e identificar problemas proactivamente. O AVD integra nativamente com o Azure Monitor através de Diagnostic Settings que enviam logs e métricas para um Log Analytics Workspace.
As métricas e logs mais importantes incluem:
- ConnectionInsights: latência de ligação, duração, falhas de autenticação;
- SessionInsights: número de sessões activas, tempo de início;
- HostInsights: CPU, RAM, disco por session host;
- AutoscaleEvaluation: decisões de escalonamento e suas razões.
# Criar Log Analytics Workspace
az monitor log-analytics workspace create \
--name "law-avd-pme" \
--resource-group "rg-avd-pme" \
--location "westeurope" \
--sku "PerGB2018"
# Activar diagnostic settings no host pool
az monitor diagnostic-settings create \
--name "diag-hp-pme" \
--resource "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.DesktopVirtualization/hostpools/hp-pme-pooled" \
--resource-namespace "Microsoft.DesktopVirtualization" \
--resource-type "hostpools" \
--workspace "/subscriptions/SUB-ID/resourcegroups/rg-avd-pme/providers/Microsoft.OperationalInsights/workspaces/law-avd-pme" \
--logs '[{"category":"ConnectionInsights","enabled":true},{"category":"SessionInsights","enabled":true},{"category":"HostInsights","enabled":true},{"category":"AutoscaleEvaluation","enabled":true},{"category":"Errors","enabled":true}]'
Com os logs centralizados, pode-se criar alertas e dashboards via KQL (Kusto Query Language):
// KQL: Sessões por host — últimas 24h
WVDConnections
| where TimeGenerated > ago(24h)
| where State == "Completed"
| summarize Sessoes = count() by SessionHostName
| order by Sessoes desc
| render barchart
// KQL: Latência média de ligação
WVDConnections
| where TimeGenerated > ago(1h)
| where State == "Completed"
| extend DuracaoSeg = toint(DurationMs) / 1000
| summarize LatenciaMediaSeg = avg(DuracaoSeg) by bin(TimeGenerated, 15m)
| render timechart
ℹ️ Informação: Para uma visão de segurança adicional, integre os logs do AVD com o Microsoft Sentinel para detecção de anomalias como ligações de IPs inesperados ou múltiplas falhas de autenticação. Para a protecção de endpoints, consulte o artigo sobre Microsoft Defender para Endpoint.
12. Optimização de Custos
A optimização de custos é particularmente importante para PMEs, onde o orçamento é mais sensível. Existem várias estratégias que, combinadas, podem reduzir a factura mensal em 40–60%.
| Estratégia | Poupança Estimada | Esforço |
|---|---|---|
| Reserved Instances (3 anos) | ~55–60% | Baixo |
| Autoscale (dealocação fora de horas) | ~30–50% | Médio |
| Spot VMs (para cenários tolerantes) | ~70–85% | Médio |
| Tier de armazenamento correto | ~20–40% no storage | Baixo |
| Imagem otimizada (app attach vs. install) | ~10–20% (disco menor) | Médio |
# Comprar Reserved Instance para VMs D-series
az reservations reservation-order-purchase \
--applied-scope-type "Shared" \
--billing-scope "/subscriptions/SUB-ID" \
--reserved-resource-type "VirtualMachines" \
--sku "Standard_D4s_v5" \
--term "P3Y" \
--quantity 5 \
--display-name "RI-AVD-D4s-v5-3Y"
# O Reserved Instance de 3 anos é a poupança
# mais significativa para cargas previsíveis.
⚠️ Atenção: As Spot VMs não são recomendadas para host pools de produção onde a disponibilidade é crítica, pois podem ser dealocadas pela Microsoft com apenas 30 segundos de aviso. Use Spot apenas para hosts de desenvolvimento/teste ou cenários tolerantes a interrupções.
Para empresas que já tenham licenças Microsoft 365 E3/E5 ou Business Premium, o direito de acesso ao AVD está incluído — não há custo adicional de licenciamento por utilizador. Isto é uma vantagem competitiva importante do AVD face a soluções de terceiros.
13. Cenário Prático PME
Considere uma empresa portuguesa com 60 utilizadores (45 de escritório + 15 de campo), distribuídos entre o Porto e Lisboa, que pretende eliminar servidores físicos e permitir trabalho híbrido. O orçamento mensal de TI é limitado.
Requisitos:
- Acesso a um ERP desktop e ao Microsoft 365;
- Persistência de perfil de utilizador entre sessões;
- Trabalho híbrido: escritório + casa + dispositivos BYOD;
- MFA obrigatório;
- Disponibilidade das 8h às 20h em dias úteis.
Arquitectura proposta:
# Infraestrutura: 60 utilizadores, padrão 8h-20h
# 6 VMs Standard_D4s_v5 (4 vCPU, 16 GB RAM cada)
# = 8 sessões por VM = 48 sessões simultâneas
# + 2 VMs em standby (autoscale)
# Custo estimado mensal (com RI 3 anos):
# - 6 VMs D4s v5: ~€1,200/mês (pago com RI)
# - Azure Files Premium 1 TB: ~€110/mês
# - Storage discos OS (6x127GB): ~€75/mês
# - Tráfego de saída: ~€20/mês
# - Log Analytics: ~€15/mês
# -----------------------------------------
# Total aproximado: ~€1,420/mês
# Custo por utilizador: ~€23/mês (com RI)
# Sem Reserved Instances: ~€2,700/mês
# Poupança com RI: ~48%
Passos de implementação:
- Criar resource group, VNet e subnets na região West Europe (baixa latência para Portugal);
- Provisionar Azure Files Premium para FSLogix com Private Endpoint;
- Construir imagem Windows 11 Enterprise multi-session via Azure Image Builder com ERP e Office pré-instalados;
- Criar host pool pooled com depth-first load balancing e max-session=8;
- Configurar Entra ID Join e Conditional Access com MFA obrigatório (ver Microsoft Entra MFA);
- Configurar FSLogix apontando para o Azure Files;
- Criar workspace e publicar o Desktop Application Group;
- Atribuir utilizadores via grupos Entra ID;
- Configurar scaling plan para horário 8h-20h;
- Activar logs de diagnóstico para o Log Analytics;
- Adquirir Reserved Instances de 3 anos para as VMs;
- Testar com um grupo piloto durante 2 semanas antes do rollout completo.
💡 Dica: Para os 15 utilizadores de campo que só precisam do ERP ocasionalmente, considere publicar o ERP como RemoteApp em vez de desktop completo. Isto reduz o consumo de recursos e simplifica a experiência — o utilizador abre apenas a aplicação que precisa, como se fosse local.
14. Checklist de Implementação
Uma implementação bem-sucedida do AVD depende de uma sequência correcta de passos. Use este checklist para garantir que nada é omitido.
| # | Tarefa | Fase |
|---|---|---|
| 1 | Verificar licenças Microsoft 365 (E3/E5/Business Premium) | Pré-requisitos |
| 2 | Criar resource group, VNet e subnets | Infraestrutura |
| 3 | Provisionar Azure Files Premium + Private Endpoint | Infraestrutura |
| 4 | Construir imagem Windows 11 multi-session com Azure Image Builder | Imagem |
| 5 | Instalar agentes AVD, FSLogix e configurações base na imagem | Imagem |
| 6 | Criar host pool (pooled ou personal) com load balancing correcto | Configuração |
| 7 | Provisionar session hosts e registar no host pool | Configuração |
| 8 | Configurar Entra ID Join ou AD DS conforme modelo de identidade | Identidade |
| 9 | Configurar FSLogix apontando para Azure Files | Perfis |
| 10 | Criar application groups (Desktop e/ou RemoteApp) | Publicação |
| 11 | Criar workspace e associar application groups | Publicação |
| 12 | Atribuir utilizadores/grupos via RBAC (Virtual Machine User Login) | Acesso |
| 13 | Configurar Conditional Access com MFA obrigatório | Segurança |
| 14 | Activar RDP Shortpath e otimizar políticas RDP | Performance |
| 15 | Configurar scaling plan com horários de operação | Escalonamento |
| 16 | Activar diagnostic settings para Log Analytics | Monitorização |
| 17 | Adquirir Reserved Instances (1 ou 3 anos) | Custos |
| 18 | Testar com grupo piloto (mínimo 2 semanas) | Validação |
| 19 | Rollout por fases (20% → 50% → 100%) | Migração |
| 20 | Documentar procedimentos de operação e DR | Documentação |
⚠️ Atenção: Não atribua todos os utilizadores de uma só vez no dia do go-live. Faça o rollout por fases: comece com 20% dos utilizadores durante uma semana, depois 50%, e só então os 100%. Isto permite detectar problemas de performance e ajustar o max-session-limit ou o sizing das VMs antes de afectar toda a organização.
O AVD é uma tecnologia madura em 2026 e continua a ser a melhor opção para PMEs que pretendem um VDI flexível, económico e sem infraestrutura local. Com a combinação correcta de Entra ID Join, FSLogix, autoscaling e Reserved Instances, é possível entregar uma experiência de trabalho remoto de classe empresarial por menos de €25 por utilizador/mês.
Para artigos relacionados que complementam esta implementação:
- Azure VPN Gateway: Site-to-Site em 2026 — para cenários híbridos com rede local;
- Windows Admin Center: Gestão de Servidores — gestão híbrida de VMs;
- Microsoft Defender para Endpoint em PMEs — segurança dos session hosts;
- Microsoft Entra MFA: Multi-Factor Authentication — Conditional Access sobre o AVD;
- Hyper-V: Virtualização com PowerShell — fundamentos de virtualização no Windows.
