Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Amazon Web Services

Création d'un site Web de partage de médias - Partie 1 : téléchargement de médias (Français) | Building a Media Sharing Website - Part 1: Media Upload (French)

Amazon Web Services and Amazon via AWS Skill Builder

Overview

Présentation de l’atelier

Dans cet atelier, vous apprenez à déployer un site web de partage de photos en utilisant Amazon Simple Storage Service (Amazon S3) pour le stockage, Amazon DynamoDB pour la base de données et Amazon Elastic Compute Cloud (Amazon EC2) pour héberger une application web.

Dans cet atelier, vous créez l’architecture de base du système, en fournissant des fonctionnalités de base telles que la navigation et le téléchargement de contenu. Dans le cadre de cet atelier, le contenu média se limite aux images, mais les concepts abordés ici s’appliquent également à d’autres types de médias tels que les documents (PDF, RTF, présentations, etc.), la musique, les vidéos, etc. Le système fournit également une interface web permettant aux utilisateurs de parcourir et de stocker des images.

Objectifs

À la fin de cet atelier, vous serez en mesure d’effectuer les opérations suivantes :

  • créer un nouveau compartiment Amazon S3 pour stocker vos fichiers multimédias ;
  • créer une table DynamoDB pour stocker vos métadonnées de fichiers multimédias ;
  • lancer une nouvelle instance EC2 pour exécuter votre serveur web ;
  • tester le déploiement.

Prérequis de l’atelier

Pour réussir cet atelier, vous devez connaître les bases de la navigation dans la Console de gestion AWS et être capable de modifier des scripts à l’aide d’un éditeur de texte.

Durée

Cet atelier dure environ 60 minutes.

Signification des icônes

Cet atelier utilise de nombreuses icônes différentes pour attirer l’attention sur différents types d’instructions et de remarques. La liste suivante explique la raison d’être de chaque icône :

  • Remarque : un indice, une directive ou un conseil important

Présentation de la solution

Stockage de médias

Les images peuvent être stockées sur des volumes Amazon Elastic Block Store, mais vous devez mettre en service la capacité à l’avance et gérer l’opération de mise à l’échelle verticale de cette couche de stockage en ajoutant des volumes. De plus, ces volumes doivent être joints à une instance EC2 pour servir le contenu via HTTP. Cela crée un point de défaillance unique dans le système si les données ne sont pas répliquées et servies à partir d’une autre instance.

Une meilleure approche consiste à utiliser Amazon S3 comme référentiel de stockage pour les fichiers multimédias. Amazon S3 offre une durabilité élevée des données et la possibilité de servir du contenu via HTTP. Il n’y a pas de limite au nombre d’objets pouvant être stockés dans un compartiment Amazon S3 et aucune variation des performances, que vous utilisiez plusieurs compartiments ou seulement quelques-uns. Vous pouvez également stocker tous vos objets dans un seul compartiment, ou les répartir dans différents compartiments.

Dans cet atelier, vous allez créer la solution suivante :

Lorsque l’utilisateur télécharge une image, le serveur web la reçoit et crée une miniature. Il charge ensuite l’image et la miniature dans le compartiment S3 et insère les métadonnées de l’image dans la table DynamoDB.

Alors qu’Amazon S3 et DynamoDB sont à la fois des systèmes pouvant être mis à l’échelle et tolérants aux pannes, votre serveur web s’exécutant sur une seule instance EC2 est clairement un point de défaillance unique (si l’application web échoue, le système n’est pas accessible et ne peut pas récupérer) et un goulot d’étranglement (avec une charge importante de requêtes entrantes, le système peut même devenir indisponible).

Voici une brève présentation de chacun des services utilisés dans le scénario de cet atelier.

Remarque : si vous connaissez déjà ces services AWS, vous pouvez ignorer l’aperçu du service et passer directement à la section Start lab.

Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) est un service web qui fournit une capacité de calcul redimensionnable dans le cloud. Destiné aux développeurs, il est conçu pour faciliter l’accès aux ressources informatiques à l’échelle du Web. L’interface de services Web simple d’Amazon EC2 vous permet d’obtenir et de configurer la capacité avec un minimum de friction. Elle vous offre le contrôle total de vos ressources de calcul et vous permet d’exploiter l’environnement de calcul reconnu d’Amazon. Amazon EC2 permet d’obtenir et de démarrer de nouvelles instances de serveurs en quelques minutes, ce qui vous permet d’augmenter ou de diminuer rapidement leurs capacités en fonction de l’évolution de vos besoins de calcul. Amazon EC2 transforme l’aspect financier de l’informatique en vous permettant de ne payer que pour la capacité que vous utilisez réellement.

