WIKI Retour au Portfolio

Dernière mise à jour : 12 juin 2026

1 — Core Compute Services (AZ-305)

A. Decision tree compute AZ-305 ⭐⭐

Le choix entre les 4 grandes familles compute.

Quel type de workload ?
├─ Code event-driven, sporadique, sans serveur à gérer
│   └─ Serverless → Azure Functions (Flex Consumption)
│
├─ App web HTTP/S avec déploiement zip/git, sans gérer l'OS
│   ├─ Multi-tenant standard            → App Service (Premium v3) ⭐
│   ├─ Compliance stricte / VNet-only    → App Service Environment (ASE v3)
│   └─ Container web simple              → Web App for Containers / Container Apps
│
├─ Microservices / containers complexes
│   ├─ Kubernetes managed                → AKS (fiche 3)
│   ├─ Serverless containers             → Azure Container Apps (fiche 3)
│   └─ Container unique simple           → Azure Container Instances (fiche 3)
│
├─ Control total OS / driver custom / agents tiers
│   └─ Azure Virtual Machines (IaaS)
│
└─ HPC / batch parallèle (rendu, scientifique, ML training)
    └─ Azure Batch / CycleCloud (fiche 2)

Tableau de décision rapide

Critère Serverless (Functions) PaaS (App Service) Containers (AKS/ACA) IaaS (VMs)
Gestion OS ❌ MS gère ❌ MS gère ❌ MS gère runtime Toi
Custom dependencies Limité (runtime fixé) Limité (runtime fixé) ✅ (image) ✅ (full)
Scaling Auto event-driven Auto par instance Auto (HPA, KEDA) Manuel ou VMSS
Billing Pay-per-execution Plan fixe ($/h) Plan + workload Per VM/h
Cold start Possible (Flex) Possible (ACA scale-to-zero)
Use case API REST sporadique, triggers Web app prod standard Microservices, ML inference Legacy, agents, control OS

🎯 Règle générale 305 : "sporadique" → Functions · "web app standard" → App Service · "microservices" → AKS / ACA · "control OS / legacy" → VMs.


B. Azure Virtual Machines — design 305 (awareness)

⚠️ Bases VMs (création, OS, NSG, etc.) = AZ-104. Ici juste angle design 305.

B.1 Familles de SKUs (à reconnaître)

