ITSkillsCenter
Business Digital

Déployer une VM Windows et Linux sur Azure — tutoriel AZ-104 2026

12 دقائق للقراءة

Lancer des VMs Azure (Windows Server 2022 + Ubuntu 24.04), choisir SKU, attacher Managed Disks, NSG, Public IP, Bastion Host, snapshots, Availability Sets vs Availability Zones, scale sets (VMSS).

📍 À lire d’abord : Pilier Azure AZ-104 · Tenant Azure gratuit.

Introduction

Les VMs Azure (Virtual Machines) sont le service IaaS de référence. AZ-104 teste leur déploiement, configuration, scaling, et HA. Ce tutoriel construit le savoir-faire complet.

Prérequis

  • Tenant Azure configuré (cf. tutoriel précédent).
  • Azure CLI fonctionnel.
  • Niveau intermédiaire.
  • Temps : 2 heures.

Étape 1 — VM SKU et types

Series A      : entry level, dev/test
Series B      : burstable (économique pour workloads variables)
Series D      : general purpose, équilibré
Series E      : memory optimized
Series F      : compute optimized
Series M      : massive memory (jusqu'à 12 To RAM)
Series N      : GPU (NV pour graphics, NC/ND pour ML)
Series H      : HPC

Free Tier : B1s (1 vCPU, 1 Go RAM, ~750h/mois gratuit pendant 12 mois).

À l’examen : choisir SKU selon scénario. App web standard = D2s_v3. DB en mémoire = E. ML training = ND.

Étape 2 — Lancer une VM Linux

# Resource Group
az group create --name lab-vm --location francecentral

# Créer VM Ubuntu 24.04 avec SSH key auto-générée
az vm create \
  --resource-group lab-vm \
  --name ubuntu-vm \
  --image Ubuntu2404 \
  --size Standard_B1s \
  --admin-username azureuser \
  --generate-ssh-keys \
  --public-ip-sku Standard \
  --nsg-rule SSH

# IP publique retournée
PUBLIC_IP=$(az vm show --resource-group lab-vm --name ubuntu-vm --show-details --query publicIps -o tsv)
ssh azureuser@$PUBLIC_IP

# Sur la VM
sudo apt update && sudo apt install -y nginx
sudo systemctl enable --now nginx
echo "<h1>Hello Azure</h1>" | sudo tee /var/www/html/index.html

# Ouvrir port 80 NSG
az vm open-port --resource-group lab-vm --name ubuntu-vm --port 80

Visiter http://$PUBLIC_IP — page web servie.

Étape 3 — Lancer une VM Windows Server

az vm create \
  --resource-group lab-vm \
  --name win-vm \
  --image Win2022Datacenter \
  --size Standard_B2ms \
  --admin-username winadmin \
  --admin-password "ComplexPwd2026!" \
  --public-ip-sku Standard \
  --nsg-rule RDP

# RDP depuis Windows Remote Desktop client
az vm show --resource-group lab-vm --name win-vm --show-details --query publicIps -o tsv
# Connecter avec mstsc.exe

⚠️ Windows VMs sont plus chères (B2ms ~30 USD/mois minimum, pas Free Tier). Stop quand pas utilisée.

Étape 4 — Managed Disks

Azure managed disks = équivalent EBS AWS. 4 types :

Standard HDD     : magnetique, le moins cher, dev/test
Standard SSD     : SSD entrée de gamme, web servers low traffic
Premium SSD v1   : performance high, prod
Premium SSD v2   : nouvelle génération, jusqu'à 80K IOPS
Ultra Disk       : disk haute performance, jusqu'à 160K IOPS
# Créer disque additionnel et attacher
az disk create --resource-group lab-vm --name datadisk1 --size-gb 100 --sku Premium_LRS
az vm disk attach --resource-group lab-vm --vm-name ubuntu-vm --name datadisk1

# Sur la VM, formater
sudo lsblk
sudo mkfs.ext4 /dev/sdc
sudo mkdir /mnt/data
sudo mount /dev/sdc /mnt/data

Encryption au repos : Azure Disk Encryption (BitLocker pour Windows, dm-crypt pour Linux), ou Server-Side Encryption with Customer-Managed Keys.

Étape 5 — NSG : Network Security Group

NSG = équivalent Security Group AWS. Stateful, allow rules.

# Créer NSG
az network nsg create --resource-group lab-vm --name lab-nsg

# Règles
az network nsg rule create --resource-group lab-vm --nsg-name lab-nsg --name AllowHTTP \
  --priority 100 --direction Inbound --access Allow --protocol Tcp --destination-port-ranges 80

az network nsg rule create --resource-group lab-vm --nsg-name lab-nsg --name AllowSSH \
  --priority 110 --direction Inbound --access Allow --protocol Tcp --destination-port-ranges 22 \
  --source-address-prefixes 203.0.113.0/24

# Attacher au subnet ou à NIC de VM

À l’examen : NSG attaché à subnet ET NIC = règles évaluées sur les deux. Priorité 100-4096. Default deny inbound, allow outbound.

Étape 6 — Bastion Host (sécuriser SSH/RDP)

Bastion = accès SSH/RDP via portail web sans exposer port 22/3389 publiquement.

# Créer subnet AzureBastionSubnet (nom obligatoire)
az network vnet subnet create --resource-group lab-vm --vnet-name lab-vnet --name AzureBastionSubnet --address-prefix 10.0.10.0/26

# Public IP pour Bastion
az network public-ip create --resource-group lab-vm --name bastion-pip --sku Standard

# Bastion (~140 USD/mois — non Free Tier)
az network bastion create --resource-group lab-vm --name lab-bastion --public-ip-address bastion-pip --vnet-name lab-vnet --sku Basic

Pour lab : préférer Bastion Developer (gratuit, 1 connexion concurrente, valable pour learning).

À l’examen : Bastion = best practice pour accès admin. Pas de Public IP sur les VMs sensibles, accès via Bastion uniquement.

Étape 7 — Snapshots et images

# Snapshot du disque OS
az snapshot create --resource-group lab-vm --name ubuntu-snap-1 --source $(az vm show -g lab-vm -n ubuntu-vm --query "storageProfile.osDisk.managedDisk.id" -o tsv)

# Créer image custom à partir de VM
az vm deallocate --resource-group lab-vm --name ubuntu-vm
az vm generalize --resource-group lab-vm --name ubuntu-vm
az image create --resource-group lab-vm --name ubuntu-baseline-image --source ubuntu-vm

# Lancer nouvelle VM depuis image
az vm create --resource-group lab-vm --name ubuntu-vm-2 --image ubuntu-baseline-image --size Standard_B1s --admin-username azureuser --generate-ssh-keys

⚠️ vm generalize rend la VM source inutilisable — toujours faire sur une VM template, pas une VM en prod.

Étape 8 — Availability Sets vs Availability Zones

Availability Sets         : group de VMs sur racks/UPS différents dans MÊME datacenter
                           SLA 99.95 % (multi-VM)
                           Fault domains (2-3) + Update domains (5-20)

Availability Zones        : group de VMs sur datacenters PHYSIQUEMENT séparés (multi-AZ)
                           SLA 99.99 % (multi-VM avec AZ different)
                           Disponible dans certaines régions (France Central oui)

À l’examen : AZ > AS pour résilience. Utiliser AZ partout où dispo, fallback AS si région sans AZ.

# VMs dans 3 AZ différents
az vm create -g lab-vm -n web-01 --image Ubuntu2404 --size Standard_B1s --zone 1 --generate-ssh-keys
az vm create -g lab-vm -n web-02 --image Ubuntu2404 --size Standard_B1s --zone 2 --generate-ssh-keys
az vm create -g lab-vm -n web-03 --image Ubuntu2404 --size Standard_B1s --zone 3 --generate-ssh-keys

Étape 9 — VM Scale Sets (VMSS)

VMSS = équivalent Auto Scaling Group AWS. Provisione N VMs identiques, autoscale selon métriques.

az vmss create \
  --resource-group lab-vm \
  --name web-vmss \
  --image Ubuntu2404 \
  --instance-count 3 \
  --vm-sku Standard_B1s \
  --upgrade-policy-mode automatic \
  --admin-username azureuser \
  --generate-ssh-keys \
  --zones 1 2 3

# Scale auto sur CPU
az monitor autoscale create \
  --resource-group lab-vm --resource web-vmss --resource-type Microsoft.Compute/virtualMachineScaleSets \
  --name autoscale-web --min-count 2 --max-count 10 --count 3

az monitor autoscale rule create \
  --resource-group lab-vm --autoscale-name autoscale-web \
  --condition "Percentage CPU > 70 avg 5m" --scale out 2

az monitor autoscale rule create \
  --resource-group lab-vm --autoscale-name autoscale-web \
  --condition "Percentage CPU < 30 avg 5m" --scale in 1

VMSS + Load Balancer / Application Gateway = pattern HA Azure standard.

Étape 10 — Cleanup

# Tout supprimer
az group delete --name lab-vm --yes --no-wait

Toujours après chaque session lab.

Erreurs fréquentes

Erreur Solution
Quota dépassé Demander augmentation via support (gratuit)
Region sans AZ France Central oui, autres régions vérifier
VM Windows trop chère Toujours Stop quand pas utilisée
NSG bloque tout Vérifier priorités et règles default
Bastion 140 USD/mois en lab Utiliser Bastion Developer (gratuit)

Adaptation au contexte ouest-africain

Banques : Premium SSD v2 + Availability Zones + Backup Vault = setup standard. Conformité PCI compatible.

Startups : Standard SSD + Single-region + Reserved Instances 1 an = économie 40 %.

Migration on-prem : Azure Migrate gratuit pour évaluer + planifier migration depuis VMware/Hyper-V/physique.

FAQ

B-series ou D-series ?

B = burstable (économise sur idle, accumule crédits). D = constant performance. B1s pour test, B2ms pour staging, D2s_v3 pour prod stable.

Combien de VMs par subscription ?

Soft limit ~25 000, hard limit selon SKU. Pour lab AZ-104, max 5-10 simultanées.

Backup obligatoire pour VM prod ?

Oui. Azure Backup vault avec daily snapshots, retention 30j minimum. ~5-15 USD/mois par VM selon taille.

Pour aller plus loin


Mots-clés : Azure VM Windows Linux, Managed Disks, NSG Bastion, Availability Zone Set, VMSS Scale Set, Azure CLI VM, Azure Backup VM.


Approfondissement et cas pratiques

Études de cas réelles Azure en Afrique de l’Ouest

Cas 1 — Banque pan-africaine, déploiement Microsoft 365 + Azure 2024. Banque avec 8 filiales en Afrique de l’Ouest et Centrale, 2 800 employés. Migration Exchange on-prem vers Microsoft 365 E5 puis extension Azure. Stack : Microsoft Entra ID Premium P2 avec Conditional Access par filiale, Intune pour gestion 6 000 endpoints (laptops + smartphones BYOD), Azure Information Protection pour classification documents, Microsoft Defender for Cloud + Sentinel pour SIEM unifié. Déploiement progressif 16 mois, ROI cybersec mesuré : -65 % d’incidents phishing en 12 mois post-déploiement.

Cas 2 — Opérateur télécom, refonte legacy 2025. Opérateur ivoirien avec datacenter Plateau et apps Windows Server 2008 critiques pour CRM clients. Stratégie : Azure Migrate pour assessment, lift-and-shift de 120 VMs vers Azure (eu-west-3 France Central), modernisation progressive vers Azure Container Apps + Azure SQL Managed Instance. Hybrid via Azure Arc pour gestion centralisée serveurs on-prem encore en place. Économie matérielle : 1,8 milliards FCFA évités vs renouvellement datacenter. Coût Azure 38 000 USD/mois.

Cas 3 — Startup edtech, Senegal/Mali/Burkina, 2024-2026. Startup éducative cloud-native dès création. Stack 100 % Azure : Azure Kubernetes Service (AKS) pour app multi-tenant, Azure Front Door pour CDN + WAF, Azure SQL Hyperscale pour DB élastique, Cosmos DB pour catalogue cours, Azure OpenAI Service pour IA pédagogique (GPT-4 Turbo). Coût initial 1 200 USD/mois, scale à 8 500 USD/mois après 18 mois et 40 000 utilisateurs. Architecture validée par audit Microsoft for Startups (crédits 150 000 USD obtenus).

Cinq scénarios AZ-104 type examen détaillés

Scénario 1 : RBAC granulaire pour équipe DevOps. Équipe de 8 développeurs doit pouvoir déployer dans RG-Dev mais pas Prod. Réponse : custom role « Junior DevOps Operator » avec actions limitées + Resource Locks « ReadOnly » sur RG-Prod + PIM pour élévation temporaire en Contributor avec approval.

Scénario 2 : conformité RGPD données EU. App SaaS hébergée Azure doit garantir données restent en UE. Réponse : Azure Policy « Allowed Locations » appliquée au Management Group, restriction à France Central + North Europe + West Europe. Audit Compliance dashboard + alertes si tentative déploiement hors zone.

Scénario 3 : DR cross-region + RTO 1h. Workload critique RDS-équivalent + 50 VMs dans France Central. Réponse : Azure Site Recovery configuré vers West Europe (region pair), réplication continue avec lag < 15 min, runbook documenté pour failover en 30-45 min. Tests DR semestriels obligatoires.

Scénario 4 : optimisation coût Storage 50 To. Backups dispersés Hot tier coûtent 1 200 USD/mois. Réponse : lifecycle management policy migration vers Cool après 30j, Archive après 180j. Coût attendu après lifecycle : 180 USD/mois (-85 %).

Scénario 5 : intégration Active Directory hybride. Forêt AD on-prem 15 000 users à intégrer Azure pour SSO Office 365. Réponse : Microsoft Entra Connect avec Password Hash Sync (le plus simple), filtrage scope OU « Employees », écriture passwords back-prop si user reset depuis Office 365 portal, MFA via Conditional Access sur cloud apps.

Architecture hybride enterprise Azure 2026

[Bureau on-prem]                      [Azure cloud]
                                            │
[Active Directory] ──── Entra Connect ──→ [Microsoft Entra ID]
                                            │
[Datacenter Plateau]                        │
   │ ExpressRoute                           │
   └─── (10 Gbps privé) ──────────────→ [vNet hub]
                                          │  ↑
                                          │  └── Azure Firewall
                                          │
                              ┌───────────┼───────────┐
                              ↓           ↓           ↓
                        [vNet spoke1] [vNet spoke2] [vNet spoke3]
                         Production    Dev/Test     Workloads
                                                    spécifiques
                              │           │           │
                              ↓           ↓           ↓
                        [VMs + AKS]  [VMs Dev]  [Azure SQL MI]

Identité : Entra Connect → Entra ID + Conditional Access + MFA
Sécurité : Azure Firewall + Microsoft Defender for Cloud + Sentinel
Backup   : Azure Backup vault GRS + Site Recovery vers West Europe
Monitor  : Azure Monitor + Log Analytics central + Application Insights
Coût     : 18 000 USD/mois pour stack complète enterprise 500 employés

Ce pattern est l’architecture de référence pour les grandes entreprises africaines avec investissement on-prem significatif qu’elles ne veulent pas abandonner immédiatement.

Coûts détaillés en FCFA pour PME africaine

PME 50 employés, infrastructure Microsoft (AD, file server, SQL Server, Office), migration progressive vers Azure :

Service                                       Coût/mois
-------                                       ---------
50× licences Microsoft 365 Business Premium   1 100 USD (22 USD/user)
Azure VM hosting AD DC + file server          85 USD (D2s_v3 reserved 1y)
Azure VM hosting SQL Server (B4ms)            120 USD
Azure Files (NAS) 500 Go Premium              130 USD
Azure Backup vault GRS                        45 USD
Microsoft Sentinel (200 Go logs/mois)         95 USD
Bandwidth + IP                                30 USD
                                              ---------
Total                                         1 605 USD/mois
                                              ≈ 965 000 FCFA/mois
                                              ≈ 11 500 000 FCFA/an

Vs maintien datacenter on-prem : 18-25 millions FCFA/an (matériel amortis + climatisation + sécurité physique + admin temps plein). Migration Azure ROI 1,5-2 ans.

Pour une fintech ou startup partant from scratch : Microsoft for Startups crédits 25 000-150 000 USD couvrent les 12-24 premiers mois entièrement.

Plan de carrière post-AZ-104

0-12 mois : poste Azure administrator junior dans entreprise Microsoft (banque, opérateur, ESN partenaire Microsoft). Salaire 700 000-1 100 000 FCFA. Activités : gestion VMs/storage/backup, support utilisateurs, monitoring CloudWatch-équivalent (Azure Monitor), résolution tickets N1/N2.

12-30 mois : pivoter selon affinité. Cybersec : AZ-500 (Security Engineer). DevOps : AZ-400 (DevOps Engineer Expert). Architecture : AZ-305 (Solutions Architect Expert). Salaire 1 200 000-1 800 000 FCFA. Activités : design solutions, automation Bicep/Terraform/PowerShell, governance Management Groups + Policy.

30-60 mois : Azure Architect senior ou consulting. Profil très demandé en remote pour clients européens (Microsoft écosystème). Salaire 2 500 000-4 500 000 FCFA local, 5-9 millions en remote international.

60+ mois : positions Principal Architect, Microsoft MVP, Engineering Manager Cloud, ou consulting indépendant. Possibilité partenariat Microsoft (Microsoft Partner Network — Solutions Partner status pour ESN).

Évolution alternative — Microsoft 365 + Power Platform : combiner Azure avec Power Platform (Power Apps, Power Automate, Power BI) ouvre les rôles « Solutions Architect Microsoft 365 + Azure », très recherché 2026-2030. Salaires premium en remote 6-12 millions FCFA.

Outils complémentaires Azure 2026

IaC : Bicep (DSL Microsoft moderne, recommandé 2026), Terraform AzureRM provider, ARM templates JSON (legacy), Pulumi.

Automation : Azure Automation (runbooks PowerShell), Azure Logic Apps (workflows low-code), Azure Functions (serverless), GitHub Actions Azure tasks.

Security : Microsoft Defender for Cloud (CSPM + workload protection), Microsoft Sentinel (SIEM/SOAR), Microsoft Purview (data governance + DLP), Microsoft Entra ID Governance (lifecycle + access reviews).

Observability : Azure Monitor + Log Analytics (natif), Application Insights, Datadog Azure integration, Grafana Cloud.

Migration : Azure Migrate (assessment + replication), Azure Database Migration Service, Azure Arc (gestion ressources hybrides + multi-cloud).

FinOps : Azure Cost Management + Billing, Azure Advisor recommendations, Microsoft Cost Management Connector pour Power BI.

Besoin d'un site web ?

Confiez-nous la Création de Votre Site Web

Site vitrine, e-commerce ou application web — nous transformons votre vision en réalité digitale. Accompagnement personnalisé de A à Z.

À partir de 250.000 FCFA
Parlons de Votre Projet
Publicité