Utiliser Amazon S3 avec Amazon EC2 - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utiliser Amazon S3 avec Amazon EC2

Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets qui offre une évolutivité, une disponibilité des données, une sécurité et des performances de pointe. Vous pouvez utiliser Amazon S3 pour stocker et récupérer n'importe quelle quantité de données pour différents cas d'utilisation, tels que les lacs de données, les sites Web, les sauvegardes et les analyses de mégadonnées, à partir d'une instance Amazon EC2 ou de n'importe où sur Internet. Pour plus d'informations, consultez Qu'est-ce qu'Amazon S3 ?

Les objets sont les entités fondamentales stockées dans Amazon S3. Chaque objet stocké dans Amazon S3 se trouve dans un compartiment. Les compartiments organisent l’espace de noms Amazon S3 au plus haut niveau et identifient le compte qui assure ce stockage. Les compartiments Amazon S3 sont similaires aux noms de domaine Internet. Les objets stockés dans les compartiments ont une valeur de clé unique et sont récupérés à l’aide d’une URL. Par exemple, si un objet avec la valeur de clé /photos/mygarden.jpg est stocké dans le compartiment DOC-EXAMPLE-BUCKET1, il est adressable à l’aide de l’URL https://DOC-EXAMPLE-BUCKET1.s3.amazonaws.com/photos/mygarden.jpg. Pour plus d'informations, consultez Comment fonctionne Amazon S3.

Exemples d'utilisation :

Au vu des avantages qu'offre Amazon S3 pour le stockage, vous pouvez décider d'utiliser ce service pour stocker des fichiers et des ensembles de données à utiliser avec des instances EC2. Vous pouvez déplacer des données entre Amazon S3 et vos instances de différentes façons. En plus des exemples présentés ci-après, vous pouvez utiliser de nombreux outils conçus par des utilisateurs pour accéder à vos données dans Amazon S3 depuis votre ordinateur ou votre instance. Certains des plus courants sont présentés dans les forums AWS .

Si vous y êtes autorisé, vous pouvez copier un fichier vers ou depuis Amazon S3 et votre instance en utilisant l’une des méthodes suivantes.

GET ou wget

Note

Cette méthode ne fonctionne que pour les objets publics. Si l’objet n’est pas public, vous recevez un message ERROR 403: Forbidden. Si vous recevez cette erreur, vous devez utiliser la console Amazon S3 AWS CLI, AWS l'API, le AWS SDK ou AWS Tools for Windows PowerShell, et vous devez disposer des autorisations requises. Pour plus d’informations, consultez Identity and Access Management dans Amazon S3 et Téléchargement d’un objet dans le Guide de l’utilisateur Amazon S3.

L’utilitaire wget est un client HTTP et FTP qui vous permet de télécharger des objets publics depuis Amazon S3. Il est installé par défaut dans Amazon Linux et la plupart des autres distributions, et est disponible en téléchargement sur Windows. Pour télécharger un objet Amazon S3, utilisez la commande suivante, en remplaçant l’URL par celle de l’objet à télécharger.

[ec2-user ~]$ wget https://my_bucket.s3.amazonaws.com/path-to-file
AWS Command Line Interface

Le AWS Command Line Interface (AWS CLI) est un outil unifié permettant de gérer vos AWS services. AWS CLI permet aux utilisateurs de s’authentifier et de télécharger des éléments restreints depuis Amazon S3, et également de charger des éléments. Pour plus d’informations notamment sur l’installation et la configuration des outils, consultez la page détaillée sur l’AWS Command Line Interface.

La commande aws s3 cp est similaire à la commande Unix cp. Vous pouvez copier des fichiers depuis Amazon S3 vers votre instance, copier des fichiers depuis votre instance vers Amazon S3 et même copier des fichiers d’un emplacement Amazon S3 vers un autre.

Utilisez la commande suivante pour copier un objet depuis Amazon S3 vers votre instance.

[ec2-user ~]$ aws s3 cp s3://my_bucket/my_folder/my_file.ext my_copied_file.ext

Utilisez la commande suivante pour copier un objet depuis votre instance vers Amazon S3.

[ec2-user ~]$ aws s3 cp my_copied_file.ext s3://my_bucket/my_folder/my_file.ext

La commande aws s3 sync peut synchroniser un compartiment Amazon S3 entier vers un répertoire local. Cela peut être utile pour télécharger un ensemble de données et conserver la copie locale up-to-date avec la télécommande. Si vous disposez des autorisations adéquates sur le compartiment Amazon S3, vous pouvez renvoyer votre répertoire local sur le cloud lorsque vous avez terminé, en inversant les emplacements source et de destination dans la commande.

Utilisez la commande suivante pour télécharger un bucket Amazon S3 entier vers un répertoire local sur votre instance.

[ec2-user ~]$ aws s3 sync s3://remote_S3_bucket local_directory
API Amazon S3

Si vous êtes un développeur, vous pouvez utiliser une API pour accéder aux données dans Amazon S3. Pour en savoir plus, consultez Guide de l’utilisateur Amazon Simple Storage Service. Vous pouvez utiliser cette API et ses exemples pour développer votre application et l’intégrer avec d’autres API et SDK, tels que l’interface Python Boto.