Problema
Muchos profesionales que se preparan para certificaciones como Windows Server 2022 o Azure Administrator buscan un entorno aislado donde probar roles, políticas de grupo y servicios de red. La opción más cómoda es lanzar máquinas virtuales (VM) en la nube y descartarlas al terminar. Sin embargo, el coste de una suscripción paga puede ser un obstáculo, y la versión gratuita de Azure (Free Account) parece demasiado limitada: 12 meses de recursos básicos y un crédito inicial que se agota rápido. La duda recurrente es si esa capa gratuita permite crear un lab Windows Server suficientemente funcional para practicar los escenarios de examen.
Causa
La confusión proviene de tres factores habituales:
- Restricciones de cuota – La cuenta gratuita asigna un número limitado de cores y de RAM por región. Si intentas desplegar varias VM simultáneas, el portal muestra errores de “insufficient quota”.
- Disponibilidad de imágenes – No todas las versiones de Windows Server aparecen en el marketplace de la suscripción gratuita; a veces solo están las imágenes “Windows Server 2019 Datacenter” o “2022 Datacenter” con licencia incluida.
- Persistencia del crédito – El crédito inicial (USD 200) desaparece después de 30 días. A partir de entonces, solo se pueden usar los recursos incluidos en el plan gratuito, lo que obliga a optimizar el consumo de CPU y disco.
En la práctica, el problema se reduce a planificar el uso de recursos dentro de los límites de la cuenta gratuita y a aprovechar al máximo las herramientas de automatización para evitar sobrecargar la cuota.
Solución
La estrategia consiste en tres pasos: dimensionar la VM, automatizar su despliegue y limpiar recursos al terminar. Cada paso es reusable para cualquier laboratorio de Windows Server, no solo para certificaciones.
1. Dimensionar la VM dentro de la cuota
- Tipo de VM: Usa la serie B (burstable) que consume menos cores y permite “acumular” créditos de CPU. Un
Standard_B1s(1 vCPU, 1 GiB RAM) suele ser suficiente para instalar Active Directory, DNS y DHCP en una única instancia. - Almacenamiento: Opta por discos administrados de 30 GiB tipo Standard SSD; son baratos y cumplen los requisitos mínimos de Windows Server.
- Red: Crea una red virtual (VNet) con una subred de /24; no necesitas NAT Gateway ni VPN para pruebas locales.
2. Despliegue automatizado con Azure CLI
Mantener el proceso manual genera errores de configuración y hace difícil reproducir el entorno. Un script corto con Azure CLI permite:
- Crear el grupo de recursos.
- Definir la VNet y la subred.
- Lanzar la VM con la imagen de Windows Server.
- Aplicar extensiones de Custom Script para instalar roles automáticamente.
#!/usr/bin/env bash
# Variables básicas
RG="lab-ws-free"
LOC="eastus"
VNET="lab-vnet"
SUBNET="lab-subnet"
VM="ws-lab"
IMG="MicrosoftWindowsServer:WindowsServer:2022-Datacenter:latest"
# 1. Grupo de recursos
az group create --name $RG --location $LOC
# 2. VNet y Subnet
az network vnet create \
--resource-group $RG \
--name $VNET \
--address-prefix 10.0.0.0/16 \
--subnet-name $SUBNET \
--subnet-prefix 10.0.1.0/24
# 3. IP pública (opcional, solo para RDP)
az network public-ip create \
--resource-group $RG \
--name "${VM}-pip"
# 4. NIC
az network nic create \
--resource-group $RG \
--vnet-name $VNET \
--subnet $SUBNET \
--name "${VM}-nic" \
--public-ip-address "${VM}-pip"
# 5. VM
az vm create \
--resource-group $RG \
--name $VM \
--location $LOC \
--nics "${VM}-nic" \
--image $IMG \
--size Standard_B1s \
--admin-username azureuser \
--generate-ssh-keys \
--os-disk-size-gb 30
# 6. Extensión para instalar AD DS y DNS
az vm extension set \
--publisher Microsoft.Compute \
--version 1.10 \
--name CustomScriptExtension \
--resource-group $RG \
--vm-name $VM \
--settings '{"fileUris":["https://raw.githubusercontent.com/mi-repo/scripts/main/install-ad-dns.ps1"]}' \
--protected-settings '{"commandToExecute":"powershell -ExecutionPolicy Unrestricted -File install-ad-dns.ps1"}'
Tip: Guarda el script en un repositorio privado y apunta
fileUrisa la URL cruda. Así mantienes la versión controlada y puedes actualizar los roles sin tocar el despliegue.
3. Limpieza automática
Al terminar la práctica, elimina el grupo de recursos completo. Azure liberará la cuota inmediatamente, evitando que una VM “zombie” bloquee futuros despliegues.
az group delete --name $RG --yes --no-wait
Cuándo aplicar esta solución
- Escenarios de estudio: Preparación para exámenes Microsoft Certified: Windows Server o Azure Administrator donde se necesita un dominio, controladores de dominio y servicios de red.
- Presupuesto limitado: Cuando solo se dispone de la suscripción gratuita o de un pequeño crédito de Azure.
- Entornos temporales: Laboratorios que se crean, usan y destruyen en cuestión de horas o días.
No aplicar si:
- Necesitas ejecutar cargas de trabajo intensivas (SQL Server con alta I/O, Hyper‑V nested) que superan los límites de la serie B.
- Requieres alta disponibilidad o balanceo de carga; la cuenta gratuita no permite crear varios nodos con tráfico distribuido.
- Tu organización exige cumplimiento de normas que requieran discos encriptados con claves propias; la versión gratuita solo ofrece cifrado gestionado por Microsoft.
Verificación
- Conexión RDP: Usa la IP pública mostrada por
az vm show -d -g $RG -n $VM --query publicIps -o tsv. Verifica que puedes iniciar sesión conazureuser. - Roles instalados: Ejecuta
Get-WindowsFeature AD-Domain-Services, DNSen PowerShell; ambos deben aparecer con estado Installed. - Cuota liberada: Después de
az group delete, correaz vm list-sizes -l $LOCy comprueba que los cores de la serie B aparecen disponibles nuevamente.
Notas adicionales
- Limite de 5 vCPU en la suscripción gratuita: si necesitas más de una VM, distribúyelas en diferentes regiones o usa VM Scale Sets con tamaños B más pequeños.
- Licenciamiento: Las imágenes de Windows Server en el marketplace incluyen la licencia de uso bajo la suscripción gratuita, por lo que no hay cargos adicionales mientras la VM está dentro de los límites de la cuenta.
- Persistencia de datos: Los discos administrados se borran al eliminar el grupo de recursos. Si necesitas conservar configuraciones, exporta los scripts de PowerShell o crea snapshots antes de la eliminación.
- Automatización CI/CD: Puedes integrar el script en un pipeline de GitHub Actions para generar laboratorios bajo demanda, útil para equipos de estudio colaborativo.
- Monitoreo ligero: Azure Monitor está disponible sin coste adicional para la cuenta gratuita; habilita métricas básicas (CPU, Disk) para detectar cuellos de botella antes de que la cuota se agote.
Con estos pasos, la cuenta gratuita de Azure deja de ser una limitación y se convierte en un sandbox ágil para practicar Windows Server, sin necesidad de invertir en hardware físico o suscripciones pagas.