Module 3 : Infrastructure Cloud (Compute, Storage, Network)
Durée estimée : 45 minutes
Objectifs du Module
À la fin de ce module, vous serez capable de :
- Comprendre les types de ressources compute
- Différencier les types de stockage cloud
- Expliquer les concepts réseau cloud
- Comprendre les régions et zones de disponibilité
- Mapper les services entre AWS, Azure et GCP
1. Régions et Zones de Disponibilité
1.1 Géographie du Cloud
graph TB
subgraph "🌍 Monde"
subgraph "🇪🇺 Europe"
subgraph "Region: Paris (eu-west-3)"
AZ1["Zone A<br/>Datacenter 1"]
AZ2["Zone B<br/>Datacenter 2"]
AZ3["Zone C<br/>Datacenter 3"]
end
REGION2["Region: Francfort"]
REGION3["Region: Dublin"]
end
subgraph "🇺🇸 Amérique"
REGION4["Region: N. Virginia"]
REGION5["Region: Oregon"]
end
subgraph "🇯🇵 Asie"
REGION6["Region: Tokyo"]
REGION7["Region: Singapour"]
end
end
AZ1 <-->|"<10km"| AZ2
AZ2 <-->|"<10km"| AZ3
style AZ1 fill:#4caf50,color:#fff
style AZ2 fill:#4caf50,color:#fff
style AZ3 fill:#4caf50,color:#fff
1.2 Concepts Clés
| Concept | Description | Distance | Latence |
|---|---|---|---|
| Zone de Disponibilité | Un ou plusieurs datacenters isolés | < 100 km | < 2 ms |
| Région | Ensemble de zones dans une zone géographique | - | - |
| Edge Location | Points de présence pour CDN | Mondial | Variable |
1.3 Pourquoi Plusieurs Zones ?
graph TB
subgraph "Haute Disponibilité Multi-AZ"
LB["⚖️ Load Balancer"]
subgraph "Zone A"
VM1["💻 VM 1"]
DB1["🗄️ DB Primary"]
end
subgraph "Zone B"
VM2["💻 VM 2"]
DB2["🗄️ DB Standby"]
end
end
USER["👥 Users"] --> LB
LB --> VM1
LB --> VM2
DB1 -->|"Réplication<br/>synchrone"| DB2
style LB fill:#2196f3,color:#fff
style DB1 fill:#4caf50,color:#fff
style DB2 fill:#FF9800800800,color:#fff
Bénéfice
Si une zone tombe (panne électrique, catastrophe naturelle), les autres zones continuent de fonctionner. Le service reste disponible.