Amazon EC2 vous permet d’augmenter ou de réduire vos capacités en quelques minutes, au lieu de plusieurs heures, voire plusieurs jours. Vous pouvez mettre en service une instance de serveur, comme des centaines ou même des milliers en même temps. Bien entendu, dans la mesure où tout est contrôlé par des API de service Web, la taille de votre application peut s’adapter automatiquement en fonction des besoins.

Vous avez le contrôle total sur vos instances. Vous disposez d’un accès racine à chacune de vos instances et vous pouvez interagir avec elles comme vous le feriez avec n’importe quelle machine. Vous pouvez arrêter votre instance tout en conservant les données sur votre partition de démarrage, puis redémarrer cette instance en utilisant des API de service Web. Les instances peuvent être redémarrées à distance en utilisant des API de service Web. Vous pouvez également accéder à la sortie de la console de vos instances.

Vous avez le choix entre plusieurs types d’instances, systèmes d’exploitation et packages de logiciels. Amazon EC2 vous permet de sélectionner la configuration de la mémoire, de la CPU, du stockage d’instance et de la taille de partition de démarrage qui convient le mieux par rapport au système d’exploitation et à l’application choisis. Parmi les systèmes d’exploitation proposés, vous retrouvez, par exemple, de nombreuses distributions de Linux et Microsoft Windows Server.

Pour plus d’information on Amazon EC2, consultez le lien : https://aws.amazon.com/ec2/

DynamoDB

DynamoDB est un service de base de données NoSQL rapide et entièrement géré, qui simplifie et rentabilise le stockage et l’extraction de n’importe quel volume de données, tout en vous permettant de répondre aux demandes, quelle que soit l’importance du trafic. Grâce à son débit garanti et à une latence de quelques millisecondes seulement, Amazon DynamoDB convient parfaitement à de nombreuses applications telles que les jeux, les technologies publicitaires ou encore les applications mobiles.

DynamoDB permet un dimensionnement du débit et du stockage en toute transparence, via une API et une console de gestion facile à utiliser, qui vous permettent de réaliser aisément une mise à l’échelle ascendante ou descendante afin de répondre à vos besoins. Pour bon nombre de nos clients, il ne leur aura fallu que quelques minutes pour créer, en un clic, des déploiements DynamoDB capables de gérer des milliards de requêtes de base de données par an.

Les tables DynamoDB n’ont pas de schémas fixes et chaque élément peut avoir un nombre d’attributs différent. Différents types de données ajoutent de la richesse au modèle de données. Des index secondaires permettent plus de flexibilité quant aux requêtes que vous pouvez exécuter, sans nuire aux performances.

Les capacités en termes de performances, fiabilité et sécurité sont intégrées, avec un stockage SSD et une réplication automatique sur 3 zones distinctes. Amazon DynamoDB utilise des méthodes cryptographiques éprouvées pour authentifier les utilisateurs de manière sécurisée et empêcher tout accès non autorisé aux données.

Pour plus d’information on Amazon EC2, consultez le lien : https://aws.amazon.com/dynamodb/

Amazon S3

Amazon S3 est un service de stockage pour Internet. Destiné aux développeurs, il est conçu pour faciliter l’accès aux ressources informatiques à l’échelle du Web.

Amazon S3 offre une simple interface de services Web qui vous permet de stocker et d’extraire des données, à tout moment et depuis n’importe quel accès Internet, quel qu’en soit le volume. Il permet aux développeurs d’accéder à la même infrastructure hautement évolutive, fiable, sûre, rapide, et peu coûteuse qu’Amazon utilise pour faire fonctionner son propre réseau mondial de sites. Ce service vise à maximiser les avantages d’échelle et à en faire bénéficier les développeurs.

Amazon S3 se base sur l’idée que la qualité de stockage sur Internet devrait être considérée comme acquise. Ainsi les développeurs n’auront pas à s’inquiéter de la façon dont ils stockeront leurs données, si elles sont en sécurité, ou s’ils ont assez de stockage disponible. Ils n’auront pas de coûts initiaux d’installation de leur propre solution de stockage, et de coûts permanents de maintien et de mise à l’échelle de leurs serveurs de stockage. La fonctionnalité d’Amazon S3 est simple et robuste : stockez n’importe quelle quantité de données de manière économique et sécurisée, tout en assurant leur disponibilité. Grâce à Amazon S3, les développeurs peuvent se concentrer sur l’innovation, plutôt que de chercher comment stocker leurs données.

Pour plus d’informations sur Amazon S3, reportez-vous à : http://aws.amazon.com/s3/

Reviews

Start your review of Création d'un site Web de partage de médias - Partie 1 : téléchargement de médias (Français) | Building a Media Sharing Website - Part 1: Media Upload (French)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.