AZ-104

Deep Dive

D5 · Monitoreo

Métricas y KPIs

Las métricas son el tipo de dato de monitoreo más frecuente en Azure — series temporales numéricas que permiten visualizar el estado de los recursos en tiempo casi real. El AZ-104 evalúa Metrics Explorer, métricas por servicio y cómo usarlas para autoscaling.

Metrics Explorer

Metrics Explorer es la interfaz gráfica de Azure Monitor para visualizar métricas. Permite crear gráficos combinando múltiples métricas, aplicar filtros por dimensión, cambiar la granularidad temporal y guardar vistas favoritas.

Configuración de un gráfico

Scope

Recurso(s) cuya métrica visualizar. Puede ser un recurso, grupo de recursos o suscripción.

Metric Namespace

Categoría de la métrica (ej: Microsoft.Compute/virtualMachines para VMs).

Metric

La métrica específica (ej: Percentage CPU, Network In Total).

Aggregation

Avg, Max, Min, Sum, Count. Cómo combinar los puntos de datos dentro del granularity period.

Granularity

Resolución temporal: 1 min, 5 min, 15 min, 1h, 6h, 12h, 1d. Mayor granularidad = menos detalle pero más rápido.

Filter / Split by

Filtrar por dimensión (ej: solo Core 0) o dividir el gráfico por dimensión (una línea por core).

Retención de métricas

Granularidad 1 min: disponible los últimos 93 días

Granularidad 1 hora: disponible los últimos 93 días

• Para retención más larga: exportar a Storage Account via Diagnostic Settings

• Métricas de plataforma: sin costo de almacenamiento en los 93 días

Tipos de gráfico

Line chart: evolución temporal. El más común.

Bar chart: comparación entre períodos o dimensiones.

Scatter chart: correlación entre dos métricas.

Area chart: similar a línea pero con área sombreada.

Heatmap: disponible para ciertas métricas multi-dimensión.

Métricas de plataforma

Las métricas de plataforma son recopiladas automáticamente por Azure para todos los recursos — sin configuración adicional. Representan el estado del recurso desde el punto de vista de Azure (no del OS interno de la VM).

ServicioMétricas claveQué monitorear
Virtual MachinePercentage CPU, Network In/Out Total, Disk Read/Write Bytes/OperationsCPU throttling, saturación de red, IOPS de disco
Azure SQL DatabaseDTU consumption %, CPU %, Storage %, Failed Connections, DeadlocksSaturación de DTU, conexiones fallidas (credenciales o firewall), deadlocks en queries
App ServiceRequests, Response Time, Http 5xx, CPU Percentage, Memory PercentageErrores 5xx (bugs en app), latencia alta, saturación de recursos del App Service Plan
Storage AccountAvailability, Ingress, Egress, SuccessE2ELatency, TransactionsDisponibilidad baja (incidente Azure), latencia alta (cuello de botella en app)
Load BalancerByte Count, Packet Count, Health Probe Status, SNAT Connection CountBackends unhealthy (Health Probe Status), agotamiento de SNAT (conexiones salientes)
VPN GatewayGateway S2S Bandwidth, Tunnel Ingress/Egress Bytes, P2S Connection CountSaturación del túnel VPN, número de usuarios P2S conectados
Azure Kubernetes ServiceNode CPU %, Node Memory %, Pod Count, Failed Pod CountNodos saturados, pods fallando (OOM, crashloop)

Métricas de Guest OS

Las métricas de guest OS provienen del sistema operativo de la VM — no del hypervisor. Incluyen métricas de memoria, disco de datos, procesos y otras que el hypervisor no puede observar. Requieren Azure Monitor Agent.

Windows — métricas clave de guest

  • Memory\Available Bytes — RAM disponible (la plataforma no puede ver memoria del OS)
  • LogicalDisk\% Free Space — espacio libre por disco lógico
  • LogicalDisk\Disk Reads/Writes per sec — IOPS por partición
  • Process\% Processor Time — CPU por proceso
  • System\Processor Queue Length — cola del scheduler

