|

Navigation dans les services AWS – Stockage statique

Partager

Lorsque vous essayez de déployer une application dans le Cloud, il y a tellement de choix ! Honnêtement, j’étais dépassé la première fois que je les ai découverts, simplement à cause du nombre impressionnant d’options disponibles. Dans cette série de billets de blogue, nous allons discuter des facteurs qui peuvent vous aider à décider quel type de service de stockage statique (type de bucket S3) pourrait être idéal pour vous.

Celui-ci explorera les différentes options de stockage statique offertes par le service S3 d’AWS.

Qu’est-ce que S3 ?

Amazon S3 (Static Storage Service) est une fonctionnalité de stockage d’objets où vous pouvez stocker une quantité illimitée de données, organisées par buckets. C’est généralement un endroit idéal pour stocker des données statiques comme des sites et des ressources. Chaque fichier (appelé un « Objet ») peut avoir une taille maximale de 5 To et peut être configuré pour être accessible mondialement via une URL compatible REST. Tous les objets ont une clé, un ID de version (utile si nous prévoyons de remplacer ces objets), une valeur, des métadonnées et des sous-ressources. Les buckets doivent avoir un nom unique mondialement et sont définis au niveau de la Région [les régions sont les zones géographiques où AWS possède des centres de données (par exemple, les régions sont Canada-central, US-east, etc., et chaque région a plusieurs zones de disponibilité (AZ) comme US-east-1, US-east-2, etc., où chaque AZ a un ou plusieurs centres de données)].

Avantages de l’utilisation de S3

1. Durabilité

    • Assure que les données ne sont pas perdues dans des scénarios où AWS connaît une panne matérielle.
    • S3 offre 11 neuf (99,999999999 %) de durabilité.

2. Scalabilité

    • Capacité pratiquement illimitée par bucket.
    • Chaque fichier peut avoir une taille allant jusqu’à 5 To.

3. Disponibilité

    • Accédez aux données quand vous en avez besoin.
    • Le niveau standard de S3 est conçu pour 4 neuf (99,99 %) de disponibilité.

4. Sécurité

    • Contrôle d’accès granulaire au niveau du bucket et de l’objet.

5. Performance

    • Performance exceptionnelle, non affectée par l’utilisation de modèles de conception (peut aussi être utilisé pour l’hébergement statique !).

Sécuriser les données sur S3

  • Les nouveaux buckets sont privés et protégés par défaut – vous pouvez changer cela lors de la configuration de votre bucket.
  • Si le principe du moindre privilège est respecté (le principe selon lequel vous accordez le minimum d’accès absolument nécessaire), vos données sont toujours sécurisées et les services IAM d’AWS offrent un contrôle granulaire pour vous permettre de l’implémenter.
  • Il existe de nombreuses autres fonctionnalités qui peuvent nous aider à sécuriser nos buckets et objets comme le blocage de l’accès public, la définition de politiques de bucket, les listes de contrôle d’accès, les points d’accès S3, les URL pré-signées et AWS Trusted Advisor.

Chiffrement sur S3

  • Côté serveur, S3 chiffre les données par défaut en utilisant des clés AES-256. Cependant, ce chiffrement peut être configuré au niveau du bucket pour être géré soit via AWS KMS (Key Management Service), soit en utilisant nos propres clés.
  • Côté client, il revient au développeur/client de chiffrer les données avant/après leur transmission vers/depuis AWS.
  • Les données en transit peuvent être chiffrées en utilisant SSL/TLS et HTTPS.

Quels types de solutions de stockage sont fournis par S3 ?

S3 offre 8 différents types de solutions de stockage que vous pouvez choisir selon vos besoins :

1. S3 Standard

Le stockage polyvalent pour les données actives fréquemment consultées. Les objets peuvent être récupérés en millisecondes. Il est conçu pour une faible latence, une haute disponibilité et un haut débit. Cela le rend idéal pour la distribution de contenu.

2. S3 Standard – Infrequent Access (S3-IA)

