Microsoft AZ-305: Well-Architected Framework y Principios de Diseño — Guía de estudio
Forma parte de la Microsoft Azure Solutions Architect Expert AZ-305 — Guía de estudio. Practica con respuestas verificadas en el centro de exámenes de Microsoft, o realiza tests cronometrados en ExamRoll.io.
Principios de diseño de excelencia operativa, optimización de costos y seguridad
Infraestructura como código: Estandariza en módulos de Bicep/ARM o Terraform, versionados en Git y validados con pruebas previas al despliegue y política como código. Usa especificaciones de plantilla (template specs) o registros de Terraform para su reutilización. Parametriza por entorno y aplica etiquetas consistentes, bloqueos de recursos y configuraciones de diagnóstico. Intégralo con Azure DevOps o GitHub Actions; utiliza despliegues por fases y aprobaciones para una promoción controlada.
Automatización de despliegues: Favorece las estrategias de deployment slots, blue-green y canary soportadas por App Service, AKS (despliegues progresivos con estrategias de Deployment) y Traffic Manager/Front Door para el enrutamiento ponderado. Automatiza los cambios de esquema de la base de datos con canalizaciones de migración y contratos retrocompatibles. Controla los despliegues usando sondeos de estado (health probes) y KPIs de negocio.
Observabilidad: Instrumenta las aplicaciones con OpenTelemetry, exporta a Application Insights para el rastreo distribuido, métricas y mapas de dependencias. Habilita Azure Monitor para las métricas de la plataforma, despliega espacios de trabajo de Log Analytics y crea Workbooks y paneles para los SLOs y la capacidad. Define reglas de alerta con umbrales dinámicos, intégralas con ITSM y almacena los Activity Logs y los registros de diagnóstico de forma centralizada para auditoría y análisis forense.
Ajuste de tamaño y controles de costos: Usa Azure Advisor, las métricas de uso de Azure Monitor y el generador de perfiles (profiling) de Application Insights para identificar el desperdicio (núcleos inactivos, vCores sobreaprovisionados, RU/s sobreasignadas). Aplica Reservations/Savings Plans a cargas de trabajo estables (VMs, SQL, Synapse), capacidad reservada para Storage y niveles de compromiso (commitment tiers) de Cosmos DB. Elige Spot VMs para agentes de compilación, procesamiento por lotes y entrenamiento de ML con puntos de control (checkpointing). Equilibra las concesiones arquitectónicas: un PaaS gestionado puede reducir el costo operativo y mejorar la fiabilidad a un costo unitario más alto; el almacenamiento en caché reduce los costos de salida de datos y de RU a expensas de la complejidad de la invalidación de la caché; la alta disponibilidad multirregional aumenta el gasto, pero puede ser requerida por el RTO/RPO.
Principios de seguridad en la práctica:
- Defensa en profundidad: Aplica controles en capas, desde la identidad hasta los datos. Usa Private Link para mantener el tráfico fuera de la red pública de Internet, NSGs y ASGs para la microsegmentación, Azure Firewall Premium para la inspección de TLS y un WAF en el perímetro. Habilita las recomendaciones de Defender for Cloud y el acceso a VM justo a tiempo (just-in-time).
- Mínimo privilegio: Implementa un RBAC detallado, con alcance a nivel de grupo de administración/suscripción/grupo de recursos; prefiere las identidades administradas sobre los secretos; gobierna a escala con Azure Policy y revisiones de acceso para grupos, aplicaciones empresariales y roles con privilegios.
- Asumir la brecha: Exige MFA y acceso condicional (Conditional Access), monitoriza con Sentinel y aísla las cargas de trabajo con zonas de aterrizaje (landing zones) y suscripciones separadas. Cifra los datos en reposo con claves de plataforma o CMK en Key Vault; usa doble cifrado donde los reguladores lo exijan. Utiliza SAS para el acceso al almacenamiento por tiempo limitado y rota las claves mediante políticas.
- Clasificación de datos: Cataloga los datos con Microsoft Purview, etiqueta la sensibilidad y aplica DLP. Alinea el cifrado, la retención y el acceso a los niveles de clasificación de datos; registra el acceso a la PII y da soporte a los requisitos de privacidad con características como Dynamic Data Masking y Always Encrypted cuando sea aplicable.
Zonas de Aterrizaje de Azure y Patrones de Arquitectura Modernos
Las Zonas de Aterrizaje de Azure (Azure Landing Zones) operacionalizan el marco de trabajo a escala. Organice una jerarquía de grupos de administración (raíz → plataforma → unidades de negocio) para definir el alcance de Azure Policy, RBAC y los presupuestos. Las zonas de aterrizaje de plataforma proporcionan servicios compartidos: identidad (Azure AD), conectividad (hub con Azure Firewall, DDoS, DNS), gestión (Log Analytics, Automation, Update Management) y seguridad (Defender for Cloud). Las zonas de aterrizaje de aplicación alojan cargas de trabajo, segmentadas por entorno y límites de cumplimiento, con políticas heredadas que imponen el etiquetado, los diagnósticos y los tipos de recursos permitidos. Adopte el diseño Enterprise-Scale del Cloud Adoption Framework (CAF) o los aceleradores de zonas de aterrizaje basados en Terraform/Bicep para arrancar de forma rápida y consistente.
Los microservicios en Azure enfatizan equipos desacoplados y servicios desplegables de forma independiente:
- Descubrimiento de servicios: En AKS, use Kubernetes DNS/CoreDNS para la resolución dentro del clúster; mejórelo con sidecars de Dapr para el descubrimiento basado en nombres y los reintentos. Service Fabric proporciona gestión de nombres y estado de salud integrada para servicios con estado (stateful).
- Patrón de API gateway: Use Azure API Management para centralizar el enrutamiento, el versionado, la autenticación (validación de OAuth 2.0/JWT), las cuotas y el almacenamiento en caché. Coloque Azure Front Door al frente para tener anycast global, descarga de SSL (SSL offload) y WAF; enrute por región y realice lanzamientos canary de forma segura.
- Comunicación basada en eventos: Use Azure Service Bus para comandos transaccionales y ordenados con sesiones; elija Event Hubs para telemetría de alto rendimiento (high-throughput); y Event Grid para suscripciones a eventos reactivas de tipo push. Diseñe para una entrega de al menos una vez (at-least-once), manejadores idempotentes, gestión de mensajes fallidos (poison messages) y colas de mensajes fallidos (DLQs).
CQRS y Event Sourcing separan los modelos de escritura y lectura para aislar la complejidad y mejorar el rendimiento. Persista eventos de solo anexión (append-only) en un almacén de eventos (Cosmos DB, Azure SQL o Event Hubs con compactación a través de almacenamiento secundario), reprodúzcalos para reconstruir el estado y proyéctelos en modelos de lectura optimizados para consultas, como Azure SQL Database, contenedores de Cosmos DB o Azure Cognitive Search. El change feed de Cosmos DB es el eje central para las proyecciones: Azure Functions o Azure Stream Analytics pueden procesar los cambios para actualizar los almacenes de lectura casi en tiempo real. Event Hubs actúa como búfer para flujos de eventos de gran volumen, permitiendo que los consumidores escalen de forma independiente. Adopte la consistencia eventual con SLAs claros y patrones de experiencia de usuario (p. ej., confirmación del comando seguida de la convergencia del modelo de lectura).
El patrón Strangler Fig permite la modernización incremental. Coloque Azure API Management delante del monolito para enrutar endpoints específicos a nuevos microservicios mientras el resto continúa hacia el backend heredado. Use políticas para el enrutamiento basado en encabezados, la transformación de respuestas y la autenticación. Sincronice los datos con captura de datos de cambios (CDC, p. ej., Azure Data Factory o CDC de base de datos a Event Hubs) y construya nuevos modelos de lectura con Cosmos DB + change feed, retirando gradualmente las capacidades del monolito. Gestione el riesgo con indicadores de funcionalidad (feature flags), enrutamiento canary en Front Door y una observabilidad completa para comparar el comportamiento.
Escenario de Problema Práctico
Starbucks está modernizando su plataforma global de pedidos, actualmente un monolito alojado en VMs en una única región. Deben mejorar la fiabilidad entre regiones, reducir la latencia para los clientes móviles, aplicar el privilegio mínimo y la Confianza Cero (Zero Trust), y migrar de forma incremental sin interrumpir el negocio.
- Establecer zonas de aterrizaje empresariales
- Cree una jerarquía de grupos de administración con zonas de aterrizaje de plataforma y de aplicación. Aplique Azure Policy para el etiquetado, diagnósticos, SKUs permitidos y private endpoints. Elija la referencia Enterprise-Scale del CAF para la identidad, la conectividad (hub con Azure Firewall Premium, Private DNS) y la gestión (Log Analytics centralizado). Por qué: Las zonas de aterrizaje imponen bases de referencia consistentes de seguridad, redes y gobernanza para que las cargas de trabajo hereden los controles por diseño.
- Poner una fachada de borde y API delante del monolito
- Despliegue Azure Front Door (Standard/Premium) con WAF para proporcionar un punto de entrada anycast global, terminación de TLS y protección contra DDoS. Coloque Azure API Management como la puerta de enlace de API (API gateway), integrada con Front Door, para autenticar clientes (OAuth 2.0), aplicar límites de tasa (rate limits) por grupo de consumidores y transformar solicitudes/respuestas. Por qué: Front Door reduce la latencia y protege en el borde; API Management implementa el patrón de API gateway, habilitando el enfoque Strangler Fig y la limitación (throttling) específica por inquilino.
- Implementar la migración Strangler Fig
- Use políticas de API Management para enrutar endpoints seleccionados (p. ej., menú, localizador de tiendas) a nuevos microservicios que se ejecutan en AKS en dos regiones; todas las demás rutas van al monolito heredado detrás de un balanceador de carga interno. Por qué: El enrutamiento incremental evita las migraciones big-bang y permite a los equipos migrar capacidades de forma independiente.
- Construir microservicios con patrones resilientes y de alto rendimiento
- En AKS, habilite HPA con KEDA para el autoescalado basado en eventos. Use Dapr para el descubrimiento de servicios, reintentos con retroceso exponencial (exponential backoff) y cortocircuitos (circuit breaking) entre servicios. Integre Azure Cache for Redis para lecturas calientes (hot reads) y descarga de sesiones. Por qué: AKS y Dapr proporcionan resiliencia agnóstica de la plataforma y descubrimiento de servicios; el almacenamiento en caché reduce la latencia de lectura y la carga en el backend.
- Adoptar comunicación basada en eventos y CQRS
- Publique eventos de dominio en Azure Event Hubs; persista los pedidos en Cosmos DB con particionamiento por cliente o tienda. Use el change feed de Cosmos DB con Azure Functions para proyectar a modelos de lectura en Azure SQL Database (para informes) y Azure Cognitive Search (para búsqueda de inventario de tiendas). Por qué: Event Hubs desacopla productores y consumidores con alto rendimiento; el change feed permite vistas materializadas casi en tiempo real para CQRS sin afectar el rendimiento de escritura.
- Reforzar la seguridad y la identidad
- Imponga private endpoints para los servicios de datos, NSGs/ASGs para la segmentación y Azure Firewall para el control de egreso. Use identidades administradas para todas las cargas de trabajo, PIM para roles privilegiados y revisiones de acceso para las suscripciones a productos de API Management. Habilite el Acceso Condicional (Conditional Access) y MFA para el personal de operaciones. Por qué: La defensa en profundidad y el privilegio mínimo reducen el radio de impacto y el riesgo de credenciales; las revisiones de acceso mantienen la higiene de los derechos de acceso.
- Diseñar para la fiabilidad y la observabilidad
- Despliegue en Zonas de Disponibilidad (Availability Zones) en cada región, con enrutamiento activo-activo de Front Door y API Management multirregión. Habilite el monitoreo de endpoints de estado con Front Door y sondeos (probes) de AKS; configure lanzamientos canary para nuevos servicios. Instrumente con OpenTelemetry hacia Application Insights, centralice los registros en Log Analytics y cree paneles de SLO con alertas. Implemente backup/DR para los almacenes con estado y ejecute experimentos de caos. Por qué: La redundancia zonal y regional, el enrutamiento basado en el estado de salud y la observabilidad completa mantienen los SLAs y permiten una respuesta rápida a incidentes.
- Optimizar el costo continuamente
- Dimensione correctamente los pools de nodos de AKS y los planes de App Service basándose en la telemetría; aplique Reservas/Planes de Ahorro para la computación estable; use Spot VMs para lotes no críticos. Habilite el autoescalado de Cosmos DB y evalúe los niveles de compromiso (commitment tiers). Imponga presupuestos/etiquetas y revise las recomendaciones de Azure Advisor mensualmente. Por qué: La gobernanza sistemática de costos preserva el rendimiento mientras minimiza el desperdicio y los costos unitarios.
← Migración y Modernización · Todos los dominios
Practica estas preguntas → · Práctica cronometrada en ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Aprueba tu examen →