Il est commun que des applications qui s’exécutent sur des instances EC2 aient besoin de stocker sur disque dur (non en mémoire vive) et partager des données et des configurations sous forme de fichiers. C’est le cas des serveurs web et des bases de données RDS. AWS fournit trois types de stockage pour répondre à ce besoin :
Bloc
Temporaire
Fichier scalable
Explorons ensemble les services AWS qui implémentent ces trois types.
Découvrez le stockage par bloc
Vous avez découvert Amazon Elastic Block Store (EBS), service qui fournit des volumes de stockage niveau bloc à utiliser avec les instances EC2. Ces volumes sont des disques réseaux à utiliser comme périphériques de stockage (comme une clé USB pour votre ordinateur 😉).
Vous pouvez facilement détacher un volume d’une instance pour l’attacher à une autre instance, très pratique en cas de panne.
EBS vous permet de supprimer un volume monté à la résiliation de son instance.
EBS propose six types de volumes à connaître pour l’examen :
SSD à usage général (general purpose - gp) : offre un stockage économique (1 GiB à 16 TiB) et de faible latence (3000 IOPS à 16000 IOPS), idéal pour des bureaux virtuels, des volumes de démarrage, des environnements de développement/test.
gp2
Les petits volumes peuvent atteindre (burst) 3000 IOPS.
La taille et l’IOPS du volume sont liés (si l’un diminue ou augmente, l’autre également et réciproquement).
gp3 (nouvelle génération) :
Base constante de 3000 IOPS et 125 MiB/s pour débit.
La taille et l’IOPS du volume ne sont pas liés.
SSD provisionné (provisioned SSD - io) : destiné aux charges de travail critiques nécessitant des performances IOPS soutenues ou supérieures à 16000 IOPS, idéal pour des bases de données.
io1 /io2 (nouvelle génération) :
Stockage de 4 GiB à 16 TiB.
IOPS maximal : 64000 avec EC2 Nitro sinon 32000.
La taille et l’IOPS du volume ne sont pas liés.
io2 offre une meilleure durabilité que io1.
io2 Block Express :
Stockage de 4 GiB – 64 TiB.
IOPS maximal : 256 000.
HDD à débit optimisé (throughput optimized HDD - st1) : destiné aux stockages Big Data, entrepôts de données (data warehouses)
Stockage de 125 GiB à 16 TiB.
Débit maximal : 500 MiB/s.
IOPS maximal : 500.
HDD à froid (cold HDD - sc1) : destiné aux stockages consultés de manière occasionnelle et avec un coût le plus bas possible.
Stockage de 125 GiB à 16 TiB.
Débit maximal : 500 MiB/s.
IOPS maximal : 500.
Dans le cours “Découvrez le cloud avec AWS”, vous avez vu que EBS permet de créer des instantanés (snapshots) afin de réaliser des sauvegardes incrémentales (backup) pour restaurer des instances EC2 de même AZ.
Et si je devais restaurer des instances dans une autre AZ ?
Dans ce cas, il faut au préalable copier votre instantané dans l’autre AZ et restaurer l’instance à partir de la copie comme indiqué dans le schéma suivant :
EBS permet également de chiffrer, avec une clé de chiffrement symétrique AES-256 fournie par le service AWS Key Management Service (KMS) que nous étudierons plus tard, un volume pour protéger les données. A contrario, cela engendre une légère latence !
Vous devez connaître (voir ci-dessous) comment restaurer un volume en activant le chiffrement par clé KMS, alors qu’il a été créé avec chiffrement non activé :
Pour conclure avec les instantanés, EBS fournit trois fonctionnalités intéressantes à connaître pour la certification :
EBS Snapshots Archive : nouveau niveau de stockage à long terme (> 90 jours) pour archiver vos instantanés à faible coût (jusqu’à 75% moins cher). Toutefois, la restauration prend jusqu'à 72 heures.
Restauration d'instantané rapide (Fast Snapshot Restore) : crée un volume à partir d'un instantané entièrement initialisé à la création en éliminant les temps de latence.
Corbeille (Recycle Bin) : agit comme une corbeille sur un ordinateur, elle permet de restaurer des instantanés supprimés avant l'expiration de leur période de rétention, sinon ils sont définitivement supprimés.
Maîtrisez le stockage dans EC2
Cela atteint plusieurs millions d’IOPS comme indiqué dans le tableau suivant extrait de cette documentation sur l'instance de calcul optimisé :
Contrairement à EBS, qui est un disque réseau, un stockage d’instances se situe sur le même matériel physique (hardware) que l’instance EC2. Ainsi, il n’y a aucune contrainte réseau, comme indiqué sur l’image suivante :
Ce stockage est particulièrement adapté pour le stockage temporaire d'informations qui changent fréquemment, telles que les tampons (buffer), les caches, les données temporaires et autres contenus provisoires.
Il est peut être nécessaire de faire régulièrement des sauvegardes des stockages d’instances, mais ce type de stockage ne propose pas de stratégie de sauvegarde. Cela est donc à votre charge. Heureusement, vous avez appris à utiliser les AMI 🙂!
Stockez des fichiers de façon scalable
Plusieurs équipes de The Green Earth Post travaillent avec de grandes quantités de documents et doivent les partager entre elles. Par exemple, l'équipe chargée du contenu qui travaille sur les textes doit pouvoir récupérer facilement les images et infographies préparées pour elle par l'équipe du design graphique. Pour faciliter cette tâche, vous devez assurer un système de partage de fichiers pour The Green Earth Post. C’est ce qu’on va voir ici.
AWS propose deux services managés de systèmes de fichiers scalables :
Amazon Elastic File System (EFS) : destiné uniquement à des environnements Linux.
Amazon FSx : destinés à des environnements Linux et Windows et qui ont besoin de meilleures performances et de compatibilités avec d’autres systèmes (S3, VMWare…).
Amazon Elastic File System
Contrairement à EBS, EFS se met à l’échelle automatiquement jusqu’à plusieurs pétaoctets de données, n’a pas besoin d’être approvisionné et est facturé à l’usage (beaucoup plus cher qu’EBS). Il est uniquement compatible avec des AMI Linux (pas Windows), utilise le protocole NFSv4 et est compatible POSIX (standard définissant l'API d'un noyau Unix). Ci-dessous un schéma de son fonctionnement :
EFS est conçu idéalement pour les services web, les répertoires de base, les flux de traitement multimédia, la gestion de contenu et le big data.
EFS propose plusieurs modes de performance, débit et classes de stockage à connaître pour la certification.
Modes de performance (à définir définitivement à la création)
Usage général (general purpose) : Pour les applications sensibles à la latence (serveur web...). | Max E\O (max I\O) : Pour les applications non sensibles à la latence (big data, traitement multimédia...). |
Modes de débit (throughput)
Débit en rafale (bursting) : Convient aux applications traditionnelles. Gère jusqu’à 100 Mbit/s par To. | Débit alloué (allocated) : Pour les applications dont le débit est relativement constant. Le débit est approvisionné quelle que soit la taille de stockage. |
Classes de stockage
EFS (Multizone/Multi-AZ) : Classe standard. Réplique les données sur plusieurs zones de disponibilité ; idéal pour des environnements de production. | EFS Unizone (One Zone) : Réplique les données dans une même AZ ; idéal pour des environnements de développement. |
EFS-Accès Peu Fréquent (Infrequent Access - IA) (Multi-AZ) : Même chose que EFS Multi-AZ avec un stockage moins coûteux, pour des fichiers très peu consultés. | EFS Unizone-Accès Peu Fréquent (One Zone-IA) : Même chose que EFS One Zone avec un stockage moins coûteux, pour des fichiers très peu consultés. |
Les classes EFS-IA et EFS One Zone-IA servent à archiver comme indiqué ci-dessous :
Amazon FSx
Il est divisé en quatre sous-services (voir tableau-ci-dessous) à connaître en détail pour la certification :
Sous-service FSx | FSx for Windows | FSx for Lustre | FSx for NetApp ONTAP | FSx for OpenZFS |
Objectifs | Fournit des serveurs de fichiers Windows entièrement managés, hautement disponibles (multi-AZ) et peut être monté par des instances EC2 Linux. | Fournit un système parallèle de fichiers Linux distribués pour du calcul haute performance (HPC), comme par exemple du traitement vidéo, la modélisation financière. | Fournit un stockage de fichiers basé sur le système de fichiers ONTAP de NetApp et aide à transférer des données d’un système ONTAP ou NAS vers AWS. | Fournit un stockage de fichiers basé sur le système de fichiers OpenZFS et aide à transférer des données d’un système ZFS vers AWS. |
Protocoles supportés | SMB, NTFS |
| NFS, SMB, iSCSI | NFS (v3, v4, v4.1, v4.2) |
Technologies supportées | Groupes d’espace (namespaces) Microsoft DFS | Linux | Linux, Windows, MacOS, ONTAP, NAS | Linux, Windows, MacOS, ZFS |
Performances | Plusieurs Gbit/s, centaines de milliers d'IOPS et plusieurs pétaoctets | Plusieurs Gbit/s, centaines de milliers d'IOPS et des latences inférieures à la milliseconde | Plusieurs Gbit/s, centaines de milliers d'IOPS et des latences inférieures à la milliseconde | Jusqu’à 12,5 Go/s, 1 million d'IOPS, avec des latences de quelques centaines de microsecondes |
Intégration à d’autres systèmes | Sauvegardes (backups) sur S3. Serveurs on-premises (VPN ou Direct Connect). | Intégration transparente avec S3. Serveurs on-premises (VPN ou Direct Connect). | VMware Cloud on AWS, Amazon Workspaces, Amazon AppStream 2.0, EC2/ECS/EKS, on-premise | VMware Cloud on AWS, Amazon Workspaces, Amazon AppStream 2.0, EC2/ECS/EKS, on-premise |
Options de déploiement |
| Stockage temporaire (perdu en cas de pannes) avec des fichiers scratch (non répliqué) ou stockage persistant avec des fichiers persistants (répliqué) |
|
|
Clonage ponctuel et instantané (Point-in-time, instantaneous cloning) |
|
| pris en charge | pris en charge |
En résumé
Une instance EC2 dispose de plusieurs options pour stocker des fichiers : en bloc avec EBS, temporaire avec le stockage d’instance ou scalable avec EFS ou FSx.
AMI est utile pour faire de la sauvegarde de stockage d’instances.
EFS est uniquement dédié à des systèmes de fichiers Linux.
FSx est dédié à des systèmes de fichiers Linux et Windows et dispose de quatre sous-services :
FSx for Windows ;
FSx for Lustre ;
FSx for NetApp ONTAP ;
FSx for OpenZFS.
Une instance EC2 peut utiliser toutes ces possibilités en même temps comme indiqué ci-dessous.
Dans le prochain chapitre, découvrons les alternatives aux instances EC2 !