Un service de stockage de niveau inférieur pour les données moins fréquemment consultées (par exemple, mensuellement) tout en offrant des temps de récupération en millisecondes. Bien que le coût de stockage par Go soit plus bas, il y a un coût de récupération par Go. Cela peut être utile pour des solutions de stockage à long terme comme les sauvegardes et la reprise après sinistre.

3. S3 One Zone – Infrequent Access

Une solution de stockage lorsque vous n’êtes pas très préoccupé par la redondance des données et lorsque les objets ne sont pas consultés très souvent – toutefois, lorsqu’ils sont nécessaires, nous pouvons y accéder rapidement. Ce niveau peut offrir jusqu’à 20 % d’économies par rapport à S3-IA. Il peut être idéal pour des sauvegardes secondaires.

Le niveau Glacier est une solution de stockage à moindre coût qui peut être utilisée pour l’archivage :

4. S3 Glacier – Instant Retrieval

Le stockage le moins cher pour des données archivées à long terme, avec des vitesses de récupération en millisecondes. Nous pouvons économiser jusqu’à 68 % par rapport à S3-IA. Cela pourrait être idéal pour des données qui ne sont consultées qu’aussi rarement qu’une fois par trimestre.

5. S3 Glacier – Flexible Retrieval

C’est une solution d’archivage durable et à faible coût avec 3 niveaux de récupération – accéléré (1 à 5 minutes), standard (3 à 5 heures) et en vrac (12 heures). Comme il est sécurisé, durable et peu coûteux, cela le rend idéal pour des solutions nécessitant un apprentissage ou une référence à des données au repos.

6. S3 Glacier – Deep Archive

C’est la solution de stockage statique la moins chère offerte par AWS pour l’archivage de données, avec un coût aussi bas que 1 $ par To par mois. Il y a 2 niveaux de récupération – standard (12 heures) et en vrac (48 heures). Cela peut être idéal pour des solutions de stockage très rarement consultées (par exemple, lorsque les données doivent être consultées une fois par an).

Presque fini ! Il reste juste quelques solutions qui pourraient vous intéresser :

7. S3 Intelligent Tiering

Déplace automatiquement les objets entre des niveaux d’accès optimisés en fonction des coûts et offre des économies automatiques. Cela peut être particulièrement utile lorsque vous souhaitez optimiser les coûts de stockage en fonction des modèles d’accès. Alternativement, nous pouvons aussi configurer manuellement des règles pour déplacer automatiquement des objets entre différents niveaux de stockage afin d’optimiser nos coûts.

8. S3 on Outposts

C’est un service unique d’AWS qui fournit un service sur site pouvant être nécessaire pour le traitement local des données ou des exigences réglementaires.

L’image ci-dessous (Crédit : AWS Docs @ Object Storage Classes – Amazon S3) résume et offre quelques informations :

Comment mettre des données dans S3 ?

Maintenant que nous comprenons les différentes solutions de stockage fournies par AWS, nous pouvons explorer diverses façons d’intégrer nos données dans AWS :

Nous pouvons mettre des données dans AWS en utilisant la console (Web), la ligne de commande (CLI) et les SDK (plusieurs langages comme Java, Python, Go, JavaScript, etc. sont pris en charge). Des fonctionnalités comme le téléchargement multipart (découper des fichiers en plusieurs parties lors du téléversement) et S3 Transfer Acceleration (utilisant des nœuds de périphérie pour accélérer la vitesse de transfert) peuvent être utilisées pour de meilleurs résultats.

Lorsque vous souhaitez transférer des données à l’échelle de l’entreprise, nous avons des solutions comme AWS Snowball (plusieurs téraoctets), AWS Snowmobile (jusqu’à 100 pétaoctets).

Et voilà – cela conclut mon blogue sur S3 – j’espère que vous êtes emballés de l’essayer ! N’oubliez pas d’explorer les ressources sur https://docs.aws.amazon.com/s3/ si vous êtes bloqués et n’hésitez pas à me contacter à sdave@dal.ca pour partager votre opinion ou vos suggestions. Gardez un œil ouvert pour mon prochain blogue !