Semaine 19-20 : Cloud Public (AWS/Azure) ☁️
Objectifs pédagogiques
- Comprendre les modèles et les services fondamentaux des plateformes cloud majeures (AWS et Azure).
- Déployer des infrastructures (réseau, machines virtuelles, stockage) dans le cloud.
- Gérer les identités, la sécurité, et les coûts liés à l’utilisation des services cloud.
Sommaire de Navigation
1 — Concepts et Modèles de Service Cloud
Le Cloud Computing permet d’accéder à la demande à des ressources informatiques via Internet, avec une tarification basée sur l’utilisation.
Modèles de Service Cloud
Ces modèles définissent le niveau de gestion dont vous êtes responsable, par opposition au fournisseur de cloud.
[Image of Cloud Service Models IaaS PaaS SaaS responsibility chart]
| Modèle | Description | Exemple de Service |
|---|---|---|
| IaaS (Infrastructure as a Service) | Vous gérez l’OS, les applications. Le fournisseur gère le matériel, le réseau, le stockage. C’est l’équivalent des VMs. | AWS EC2, Azure Virtual Machines |
| PaaS (Platform as a Service) | Vous gérez le code de l’application et les données. Le fournisseur gère l’OS, les mises à jour et l’infrastructure. | AWS Lambda (Fonctions), Azure App Services |
| SaaS (Software as a Service) | Le fournisseur gère tout. Vous utilisez l’application via un navigateur. | Microsoft 365, Google Drive |
Régions et Zones de Disponibilité
- Région : Une zone géographique physique où les centres de données du fournisseur sont regroupés (Ex: Paris, Irlande).
- Zone de Disponibilité (AZ) : Un centre de données isolé au sein d’une Région. Les AZ sont interconnectées par des liens réseau à faible latence et sont conçues pour être indépendantes les unes des autres (alimentation, refroidissement) pour la tolérance aux pannes.
2 — Services d’Infrastructure Fondamentaux (Compute et Réseau)
Les services Compute (calcul) et Réseau sont les briques de base pour déployer des serveurs dans le cloud.
AWS Compute : EC2 (Elastic Compute Cloud)
- EC2 est l’offre de machines virtuelles d’AWS.
- AMI (Amazon Machine Image) : C’est le modèle préconfiguré qui contient le système d’exploitation et d’éventuels logiciels pour lancer rapidement une instance EC2.
- Types d’instances : Les instances sont classées selon leur usage (usage général ‘t’, optimisées en calcul ‘c’, optimisées en mémoire ‘r’, etc.).
Azure Compute : Virtual Machines (VMs)
- Les Azure VMs sont l’équivalent d’EC2.
- Images : Azure utilise des images similaires aux AMI pour le déploiement rapide.
- Groupes de Disponibilité / Zones de Disponibilité : Ces mécanismes sont utilisés pour assurer que les VMs restent disponibles en cas de panne matérielle au sein d’une région.
Réseau Cloud (VPC / VNet)
- AWS VPC (Virtual Private Cloud) / Azure VNet (Virtual Network) : C’est votre datacenter privé virtuel, isolé logiquement des autres clients. Vous y définissez vos propres plages d’adresses IP privées (CIDR).
- Sous-réseaux Publics et Privés :
- Publics : Contiennent des ressources accessibles depuis Internet (serveurs web, load balancers).
- Privés : Contiennent des ressources internes (bases de données, serveurs d’application) inaccessibles directement depuis Internet.
3 — Services de Stockage Cloud (AWS S3 et Azure Blob)
Le cloud propose des solutions de stockage diversifiées adaptées à différents besoins (fichiers, blocs, archives).
Stockage Objet (S3 et Blob Storage)
Le stockage objet est idéal pour les données non structurées (sauvegardes, images, vidéos, fichiers de log).
- AWS S3 (Simple Storage Service) : Les données sont stockées dans des « Buckets ». S3 est hautement durable, évolutif et offre différentes classes de stockage (Standard, Infrequent Access, Glacier pour l’archivage).
- Azure Blob Storage : L’équivalent d’S3 chez Azure. Les données sont stockées dans des « Conteneurs » et des « Blobs » (Binary Large Objects).
- Accès : Le stockage objet est accessible via des API HTTP (URL) et non comme un disque dur classique.
Stockage de Blocs (Disques Virtuels)
- AWS EBS (Elastic Block Store) / Azure Disques Managés : C’est le disque dur virtuel classique attaché à vos machines EC2/VM. Il est formaté comme un volume par l’OS et est indispensable pour héberger le système d’exploitation.
4 — Gestion des Identités, Sécurité et Conformité
Dans le cloud, la sécurité est une responsabilité partagée entre le fournisseur et l’utilisateur.
Gestion des Identités et des Accès (IAM / Azure AD)
- AWS IAM (Identity and Access Management) : Permet de gérer les utilisateurs, les groupes et les rôles. L’accès aux ressources est régi par des **Politiques IAM** qui appliquent le principe du moindre privilège.
- Azure Active Directory (Azure AD) : Le service de gestion des identités d’Azure, souvent utilisé pour l’authentification unique (Single Sign-On ou SSO) pour les utilisateurs finaux et l’accès aux services.
Sécurité Réseau et Firewalls
- Groupes de Sécurité (AWS Security Groups) / Groupes de Sécurité Réseau (Azure NSG) : Ces firewalls virtuels sont la première ligne de défense de vos VMs. Ils fonctionnent au niveau de la machine virtuelle et filtrent le trafic entrant et sortant.
Modèle de Responsabilité Partagée
Le fournisseur (AWS/Azure) est responsable de la **Sécurité du Cloud** (le matériel, les bâtiments, l’électricité). Vous êtes responsable de la **Sécurité DANS le Cloud** (les données, la configuration des OS, les firewalls virtuels, IAM).
5 — Maîtrise des Coûts et Optimisation
La gestion des coûts est essentielle dans le cloud pour éviter les factures inattendues.
Tarification et Modèles d’Achat
- Paiement à l’usage (On-Demand) : Vous payez uniquement pour ce que vous utilisez (heures de VM, stockage utilisé). Idéal pour les charges de travail variables.
- Instances Réservées (Reserved Instances – RI) : Vous vous engagez sur une période (1 an ou 3 ans) pour un type d’instance, en échange d’une réduction significative (jusqu’à 75%). Idéal pour les charges de travail stables.
- Instances Spot (AWS) / Azure Spot VMs : Ressources inutilisées proposées à un prix très bas, mais qui peuvent être reprises par le fournisseur à tout moment. Idéal pour les calculs tolérants aux interruptions.
Principes d’Optimisation des Coûts
L’optimisation passe par la surveillance et l’automatisation.
- Arrêter les ressources inutilisées : Éteindre les VMs de développement en dehors des heures de travail.
- Dimensionnement correct (Rightsizing) : S’assurer que les VMs n’utilisent pas plus de ressources (CPU/RAM) qu’elles n’en ont réellement besoin.
- Utiliser le stockage approprié : Déplacer les données peu consultées de S3 Standard vers S3 Infrequent Access pour réduire les coûts de stockage.