Famille Use case
D-series General purpose équilibré CPU/RAM/IO (default)
E-series Memory-optimized (DB, cache, analytics)
F-series Compute-optimized (web servers, ML inference, batch)
M-series Memory-intensive massif (SAP HANA, in-memory DB jusqu'à TB de RAM)
HB / HC / HX HPC (calcul parallèle, voir fiche 2)
N-series (NC/ND/NV) GPU (ML training, rendu, VDI)

🎯 Question 305 type : "App standard web tier"D. "SQL Server gros workload mémoire"E ou M. "ML training"N (ND/NC). "HPC simulation" → fiche 2.

B.2 Security features VMs ⭐

Feature Quoi
Trusted Launch Secure Boot + vTPM (anti-rootkit). Default sur VMs Gen2 2026+
Confidential VMs RAM chiffrée via AMD SEV-SNP — encryption in-use (workloads ultra-sensibles)
Encryption at Host Encryption disks + caches niveau hyperviseur (recommandé prod 305 vs ADE legacy)
Azure Disk Encryption (ADE) BitLocker/DM-Crypt OS-level (legacy mais audit visible)

🚨 Détail encryption VMs → fiche 9 Data Protection section G.

B.3 Spot VMs

  • Jusqu'à -90% sur prix on-demand.
  • Azure peut évincer la VM à tout moment (30s warning).
  • Use case : batch tolérants à l'interruption, dev/test, CI/CD runners, calcul scientifique avec checkpoints.

B.4 HA / Distribution

Option Scope SLA
Availability Set (AS) (legacy) Même DC, fault/update domains 99.95% (2+ VMs)
Availability Zone (AZ) 3 DCs physiques dans la région 99.99% (1 VM par AZ)
VMSS Flexible N VMs auto-scaled across AZ 99.99%
Proximity Placement Group VMs très proches physiquement (low latency)

🎯 Au 305 : AZ > AS quasi-systématique en prod. AS = legacy/régions sans AZ.

B.5 Pièges VMs 305

  • 🚨 Spot VMs : pas pour prod stateful (Azure évincte sans préavis long).
  • 🚨 VM Series H (HPC) → fiche 2 Big Compute.
  • 🚨 Détails encryption (CMK, Confidential, ADE vs Encryption at Host) → fiche 9.

C. App Service Web Apps (PaaS)

C.1 C'est quoi

PaaS managé pour apps web HTTP/S (.NET / Java / Node / Python / PHP / Ruby / containers). MS gère OS, runtime, patching, scaling. Tu déploies juste ton code.

C.2 Tiers / Plans ⭐

Tier Use case
Free / Shared Dev/test, multi-tenant strict
Basic (B1-B3) Dev/staging, pas d'autoscale
Standard (S1-S3) Prod basique, autoscale, slots, custom domain
Premium v3 (P0v3-P5v3) Prod moderne, zone-redundancy, VNet integration, autoscale rapide
Isolated v2 (I1v2-I6v2) ASE v3 : single-tenant, isolation hardware

🎯 Mémo 305 :

  • "Prod standard sans compliance stricte"Premium v3
  • "VNet integration + zone-redundant"Premium v3
  • "Compliance PCI/HIPAA + single-tenant"Isolated v2 (ASE v3)
  • "Dev/test" → Basic ou Standard

C.3 Features clés design 305

Feature Quoi Tier requis
Deployment slots Blue-green deployment, swap zero downtime, rollback Standard+
Autoscale Scale rules CPU/RAM/custom metrics Standard+
VNet Integration (outbound) App → ressources VNet privées Standard+
Private Endpoint (inbound) App = privée, accès VNet only Premium v3+
Zone redundancy 3 AZ, SLA 99.99% Premium v3+
Easy Auth (Entra) Auth Entra/OIDC sans coder Tous
App Service Backup Backup auto vers Storage Standard+
Custom domain + TLS Cert KV-managed (rotation auto via MI) Basic+ (TLS sni : Standard+)
Hybrid Connections Reach 1 endpoint on-prem sans VPN Premium

C.4 Multi-tenant Premium v3 vs Single-tenant ASE v3

Premium v3 + PE + VNet Integration ASE v3 (Isolated v2)
Isolation Multi-tenant hardware partagé Single-tenant stamp dédié
Coût ~$70-150/mois/app ~$1k/mois fixe stamp + $/instance
Use case 99% des cas Compliance PCI/HIPAA strict ou 20+ apps
Provisioning Minutes 2-4h

🎯 "Web app prod avec VNet privée + zone-redundant"Premium v3 + PE + VNet Integration (suffit 99% des cas). 🎯 "PCI-DSS / HIPAA / FedRAMP isolation hardware"ASE v3.

C.5 Pièges App Service 305

  • 🚨 Slots = Standard+ (pas Basic ni Free).
  • 🚨 Private Endpoint inbound = Premium v3+.
  • 🚨 Zone redundancy = Premium v3+.
  • 🚨 ASE v3 = dernière option sauf compliance ou >20 apps : trop cher sinon.

D. App Service Environment (ASE) v3

D.1 C'est quoi

App Service single-tenant déployé dans ton VNet : isolation hardware, compliance stricte, "zero public" via ILB (Internal Load Balancer).

D.2 Architecture rapide

  • Subnet dédié dans ton VNet (/24 recommandé).
  • Internal ASE (ILB) ou External ASE (public isolé).
  • Provisioning : 2-4h.
  • Multiples plans Isolated v2 dans le même ASE (mutualisation).

D.3 Multi-tenant vs ASE

Critère Multi-tenant (Premium v3) ASE v3
Isolation Partagée Single-tenant stamp dédié
Coût $/instance $/h fixe + $/instance (~$1k base)
Network VNet integration Déployé DANS ton VNet
SKU apps F1/B/S/P Isolated v2 (I1v2-I6v2)
Inbound Public optionnel ILB (internal) ou external
  • Max 200 instances Isolated v2 par ASE.

D.4 Quand l'utiliser

Besoin ASE v3 ?
Compliance stricte (PCI-DSS, HIPAA, FedRAMP)
Zero public apps VNet-only via ILB
Forced tunneling outbound (UDR)
Très gros workloads mutualisés (20+ apps prod)
Petites apps standards ❌ → Premium v3 + PE

D.5 HA / DR

Zone redundancy (intra-region) :

  • Option à la création (irréversible), min 3 instances → distribue auto sur 3 AZ.

DR cross-region :

  • Pas de réplication native d'ASE.
  • Pattern : 2 ASEs + Front Door + données geo-replicated.

D.6 Pièges ASE 305

  • 🚨 ASE v3 = dernière option, trop cher sauf compliance ou 20+ apps. Préférer Premium v3 + PE + VNet Integration pour 99% des cas.
  • 🚨 HA intra-region = zone redundancy à activer à la création (irréversible).
  • 🚨 ASE v1/v2 retirés 31 août 2024. Pas d'upgrade in-place → recréer ASE v3 + ASE Migration Feature.

E. Azure Functions (serverless)

E.1 C'est quoi

Compute serverless event-driven : code exécuté en réponse à un trigger, billing à l'exécution.

E.2 Hosting Plans ⭐⭐

Plan Cold start Scale Timeout Slots Billing
Flex Consumption Quasi nul Scale-to-zero, event-driven (jusqu'à 1000) Configurable Pay-per-use (GB-sec)
Premium Pre-warmed dédié (jusqu'à 100) Illimité possible $/h fixe (payé même idle)
Dedicated (App Service Plan) Autoscale du plan Illimité Inclus dans coût du plan
Consumption legacy Oui Event-driven 10 min max 🚨 Linux sunset 30 sept 2028

🎯 Choix 305 :

  • "Sporadique, minimize cost"Flex Consumption
  • "Latence critique, VNet strict, long-running"Premium
  • "Plan App Service existant sous-utilisé"Dedicated (coût marginal nul)

E.3 Triggers / Bindings (awareness)

Trigger Use case
HTTP API REST, webhook
Timer CRON (archive logs nocturne)
Blob Réagir upload (génère thumbnails)
Queue / Service Bus Worker pattern
Event Grid Événement Azure (Blob deleted → notif)
Event Hub Streaming massif IoT
Cosmos DB Change Feed React new doc

1 trigger par function. Bindings input/output = N (lire Blob + push Queue déclaré dans config, sans coder les SDK).

E.4 Durable Functions — awareness 305

Extension qui rend les Functions stateful : workflows long-running, reprise sur crash, attente d'événements (heures/jours).

Pattern Quand
Function chaining Séquence F1 → F2 → F3
Fan-out / Fan-in N tasks parallèles + agrégation
Async HTTP API Réponse 202 + statusUrl à poll
Monitor Poll périodique d'un état externe
Human interaction Pause pour approbation humaine

🎯 Au 305 : "Workflow long-running orchestré code-first + reprise crash + parallèle"Durable Functions. "Workflow low-code SaaS connectors"Logic Apps (fiche 5).

E.5 Functions vs Logic Apps

Critère Functions Logic Apps
Approche Code (.NET/Node/Python/Java) Designer visuel low-code
Audience Devs Devs + IT Pros
Connecteurs À coder 1000+ prêts (SaaS, on-prem)
Pricing Pay-per-exec ou plan Pay-per-action ou plan

E.6 Networking (awareness)

Méthode Direction Use case
VNet Integration Outbound (Function → VNet) Function appelle DB privée
Hybrid Connections Outbound (Function → host:port on-prem) 1 endpoint on-prem TCP sans VPN (Premium/Dedicated only)
Private Endpoint Inbound (VNet → Function) Function privée, zero public

E.7 HA / DR

Zone redundancy :

  • Flex Consumption : ✅ par défaut sur régions supportées.
  • Premium / Dedicated v3 : ✅ option à la création (irréversible, min 3 instances).

Cross-region DR : 2 Function Apps + Front Door + données geo-replicated.

E.8 Pièges Functions 305

  • 🚨 Slots = Premium/Dedicated uniquement.
  • 🚨 Hybrid Connections = Premium/Dedicated uniquement.
  • 🚨 Workflow low-code SaaS → Logic Apps, pas Functions.
  • 🚨 Long-running stateful → Durable Functions.
  • 🚨 Détail sécurité (keys, authLevel) = AZ-204, hors scope 305.

F. Scénarios 305 → solution ⭐⭐

Scénario business Réponse
"API REST sporadique event-driven, minimize cost" Functions Flex Consumption
"Workflow long-running parallèle + reprise crash" Durable Functions (Premium)
"Workflow low-code Email → SharePoint + Teams + SAP" Logic Apps (fiche 5)
"Web app prod multi-region + zone-redundant + VNet integration" App Service Premium v3 + PE + VNet Integration + Front Door (fiche 6)
"Web app compliance PCI-DSS isolation hardware" ASE v3 (Isolated v2)
"Web app dev/test pas cher" App Service Basic ou Standard
"Blue-green deployment zero downtime + rollback" App Service Slots (Standard+)
"Migration SAP HANA in-memory massif" VM M-series
"ML training GPU" VM ND/NC series (N-series)
"Web tier prod scale auto across 3 AZ" VMSS Flexible zone-distributed
"Batch tolérant interruption -90% coût" Spot VMs
"Workload ultra-sensible avec RAM chiffrée" Confidential VMs (fiche 9)
"App moderne containerisée microservices" AKS ou Container Apps (fiche 3)
"HPC simulation parallèle MPI" Azure Batch ou HBv4 (fiche 2)
"Legacy app avec drivers custom OS-level" Azure VMs (IaaS)
"Function appelle DB privée Azure SQL" Functions Premium + VNet Integration
"App globale 24/7 multi-region avec failover auto" App Service x2 régions + Front Door (fiche 6)
"Function publique sans coder l'auth" Easy Auth (Entra) sur la Function

DEMO

Demo Portail — Function App (Flex Consumption)

  1. Function App > Create > Hosting plan: Flex Consumption
  2. Onglet Basics :
    • Subscription / Resource Group : rg-functions
    • Function App name : func-orders (FQDN unique)
    • Region : East US
    • Runtime stack : Node 20 (ou Python / .NET / Java)
  3. Onglet Storage : Storage Account stfuncorders (requis)
  4. Onglet Networking : Toggle Enable VNet integration : On → choisir VNet + subnet délégué
  5. Onglet Monitoring : Application Insights : On
  6. Onglet Deployment :
    • Always Ready instances : 0 (ou N pour réduire cold start)
    • Maximum instance count : 100
    • Instance memory : 2048 MB
  7. Review + Create

CLI équivalent (pour IaC) :

az functionapp create -g rg-functions -n func-orders \
  --flexconsumption-location eastus --runtime node --runtime-version 20 \
  --storage-account stfuncorders --instance-memory 2048 --maximum-instance-count 100

ASE v3 (Internal)

  1. App Service Environments > Create
  2. Basics : name + region
  3. Hosting : Virtual IP type: Internal (ILB) ou External
  4. Networking : VNet existant + subnet dédié vide (/24 recommandé)
  5. Create → 2-4h provisioning
  6. Puis : App Service Plans > Create > Pricing: Isolated v2 dans l'ASE
  7. Web App / Function App attachée au plan
  8. Internal ASE → DNS privé à configurer pour résolution