1.4 Régions par Provider
| Provider | Nb Régions | Régions France | Régions Europe |
|---|---|---|---|
| AWS | 33+ | Paris (eu-west-3) | Dublin, Francfort, Londres, Milan, Stockholm... |
| Azure | 60+ | France Central, France South | West Europe, North Europe, Germany... |
| GCP | 37+ | - | Belgium, Netherlands, Zurich, Frankfurt... |
2. Compute (Calcul)
2.1 Types de Ressources Compute
graph TB
subgraph "Spectre du Compute"
BARE["🖥️ Bare Metal<br/>Serveur dédié"]
VM["💻 Virtual Machines<br/>Serveurs virtuels"]
CONTAINER["🐳 Containers<br/>Docker, Kubernetes"]
SERVERLESS["λ Serverless<br/>Functions"]
end
BARE --> VM --> CONTAINER --> SERVERLESS
subgraph "Contrôle"
HIGH["Maximum"]
LOW["Minimum"]
end
BARE -.-> HIGH
SERVERLESS -.-> LOW
style BARE fill:#f44336,color:#fff
style VM fill:#FF9800800800,color:#fff
style CONTAINER fill:#4caf50,color:#fff
style SERVERLESS fill:#2196f3,color:#fff
2.2 Virtual Machines (IaaS)
Familles d'Instances
| Type | Usage | Caractéristiques |
|---|---|---|
| General Purpose | Workloads équilibrés | CPU/RAM équilibrés |
| Compute Optimized | Calcul intensif | Plus de CPU |
| Memory Optimized | Bases de données | Plus de RAM |
| Storage Optimized | Big Data, Data Warehouse | I/O élevé |
| GPU | ML, rendu graphique | Cartes graphiques |
Équivalences Multi-Cloud
| Catégorie | AWS | Azure | GCP |
|---|---|---|---|
| General | t3, m6i | B, D | e2, n2 |
| Compute | c6i | F | c2 |
| Memory | r6i | E | m2 |
| Storage | i3, d2 | L | - |
| GPU | p4, g5 | NC, ND | a2 |
Exemple de Tailles
AWS EC2 : t3.micro → t3.small → t3.medium → t3.large → t3.xlarge → t3.2xlarge
1 vCPU 2 vCPU 2 vCPU 2 vCPU 4 vCPU 8 vCPU
1 GB 2 GB 4 GB 8 GB 16 GB 32 GB
2.3 Options de Facturation
graph LR
subgraph "Modèles de Prix"
OD["💳 On-Demand<br/>Paiement à l'heure<br/>Flexibilité maximale"]
RI["📅 Reserved<br/>Engagement 1-3 ans<br/>-30 à -75%"]
SPOT["🎯 Spot/Preemptible<br/>Capacité excédentaire<br/>-60 à -90%"]
SAVING["💰 Savings Plans<br/>Engagement $/heure<br/>Flexibilité + réduction"]
end
style OD fill:#f44336,color:#fff
style RI fill:#4caf50,color:#fff
style SPOT fill:#FF9800800800,color:#fff
style SAVING fill:#2196f3,color:#fff
| Modèle | Réduction | Engagement | Risque |
|---|---|---|---|
| On-Demand | 0% | Aucun | Aucun |
| Reserved | 30-75% | 1-3 ans | Si besoin change |
| Spot | 60-90% | Aucun | Interruption possible |
| Savings Plans | 20-50% | $/heure pendant 1-3 ans | Modéré |
Conseil Worldline
- Production critique : Reserved Instances
- Dev/Test : On-Demand ou Spot
- Batch processing : Spot Instances
3. Storage (Stockage)
3.1 Types de Stockage
graph TB
subgraph "Types de Stockage Cloud"
BLOCK["💾 Block Storage<br/>Disques virtuels"]
FILE["📁 File Storage<br/>Partages fichiers"]
OBJECT["📦 Object Storage<br/>Objets/Blobs"]
end
subgraph "Usage"
BLOCK --> U1["OS, Databases"]
FILE --> U2["Partages réseau, NAS"]
OBJECT --> U3["Backups, Media, Logs"]
end
style BLOCK fill:#f44336,color:#fff
style FILE fill:#4caf50,color:#fff
style OBJECT fill:#2196f3,color:#fff
3.2 Block Storage (Disques)
Définition
Équivalent d'un disque dur attaché à une VM. Données organisées en blocs.
| Provider | Service | Description |
|---|---|---|
| AWS | EBS (Elastic Block Store) | Disques persistants |
| Azure | Managed Disks | Disques managés |
| GCP | Persistent Disk | Disques persistants |
Types de disques :
| Type | IOPS | Latence | Usage |
|---|---|---|---|
| SSD Standard | 3000 | ~1ms | Usage général |
| SSD Provisioned | 64000+ | <1ms | Bases de données |
| HDD | 500 | ~10ms | Archivage, logs |
3.3 Object Storage (Objets)
Définition
Stockage d'objets (fichiers) avec métadonnées. Accès via HTTP/API. Capacité quasi-illimitée.
graph LR
subgraph "Object Storage"
BUCKET["🪣 Bucket/Container"]
OBJ1["📄 photo.jpg<br/>+ métadonnées"]
OBJ2["📄 video.mp4<br/>+ métadonnées"]
OBJ3["📄 backup.tar.gz<br/>+ métadonnées"]
end
BUCKET --> OBJ1
BUCKET --> OBJ2
BUCKET --> OBJ3
APP["🌐 Application"] -->|"HTTP GET/PUT"| BUCKET
style BUCKET fill:#FF9800800800,color:#fff
| Provider | Service | Durabilité |
|---|---|---|
| AWS | S3 | 99.999999999% (11 nines) |
| Azure | Blob Storage | 99.999999999% |
| GCP | Cloud Storage | 99.999999999% |
Classes de stockage :
| Classe | Accès | Coût stockage | Coût accès | Usage |
|---|---|---|---|---|
| Standard | Fréquent | $$$ | $ | Données actives |
| Infrequent | Mensuel | $$ | $$ | Backups récents |
| Archive | Rare | $ | $$$ | Archives long terme |
3.4 File Storage (Fichiers)
Définition
Partages de fichiers accessibles via NFS ou SMB. Équivalent d'un NAS.
| Provider | Service | Protocoles |
|---|---|---|
| AWS | EFS, FSx | NFS, SMB |
| Azure | Azure Files | SMB, NFS |
| GCP | Filestore | NFS |
4. Network (Réseau)
4.1 Concepts Fondamentaux
graph TB
subgraph "Cloud Network Architecture"
INTERNET["🌐 Internet"]
subgraph "VPC / VNet"
IGW["🚪 Internet Gateway"]
subgraph "Public Subnet"
NAT["🔄 NAT Gateway"]
BASTION["🔐 Bastion Host"]
LB["⚖️ Load Balancer"]
end
subgraph "Private Subnet"
APP["💻 App Servers"]
DB["🗄️ Databases"]
end
end
end
INTERNET --> IGW
IGW --> LB
IGW --> BASTION
LB --> APP
APP --> NAT
NAT --> INTERNET
APP --> DB
style LB fill:#2196f3,color:#fff
style APP fill:#4caf50,color:#fff
style DB fill:#f44336,color:#fff
4.2 Glossaire Réseau Cloud
| Concept | Description | Équivalent On-Premise |
|---|---|---|
| VPC / VNet | Réseau virtuel isolé | VLAN |
| Subnet | Sous-réseau dans un VPC | Sous-réseau |
| Internet Gateway | Connexion vers Internet | Routeur edge |
| NAT Gateway | Accès Internet sortant pour subnets privés | NAT |
| Security Group | Firewall stateful au niveau instance | Firewall |
| NACL | Firewall stateless au niveau subnet | ACL |
| Load Balancer | Distribution de trafic | F5, HAProxy |
| VPN Gateway | Connexion VPN site-to-site | Concentrateur VPN |
| Peering | Connexion entre VPCs | Interconnexion |
4.3 Public vs Private Subnets
graph TB
subgraph "Public Subnet"
direction TB
PUB["✅ Route vers Internet Gateway<br/>✅ IP publique possible<br/>👉 Web servers, Load Balancers"]
end
subgraph "Private Subnet"
direction TB
PRIV["❌ Pas de route directe vers Internet<br/>❌ Pas d'IP publique<br/>👉 Databases, App servers"]
end
style PUB fill:#4caf50,color:#fff
style PRIV fill:#f44336,color:#fff
4.4 Services Réseau par Provider
| Service | AWS | Azure | GCP |
|---|---|---|---|
| Réseau virtuel | VPC | VNet | VPC |
| Load Balancer L4 | NLB | Load Balancer | Network LB |
| Load Balancer L7 | ALB | Application Gateway | HTTP(S) LB |
| CDN | CloudFront | CDN | Cloud CDN |
| DNS | Route 53 | DNS | Cloud DNS |
| VPN | Site-to-Site VPN | VPN Gateway | Cloud VPN |
| Connexion privée | Direct Connect | ExpressRoute | Cloud Interconnect |
5. Bases de Données
5.1 Types de Bases de Données Cloud
graph TB
subgraph "Bases de Données Cloud"
subgraph "Relationnelles (SQL)"
MYSQL["🐬 MySQL/MariaDB"]
POSTGRES["🐘 PostgreSQL"]
SQLSERVER["🗄️ SQL Server"]
ORACLE["🔶 Oracle"]
end
subgraph "NoSQL"
DOCUMENT["📄 Document<br/>(MongoDB-like)"]
KEYVALUE["🔑 Key-Value<br/>(Redis-like)"]
COLUMNAR["📊 Columnar<br/>(Cassandra-like)"]
GRAPH["🔗 Graph<br/>(Neo4j-like)"]
end
subgraph "Spécialisées"
DWH["📈 Data Warehouse"]
TIMESERIES["⏱️ Time Series"]
SEARCH["🔍 Search"]
end
end
5.2 Services par Provider
| Type | AWS | Azure | GCP |
|---|---|---|---|
| MySQL/PostgreSQL | RDS, Aurora | Azure Database | Cloud SQL |
| SQL Server | RDS SQL Server | SQL Database | Cloud SQL |
| Document | DocumentDB | Cosmos DB | Firestore |
| Key-Value | DynamoDB | Cosmos DB | Bigtable |
| Cache | ElastiCache | Cache for Redis | Memorystore |
| Data Warehouse | Redshift | Synapse | BigQuery |
| Search | OpenSearch | Cognitive Search | - |
5.3 Managed vs Self-Managed
| Aspect | Self-Managed (VM) | Managed (PaaS) |
|---|---|---|
| Installation | Vous | Provider |
| Patching | Vous | Provider |
| Backups | Vous | Automatique |
| Haute Dispo | Vous (complexe) | Quelques clics |
| Scaling | Vous | Automatique |
| Coût | Moins cher | Plus cher mais moins d'effort |
| Contrôle | Total | Limité |
6. Récapitulatif Multi-Cloud
6.1 Tableau de Correspondance
| Catégorie | AWS | Azure | GCP |
|---|---|---|---|
| VM | EC2 | Virtual Machines | Compute Engine |
| Containers | ECS, EKS | AKS | GKE |
| Serverless | Lambda | Functions | Cloud Functions |
| Block Storage | EBS | Managed Disks | Persistent Disk |
| Object Storage | S3 | Blob Storage | Cloud Storage |
| File Storage | EFS | Azure Files | Filestore |
| VPC | VPC | VNet | VPC |
| Load Balancer | ALB/NLB | Load Balancer | Cloud Load Balancing |
| SQL Database | RDS | SQL Database | Cloud SQL |
| NoSQL | DynamoDB | Cosmos DB | Firestore |
| CDN | CloudFront | CDN | Cloud CDN |
| DNS | Route 53 | DNS | Cloud DNS |
7. Quiz de Validation
Question 1
Pourquoi déployer une application sur plusieurs zones de disponibilité ?
Réponse
Haute disponibilité
Si une zone tombe (panne datacenter, catastrophe), les autres zones continuent de fonctionner. Le service reste disponible pour les utilisateurs.
Question 2
Quel type de stockage utiliseriez-vous pour stocker des millions de photos uploadées par des utilisateurs ?
Réponse
Object Storage (S3, Blob Storage, Cloud Storage)
- Capacité quasi-illimitée
- Accès HTTP/API
- Coût optimisé pour gros volumes
- Durabilité 11 nines
Question 3
Quelle est la différence entre un Security Group et une NACL ?
Réponse
| Security Group | NACL |
|---|---|
| Niveau instance/VM | Niveau subnet |
| Stateful (retour auto) | Stateless (règles explicites) |
| Allow only | Allow et Deny |
Question 4
Quel type d'instance choisir pour une base de données en mémoire (Redis) ?
Réponse
Memory Optimized (AWS: r6i, Azure: E-series, GCP: m2)
Ces instances ont un ratio RAM/CPU élevé, idéal pour les bases de données en mémoire.
8. Pour Aller Plus Loin
| Ressource | Description |
|---|---|
| AWS Well-Architected | Best practices architecture AWS |
| Azure Architecture Center | Patterns et guides Azure |
| GCP Architecture Framework | Framework architecture GCP |
Exercice : À Vous de Jouer
Mise en Pratique
Objectif : Concevoir l'infrastructure cloud pour une application web
Contexte : Vous devez déployer une application e-commerce dans le cloud avec les exigences suivantes : - 3 serveurs web (2 vCPU, 4 Go RAM chacun) - 1 base de données PostgreSQL haute disponibilité - Stockage pour 5 To de photos produits - Haute disponibilité obligatoire (multi-AZ) - Région : Europe (France ou proche)
Tâches à réaliser :
- Choisissez un cloud provider (AWS, Azure ou GCP) et justifiez votre choix
- Définissez l'architecture réseau (VPC, subnets publics/privés)
- Sélectionnez les types d'instances et services appropriés
- Calculez le coût mensuel estimé
Critères de validation :
- [ ] Architecture multi-AZ avec au moins 2 zones de disponibilité
- [ ] Segmentation réseau correcte (DMZ, application, données)
- [ ] Services de stockage adaptés (block vs object)
- [ ] Estimation de coûts réaliste
Solution
1. Choix du cloud provider : AWS
Justification : - Région Paris (eu-west-3) disponible pour conformité RGPD - Services matures et bien documentés - Bon rapport fonctionnalités/coûts pour ce cas d'usage - (Note : Azure et GCP seraient aussi valides)
2. Architecture réseau
# Création VPC
aws ec2 create-vpc --cidr-block 10.0.0.0/16 --region eu-west-3
# Subnets publics (pour load balancer)
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.1.0/24 --availability-zone eu-west-3a
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.2.0/24 --availability-zone eu-west-3b
# Subnets privés (pour serveurs web)
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.11.0/24 --availability-zone eu-west-3a
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.12.0/24 --availability-zone eu-west-3b
# Subnets data (pour base de données)
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.21.0/24 --availability-zone eu-west-3a
aws ec2 create-subnet --vpc-id vpc-xxx --cidr-block 10.0.22.0/24 --availability-zone eu-west-3b
Architecture complète :
┌─────────────────────────────────────────────────────────────┐
│ VPC 10.0.0.0/16 │
│ │
│ ┌─────────────────────┬─────────────────────┐ │
│ │ Zone A (eu-west-3a)│ Zone B (eu-west-3b)│ │
│ ├─────────────────────┼─────────────────────┤ │
│ │ Public Subnet │ Public Subnet │ │
│ │ 10.0.1.0/24 │ 10.0.2.0/24 │ │
│ │ ALB ────────────┼────── ALB │ │
│ ├─────────────────────┼─────────────────────┤ │
│ │ Private Subnet │ Private Subnet │ │
│ │ 10.0.11.0/24 │ 10.0.12.0/24 │ │
│ │ Web Server 1 │ Web Server 2 │ │
│ │ Web Server 3 │ │ │
│ ├─────────────────────┼─────────────────────┤ │
│ │ Data Subnet │ Data Subnet │ │
│ │ 10.0.21.0/24 │ 10.0.22.0/24 │ │
│ │ RDS Primary ──────┼───▶ RDS Standby │ │
│ └─────────────────────┴─────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
3. Services sélectionnés
Compute :
# Instances EC2 pour les serveurs web
# Type : t3.medium (2 vCPU, 4 Go RAM)
aws ec2 run-instances \
--image-id ami-xxx \
--instance-type t3.medium \
--count 3 \
--subnet-id subnet-private-a
Load Balancer :
# Application Load Balancer
aws elbv2 create-load-balancer \
--name ecommerce-alb \
--subnets subnet-public-a subnet-public-b \
--security-groups sg-alb
Base de données :
# RDS PostgreSQL Multi-AZ
aws rds create-db-instance \
--db-instance-identifier ecommerce-db \
--db-instance-class db.t3.large \
--engine postgres \
--allocated-storage 100 \
--multi-az \
--db-subnet-group-name db-subnet-group
Stockage photos :
# S3 bucket pour les photos
aws s3 mb s3://ecommerce-products-photos-eu
# Lifecycle policy pour optimiser les coûts
aws s3api put-bucket-lifecycle-configuration \
--bucket ecommerce-products-photos-eu \
--lifecycle-configuration file://lifecycle.json
4. Estimation des coûts mensuels (région Paris)
| Service | Détail | Coût mensuel |
|---|---|---|
| EC2 | 3x t3.medium (24/7) | 3 × 42€ = 126€ |
| ALB | Load balancer + data | 23€ + 10€ = 33€ |
| RDS PostgreSQL | db.t3.large Multi-AZ | 156€ |
| RDS Storage | 100 Go SSD | 12€ |
| S3 Standard | 5 To stockage | 5000 Go × 0.023€ = 115€ |
| CloudFront | 2 To data transfer | 85€ |
| Data Transfer | Sortant 1 To | 90€ |
| Backup | Snapshots EBS + RDS | 20€ |
| VPC | NAT Gateway | 33€ |
| Total | ≈ 670€/mois | |
| Total annuel | ≈ 8 040€/an |
Optimisations possibles : - Reserved Instances 1 an : -30% sur EC2 et RDS → économie de 84€/mois - S3 Intelligent-Tiering pour photos anciennes : -20% → économie de 23€/mois - Total optimisé : ≈ 563€/mois (6 756€/an)
Comparaison vs On-Premise :
Coûts on-premise sur 3 ans :
• Hardware (serveurs, storage, network) : 45 000€
• Datacenter (espace, énergie) : 18 000€
• Licences (OS, DB) : 12 000€
• Personnel (admin) : 45 000€
• Total 3 ans : 120 000€ (soit 40 000€/an)
Cloud (optimisé) :
• Total 3 ans : 20 268€ (soit 6 756€/an)
• Économie : 100 000€ sur 3 ans !
Points clés de l'architecture : - ✅ Haute disponibilité : multi-AZ sur tous les composants critiques - ✅ Scalabilité : Auto Scaling Group peut être ajouté sur les EC2 - ✅ Performance : CDN CloudFront pour les images - ✅ Sécurité : Segmentation réseau en 3 tiers (public/app/data) - ✅ Coûts : Bien inférieur à l'on-premise
Navigation
| Précédent | Suivant |
|---|---|
| ← Module 2 : Modèles de Service | Module 4 : Sécurité & Conformité → |
Navigation
| ← Module 2 : Les Modèles de Service (Ia... | Module 4 : Sécurité & Conformité dans... → |