Linux — métricas clave de guest

  • mem\MemAvailable — RAM disponible
  • disk\Free — espacio libre por mount point
  • disk\reads/writes per second — IOPS por disco
  • process\pctUsedMemory — uso de memoria por proceso
  • netstatistics\tx/rx bytes — tráfico de red

Importante: memoria no está en métricas de plataforma

La métrica Percentage CPU de plataforma refleja el uso de CPU desde el hypervisor. Sin embargo, la memoria NO está disponible en métricas de plataforma — para monitorear RAM debes instalar Azure Monitor Agent y configurar la recopilación de métricas de guest OS.

Métricas personalizadas

Las Custom Metrics permiten publicar tus propias métricas en Azure Monitor (ej: número de pedidos procesados por hora, tamaño de queue, errores de negocio). Se pueden usar en alertas y Metrics Explorer igual que las métricas de plataforma.

Application Insights SDK

trackMetric() en el SDK de Application Insights. Las métricas se exponen en Azure Monitor automáticamente. Mejor opción para aplicaciones instrumentadas.

REST API directa

POST a la API de Azure Monitor Metrics con autenticación de Managed Identity. Para cualquier recurso que pueda hacer llamadas HTTP autenticadas.

Azure Monitor Agent

Mediante Data Collection Rules con transformaciones KQL se pueden crear métricas calculadas a partir de logs. Más complejo pero poderoso.

Autoscale basado en métricas

Azure Autoscale ajusta automáticamente el número de instancias de un recurso basándose en métricas, programación o ambas. Disponible para VMSS, App Service, AKS, y otros servicios PaaS.

Componentes de un perfil de Autoscale

Capacity

Mínimo, máximo y número por defecto de instancias.

Scale-out Rule

Condición para añadir instancias: ej, CPU > 70% durante 10 minutos → añadir 2 instancias.

Scale-in Rule

Condición para eliminar instancias: ej, CPU < 30% durante 10 minutos → eliminar 1 instancia.

Cooldown period

Tiempo de espera entre acciones de escala (default 5 min scale-out, 5 min scale-in) para evitar oscilaciones.

Schedule (opcional)

Perfil diferente para días/horas específicas. Ej: más instancias durante horario de oficina.

Recursos que soportan Autoscale

VM Scale Sets (VMSS): escala en número de VMs

App Service Plan: escala instancias del plan (no el plan tier)

Azure Cloud Services: escala roles

AKS: Cluster Autoscaler (diferente implementación)

Application Gateway v2: autoscaling nativo

Trampas de Autoscale en el examen

  • → Autoscale no escala instancias individuales de VM (solo el número de VMs en VMSS)
  • → El cooldown period previene escala frenética — si escala a las 12:00, no puede volver a escalar hasta las 12:05 (default)
  • → Siempre necesitas reglas de scale-out Y scale-in — sin scale-in las instancias no se reducen nunca
  • → Minimum capacity: aunque CPU esté al 0%, no baja de este número

KPIs y SLA por servicio

ServicioSLACondiciónMétrica de referencia
VM sola99.9%Con Premium SSDPercentage CPU, Disk Availability
VM en Availability Set99.95%2+ VMs en 2+ fault domainsVM Availability, Health Status
VM en Availability Zones99.99%2+ VMs en 2+ zonas distintasVM Availability por zona
Azure SQL (Standard+)99.99%Todos los tiers salvo BasicFailed Connections, DTU consumption %
App Service Standard+99.95%Tier Standard o superiorResponse Time, Http 5xx, Availability
Storage Account99.9% / 99.99%GRS/ZRS: 99.99%, LRS: 99.9%Availability, SuccessE2ELatency
VPN Gateway Zone-Redundant99.99%AZ SKU (VpnGw1AZ+)Gateway Availability, Tunnel Status

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Un administrador quiere monitorear el uso de memoria RAM de una VM Windows en Azure Monitor Metrics Explorer. Al buscar, no encuentra ninguna métrica de memoria. ¿Por qué?