Microsoft AZ-305: Well-Architected Framework und Designprinzipien — Lernleitfaden
Teil des Microsoft Azure Solutions Architect Expert AZ-305 — Lernleitfaden. Üben Sie mit verifizierten Antworten im Microsoft-Prüfungscenter, oder absolvieren Sie zeitlich begrenzte Übungstests auf ExamRoll.io.
Überblick
Das Azure Well-Architected Framework (WAF) ist eine Sammlung von präskriptiven Prinzipien, die als Leitfaden für das Design, die Erstellung und den Betrieb von zuverlässigen, sicheren, kosteneffizienten, betrieblich exzellenten und performanten Workloads auf Azure dienen. Die Ausrichtung von Lösungen an den fünf Säulen – Zuverlässigkeit, Sicherheit, Kostenoptimierung, Betriebliche Exzellenz und Leistungseffizienz – stellt sicher, dass Architekturentscheidungen explizite Kompromisse sind, die auf Geschäftsprioritäten, Risikotoleranz und Einschränkungen wie Datensouveränität und Budget basieren. Um Konsistenz im großen Maßstab zu erreichen, sind Landing Zones, eine richtliniengesteuerte Governance und die standardmäßige Nutzung von Automatisierung erforderlich. Moderne Designs legen den Schwerpunkt auf Entkopplung, ereignisgesteuerte Kommunikation und Muster wie CQRS, Strangler Fig und Microservices, die mit nativen Azure-Diensten und integrierter Observability implementiert werden, um sowohl schnellen Änderungen als auch strengen Compliance-Anforderungen gerecht zu werden.
Die fünf Säulen: Zuverlässigkeit, Sicherheit, Kosten, Betriebliche Exzellenz, Leistung
Zuverlässigkeit stellt sicher, dass Workloads auch bei Ausfällen und während Änderungen die geschäftlichen SLAs erfüllen. Entwerfen Sie für Fehlerdomänen und Updatedomänen, indem Sie über Verfügbarkeitszonen oder Regionspaare hinweg bereitstellen, Managed Services mit integrierter Hochverfügbarkeit (HA) wählen und Resilienzmuster implementieren. Testen Sie die Wiederherstellbarkeit mit Chaos Engineering und Disaster-Recovery-Übungen. Wählen Sie für zustandsbehaftete Daten Dienste mit RPO/RTO-Funktionen – z. B. Azure SQL Database Active Geo-Replication oder regionsübergreifende Schreibvorgänge in Cosmos DB – kombiniert mit automatisierten Backups und getesteten Runbooks.
Sicherheit ist eine mehrschichtige Defense-in-Depth-Verteidigung, die auf dem Zero-Trust-Modell basiert. Setzen Sie das Prinzip der geringsten Rechte (Least Privilege) mit Azure RBAC, Privileged Identity Management (PIM) und Zugriffsüberprüfungen für eine kontinuierliche Bereinigung von Berechtigungen durch. Isolieren Sie den Schadensradius im Netzwerk mithilfe von Private Endpoints, NSGs und Azure Firewall; integrieren Sie eine Web Application Firewall (WAF) auf Azure Front Door oder Application Gateway. Verfolgen Sie den Assume-Breach-Ansatz mit kontinuierlicher Überwachung durch Defender for Cloud, Bedrohungserkennung in Sentinel und rigorosem Identitätsschutz (MFA, Conditional Access).
Kostenoptimierung schafft ein Gleichgewicht zwischen Geschäftswert und Gesamtbetriebskosten (TCO). Dimensionieren Sie Rechenressourcen und Tarife basierend auf Telemetriedaten richtig; nutzen Sie Skalierung, um die Nachfrage zu bedienen, und fahren Sie Nicht-Produktionsumgebungen herunter. Nutzen Sie Reservierungen und Savings Plans für stabile Workloads, setzen Sie Spot-VMs für unterbrechbare Rechenleistung ein, staffeln Sie Speicher- und Datenaufbewahrung und bevorzugen Sie Serverless-Ansätze, wo sie zu den Workload-Profilen passen. Setzen Sie Tagging und Budgets durch und verwenden Sie Azure Policy zur Standardisierung der Kostenkontrolle.
Betriebliche Exzellenz legt den Schwerpunkt auf Automatisierung, Wiederholbarkeit und Lernzyklen. Behandeln Sie Umgebungen als Code mit Bicep/ARM oder Terraform, erzwingen Sie die Korrektur von Drift und implementieren Sie konsistente CI/CD-Prozesse. Betriebliche Einblicke werden aus strukturierten Protokollen, Metriken, Traces und synthetischen Tests gewonnen, die alle in Alerting- und SLO-Dashboards integriert sind, um die MTTR zu verkürzen und proaktive Verbesserungen zu ermöglichen.
Leistungseffizienz stellt sicher, dass der Workload die Durchsatz- und Latenzziele unter variabler Last erreicht. Entwerfen Sie für Scale-Out, nutzen Sie aggressives Caching, verschieben Sie Inhalte an den Edge und wählen Sie Datenpartitionen und Lesereplikate, die zu den Zugriffsmustern passen. Validieren Sie die Leistung mit realistischen Lasttests und optimieren Sie sie auf der Grundlage von Fakten.
Zuverlässigkeits- und Leistungsmuster in Azure
Resilienzmuster reduzieren die Wahrscheinlichkeit und die Auswirkungen von Ausfällen und halten gleichzeitig die Latenz vorhersagbar.
Wiederholungsversuche mit exponentiellem Backoff und Jitter: Verwenden Sie die konfigurierbaren Wiederholungsrichtlinien der Azure SDKs oder Bibliotheken wie Polly (.NET), um vorübergehende Fehler von Diensten wie Storage, Service Bus oder Cosmos DB zu behandeln. Backoff mit Jitter vermeidet das Thundering-Herd-Problem; begrenzen Sie die Wiederholungsversuche, um SLAs zu schützen und Fehler rechtzeitig zu erkennen.
Circuit Breaker: Kapseln Sie ausgehende Aufrufe (z. B. an externe APIs) mit einem Circuit Breaker, um bei Überschreitung von Fehlerschwellen schnell fehlzuschlagen (Fail Fast) und Erholungsphasen zu ermöglichen. Implementieren Sie dies auf der Client-Ebene mit Polly oder am Gateway mithilfe von API Management-Richtlinien (Wiederholung, Timeout und Cache), um kaskadierende Ausfälle zu vermeiden.
Bulkhead: Partitionieren Sie Ressourcen, damit ein „Noisy Neighbor“ nicht das gesamte System lahmlegt. Isolieren Sie Thread-Pools, Container-Replikate und Partitionen für die Nachrichtenverarbeitung. Verwenden Sie auf Plattformebene separate App Service-Pläne, AKS-Knotenpools oder Service Bus-Warteschlangen/-Themen pro Bounded Context, um Fehler einzudämmen.
Überwachung von Health-Endpunkten: Stellen Sie Liveness- und Readiness-Probes in Diensten bereit. Die Health Probes von Application Gateway/Front Door leiten den Datenverkehr nur an fehlerfreie Instanzen weiter. In AKS steuern Kubernetes-Probes Pod-Neustarts und das Gating von Rollouts. Kombinieren Sie dies mit Verfügbarkeitstests von Application Insights und benutzerdefinierten „/healthz“-Endpunkten, um die Beeinträchtigung von Abhängigkeiten frühzeitig zu erkennen.
Leistungsmuster ergänzen die Resilienz:
Caching-Strategien: Verwenden Sie Azure Cache for Redis für „heiße“ Daten und Session-Offloading. Wenden Sie Output-Caching auf Azure Front Door oder API Management für idempotente GET-Anfragen an. Bevorzugen Sie gegebenenfalls Write-Through- oder Write-Behind-Muster; invalidieren Sie per Schlüssel oder Ereignis, um die Aktualität zu gewährleisten. Auf der Datenebene reduziert der integrierte Cache von Cosmos DB den RU-Verbrauch für leselastige Workloads.
CDN: Verschieben Sie statische Assets und dynamische Inhalte mit Azure Front Door oder Azure CDN näher an die Benutzer und aktivieren Sie Komprimierung, TLS und WAF. Konfigurieren Sie regelbasiertes Caching, Zustandsprüfungen des Ursprungs und Geo-Filterung, um Latenz und Kosten zu optimieren.
Lesereplikate: Skalieren Sie leselastige Workloads mit lesbaren sekundären Replikaten von Azure SQL Database (Active Geo-Replication) oder benannten Hyperscale-Replikaten; verwenden Sie Lesereplikate von Azure Database for PostgreSQL/MySQL für Analysen oder Berichte; aktivieren Sie regionsübergreifende Lesevorgänge in Cosmos DB mit einer an die Geschäftsanforderungen angepassten Konsistenzmodellierung (z. B. Session, Consistent Prefix).
Autoscaling-Muster: Implementieren Sie horizontale Skalierung mit Virtual Machine Scale Sets, App Service-Autoscaling-Regeln, AKS HPA/KEDA für ereignisgesteuerte Skalierung und Functions Consumption/Premium-Plänen. Verwenden Sie für Daten das Autoscaling von RU/s in Cosmos DB und die Auto-Inflate-Funktion von Event Hubs, um Datenverkehrsspitzen zu bewältigen. Validieren Sie immer die Skalierungsschwellenwerte und Abkühlphasen, um Oszillationen zu vermeiden.
Designprinzipien für Operational Excellence, Kostenoptimierung und Sicherheit
Infrastructure as Code: Standardisieren Sie auf Bicep/ARM- oder Terraform-Modulen, die in Git versioniert und durch Pre-Deployment-Tests und Policy-as-Code validiert werden. Nutzen Sie Template Specs oder Terraform-Registries zur Wiederverwendung. Parametrisieren Sie pro Umgebung und erzwingen Sie konsistente Tags, Ressourcensperren und Diagnoseeinstellungen. Integrieren Sie mit Azure DevOps oder GitHub Actions; verwenden Sie gestaffelte Bereitstellungen (staged deployments) und Genehmigungen für eine kontrollierte Beförderung (promotion).
Automatisierung von Bereitstellungen: Bevorzugen Sie Deployment Slots, Blue-Green- und Canary-Strategien, die von App Service, AKS (progressive Rollouts mit Deployment-Strategien) und Traffic Manager/Front Door für gewichtetes Routing unterstützt werden. Automatisieren Sie Datenbank-Schemaänderungen mit Migrations-Pipelines und abwärtskompatiblen Verträgen. Steuern Sie Rollouts über Health Probes und geschäftliche KPIs.
Observability (Beobachtbarkeit): Instrumentieren Sie Anwendungen mit OpenTelemetry, exportieren Sie die Daten zu Application Insights für verteiltes Tracing, Metriken und Abhängigkeitszuordnungen (Dependency Maps). Aktivieren Sie Azure Monitor für Plattformmetriken, stellen Sie Log Analytics Workspaces bereit und erstellen Sie Workbooks und Dashboards für SLOs und Kapazitätsplanung. Definieren Sie Warnungsregeln mit dynamischen Schwellenwerten, integrieren Sie diese mit ITSM und speichern Sie Activity Logs und Diagnoseprotokolle zentral für Audits und Forensik.
Right-Sizing und Kostenkontrolle: Nutzen Sie Azure Advisor, Azure Monitor-Nutzungsmetriken und Application Insights Profiling, um Verschwendung zu identifizieren (ungenutzte Cores, überprovisionierte vCores, zu hoch zugewiesene RU/s). Wenden Sie Reservations/Savings Plans auf stabile Workloads (VMs, SQL, Synapse), reservierte Kapazität für Storage und Commitment Tiers für Cosmos DB an. Wählen Sie Spot VMs für Build-Agents, Batch-Verarbeitung und ML-Training mit Checkpointing. Wägen Sie architektonische Kompromisse ab: Verwaltetes PaaS kann die Betriebskosten senken und die Zuverlässigkeit bei höheren Stückkosten verbessern; Caching reduziert Daten-Egress und RU-Kosten auf Kosten der Komplexität bei der Cache-Invalidierung; Multi-Region-HA erhöht die Ausgaben, kann aber durch RTO/RPO erforderlich sein.
Sicherheitsprinzipien in der Praxis:
- Defense in Depth (Verteidigung in der Tiefe): Schichten Sie Kontrollen von der Identität bis zu den Daten. Verwenden Sie Private Link, um den Datenverkehr vom öffentlichen Internet fernzuhalten, NSGs und ASGs für die Mikrosegmentierung, Azure Firewall Premium für die TLS-Inspektion und eine WAF am Netzwerkrand (Edge). Aktivieren Sie die Empfehlungen von Defender for Cloud und den Just-in-Time-VM-Zugriff.
- Prinzip der geringsten Rechte (Least Privilege): Implementieren Sie eine feingranulare RBAC, die auf die Ebenen von Verwaltungsgruppen, Abonnements oder Ressourcengruppen beschränkt ist. Bevorzugen Sie Managed Identities gegenüber Secrets. Steuern Sie im großen Maßstab mit Azure Policy und Zugriffsüberprüfungen (Access Reviews) für Gruppen, Unternehmensanwendungen und privilegierte Rollen.
- Assume Breach (Von einer Kompromittierung ausgehen): Fordern Sie MFA und Conditional Access, überwachen Sie mit Sentinel und isolieren Sie Workloads mit separaten Landing Zones und Abonnements. Verschlüsseln Sie ruhende Daten (Data-at-Rest) mit plattformeigenen Schlüsseln oder CMK in Key Vault; verwenden Sie doppelte Verschlüsselung, wo Vorschriften dies erfordern. Nutzen Sie SAS für zeitlich begrenzten Speicherzugriff und rotieren Sie Schlüssel richtliniengesteuert.
- Datenklassifizierung: Katalogisieren Sie Daten mit Microsoft Purview, kennzeichnen Sie deren Vertraulichkeit und setzen Sie DLP durch. Richten Sie Verschlüsselung, Aufbewahrung und Zugriff an den Datenklassifizierungsstufen aus. Protokollieren Sie den Zugriff auf PII und unterstützen Sie Datenschutzanforderungen mit Funktionen wie Dynamic Data Masking und Always Encrypted, wo anwendbar.
Azure Landing Zones und moderne Architekturmuster
Azure Landing Zones operationalisieren das Framework im großen Stil. Organisieren Sie eine Hierarchie von Verwaltungsgruppen (Stamm → Plattform → Geschäftsbereiche), um den Geltungsbereich von Azure Policy, RBAC und Budgets festzulegen. Plattform-Landing-Zones stellen gemeinsam genutzte Dienste bereit – Identität (Azure AD), Konnektivität (Hub mit Azure Firewall, DDoS, DNS), Verwaltung (Log Analytics, Automation, Update Management) und Sicherheit (Defender for Cloud). Anwendungs-Landing-Zones hosten Workloads, segmentiert nach Umgebungs- und Compliance-Grenzen, mit vererbten Richtlinien, die Tagging, Diagnose und zulässige Ressourcentypen erzwingen. Übernehmen Sie das Enterprise-Scale-Design des Cloud Adoption Framework (CAF) oder die auf Terraform/Bicep basierenden Landing-Zone-Beschleuniger, um schnell und konsistent zu starten.
Microservices auf Azure legen den Schwerpunkt auf entkoppelte Teams und unabhängig bereitstellbare Dienste:
- Dienstermittlung: Verwenden Sie in AKS Kubernetes DNS/CoreDNS für die clusterinterne Auflösung; erweitern Sie dies mit Dapr-Sidecars für namensbasierte Ermittlung und Wiederholungsversuche. Service Fabric bietet integriertes Naming und Zustandsmanagement für zustandsbehaftete Dienste.
- API-Gateway-Muster: Verwenden Sie Azure API Management, um Routing, Versionierung, Authentifizierung (OAuth 2.0/JWT-Validierung), Kontingente und Caching zu zentralisieren. Platzieren Sie Azure Front Door davor für globales Anycast, SSL-Offload und WAF; leiten Sie den Verkehr pro Region weiter und führen Sie Canary-Releases sicher durch.
- Ereignisgesteuerte Kommunikation: Verwenden Sie Azure Service Bus für geordnete, transaktionale Befehle mit Sitzungen; wählen Sie Event Hubs für Telemetriedaten mit hohem Durchsatz und Event Grid für reaktive Push-Ereignisabonnements. Entwerfen Sie für eine „At-least-once“-Zustellung, idempotente Handler, die Verarbeitung von Poison Messages und DLQs.
CQRS und Event Sourcing trennen Schreib- und Lesemodelle zur Leistungs- und Komplexitätsisolierung. Persistieren Sie „Append-only“-Ereignisse in einem Ereignisspeicher (Cosmos DB, Azure SQL oder Event Hubs mit Komprimierung über nachgelagerten Speicher), spielen Sie sie zur Wiederherstellung des Zustands erneut ab und projizieren Sie sie in für Abfragen optimierte Lesemodelle wie Azure SQL Database, Cosmos DB-Container oder Azure Cognitive Search. Der Cosmos DB Change Feed ist der Dreh- und Angelpunkt für Projektionen: Azure Functions oder Azure Stream Analytics können Änderungen verarbeiten, um Lesespeicher nahezu in Echtzeit zu aktualisieren. Event Hubs puffert Ereignisströme mit hohem Volumen, wobei die Consumer unabhängig voneinander skalieren. Setzen Sie auf „Eventual Consistency“ mit klaren SLAs und Mustern für die Benutzererfahrung (z. B. Bestätigung eines Befehls, gefolgt von der Konvergenz des Lesemodells).
Das Strangler-Fig-Muster ermöglicht eine schrittweise Modernisierung. Platzieren Sie Azure API Management vor dem Monolithen, um bestimmte Endpunkte an neue Microservices weiterzuleiten, während der Rest weiterhin an das Legacy-Backend geht. Verwenden Sie Richtlinien für header-basiertes Routing, Antworttransformation und Authentifizierung. Synchronisieren Sie Daten mit Change Data Capture (z. B. Azure Data Factory oder Datenbank-CDC zu Event Hubs) und erstellen Sie neue Lesemodelle mit Cosmos DB + Change Feed, um die Funktionen des Monolithen schrittweise abzulösen. Managen Sie Risiken mit Feature Flags, Canary-Routing bei Front Door und umfassender Observability, um das Verhalten zu vergleichen.
Praktisches Problemszenario
Starbucks modernisiert seine globale Bestellplattform, die derzeit ein Monolith ist, der auf VMs in einer einzigen Region gehostet wird. Sie müssen die Zuverlässigkeit über Regionen hinweg verbessern, die Latenz für mobile Clients reduzieren, das Prinzip der geringsten Rechte (Least Privilege) und Zero Trust durchsetzen und schrittweise ohne Betriebsunterbrechung migrieren.
- Unternehmens-Landing-Zones einrichten
- Erstellen Sie eine Hierarchie von Verwaltungsgruppen mit Plattform- und Anwendungs-Landing-Zones. Wenden Sie Azure Policy für Tagging, Diagnose, zulässige SKUs und private Endpunkte an. Wählen Sie die CAF Enterprise-Scale-Referenz für Identität, Konnektivität (Hub mit Azure Firewall Premium, Private DNS) und Verwaltung (zentrales Log Analytics). Warum: Landing Zones erzwingen konsistente Sicherheits-, Netzwerk- und Governance-Grundlagen, sodass Workloads die Kontrollen designbedingt erben.
- Eine Edge- und API-Fassade vor dem Monolithen platzieren
- Stellen Sie Azure Front Door (Standard/Premium) mit WAF bereit, um einen globalen Anycast-Einstiegspunkt, TLS-Terminierung und DDoS-Schutz zu bieten. Platzieren Sie Azure API Management als API-Gateway, integriert mit Front Door, um Clients zu authentifizieren (OAuth 2.0), Ratenbegrenzungen pro Verbrauchergruppe anzuwenden und Anfragen/Antworten zu transformieren. Warum: Front Door reduziert die Latenz und schützt am Edge; API Management implementiert das API-Gateway-Muster und ermöglicht so den Strangler-Fig-Ansatz und mandantenspezifisches Throttling.
- Die Strangler-Fig-Migration implementieren
- Verwenden Sie API-Management-Richtlinien, um ausgewählte Endpunkte (z. B. Menü, Filialsuche) an neue Microservices weiterzuleiten, die auf AKS in zwei Regionen laufen; alle anderen Routen gehen an den Legacy-Monolithen hinter einem internen Load Balancer. Warum: Inkrementelles Routing vermeidet „Big-Bang“-Umstellungen und ermöglicht es den Teams, Funktionalitäten unabhängig voneinander zu migrieren.
- Microservices mit resilienten, performanten Mustern erstellen
- Aktivieren Sie in AKS HPA mit KEDA für ereignisgesteuertes Autoscaling. Verwenden Sie Dapr für die Dienstermittlung, Wiederholungsversuche mit exponentiellem Backoff und Circuit Breaking zwischen den Diensten. Integrieren Sie Azure Cache for Redis für häufig benötigte Lesezugriffe (Hot Reads) und die Auslagerung von Sitzungen. Warum: AKS und Dapr bieten plattformunabhängige Resilienz und Dienstermittlung; Caching reduziert die Leselatenz und die Last auf dem Backend.
- Ereignisgesteuerte Kommunikation und CQRS einführen
- Veröffentlichen Sie Domänenereignisse in Azure Event Hubs; persistieren Sie Bestellungen in Cosmos DB mit Partitionierung nach Kunde oder Filiale. Nutzen Sie den Cosmos DB Change Feed mit Azure Functions, um in Lesemodelle in Azure SQL Database (Reporting) und Azure Cognitive Search (Suche im Filialbestand) zu projizieren. Warum: Event Hubs entkoppelt Produzenten und Konsumenten bei hohem Durchsatz; der Change Feed ermöglicht materialisierte Sichten für CQRS nahezu in Echtzeit, ohne die Schreibleistung zu beeinträchtigen.
- Sicherheit und Identität stärken
- Erzwingen Sie private Endpunkte für Datendienste, NSGs/ASGs für die Segmentierung und Azure Firewall für die Steuerung des ausgehenden Datenverkehrs. Verwenden Sie Managed Identities für alle Workloads, PIM für privilegierte Rollen und Zugriffsüberprüfungen für API-Management-Produktabonnements. Aktivieren Sie Conditional Access und MFA für das Betriebspersonal. Warum: Tiefenverteidigung (Defense in Depth) und das Prinzip der geringsten Rechte reduzieren den „Blast Radius“ und das Risiko kompromittierter Anmeldeinformationen; Zugriffsüberprüfungen erhalten die Berechtigungshygiene aufrecht.
- Auf Zuverlässigkeit und Observability auslegen
- Stellen Sie die Lösung über Verfügbarkeitszonen in jeder Region bereit, mit Aktiv-Aktiv-Routing über Front Door und Multi-Region-Bereitstellung von API Management. Aktivieren Sie die Überwachung von Zustandsendpunkten mit Front Door- und AKS-Probes; konfigurieren Sie Canary-Releases für neue Dienste. Instrumentieren Sie mit OpenTelemetry zu Application Insights, zentralisieren Sie Protokolle in Log Analytics und erstellen Sie SLO-Dashboards mit Warnmeldungen. Implementieren Sie Backup/DR für zustandsbehaftete Speicher und führen Sie Chaos-Experimente durch. Warum: Zonale und regionale Redundanz, zustandsbasiertes Routing und umfassende Observability sichern SLAs und ermöglichen eine schnelle Reaktion auf Vorfälle.
- Kosten kontinuierlich optimieren
- Passen Sie die Größe von AKS-Knotenpools und App-Service-Plänen basierend auf Telemetriedaten an; nutzen Sie Reservations/Savings Plans für konstante Rechenlasten; verwenden Sie Spot-VMs für unkritische Batch-Verarbeitungen. Aktivieren Sie das Autoscaling für Cosmos DB und evaluieren Sie Commitment Tiers. Erzwingen Sie Budgets/Tags und überprüfen Sie monatlich die Empfehlungen von Azure Advisor. Warum: Systematische Kostenkontrolle erhält die Leistung bei gleichzeitiger Minimierung von Verschwendung und Stückkosten.
← Migration und Modernisierung · Alle Domänen
Diese Fragen üben → · Zeitlich begrenzte Übung auf 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.
Bestehe deine Prüfung →