Importer et télécharger des objets de stockage dans des projets

Cette page explique comment importer et télécharger des objets vers et depuis des buckets de stockage isolés de Google Distributed Cloud (GDC).

Avant de commencer

Un espace de noms de projet gère les ressources de bucket dans le serveur de l'API Management. Vous devez disposer d'un projet pour utiliser des buckets et des objets.

Vous devez également disposer des autorisations de bucket appropriées pour effectuer l'opération suivante. Consultez Accorder l'accès à un bucket.

Consignes de dénomination des objets

Suivez les consignes ci-dessous pour nommer des objets :

  • Utilisez des caractères UTF-8 lorsque vous nommez des objets.
  • Le nom doit comporter entre 1 et 55 caractères.
  • N'incluez pas d'informations permettant d'identifier l'utilisateur.

Importer des objets dans des buckets de stockage

Console

  1. Dans le menu de navigation, cliquez sur Object Storage (Stockage d'objets).
  2. Cliquez sur le nom du bucket dans lequel vous souhaitez importer l'objet.
  3. Facultatif : Si vous souhaitez créer un dossier pour stocker votre objet, cliquez sur Create folder (Créer un dossier) > saisissez un nom de dossier > cliquez sur Create (Créer).
  4. Cliquez directement sur Upload file (Importer un fichier) ou accédez au dossier que vous venez de créer, puis cliquez sur Upload file (Importer un fichier).
  5. Sélectionnez le fichier souhaité, puis cliquez sur Open (Ouvrir).
  6. Attendez le message de confirmation indiquant que l'importation a réussi.

gdcloud

Pour importer un objet, exécutez les commandes suivantes :

gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
gdcloud storage mv s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME

Les commandes suivantes nécessitent le FULLY_QUALIFIED_BUCKET_NAME. Utilisez la commande GET ou DESCRIBE de la section Afficher la configuration du bucket pour obtenir le nom de bucket complet.

La commande suivante importe tous les fichiers texte du répertoire local dans un bucket :

gdcloud storage cp *.txt s3://FULLY_QUALIFIED_BUCKET_NAME

La commande suivante importe plusieurs fichiers du répertoire local dans un bucket :

gdcloud storage cp abc1.txt abc2.txt s3://FULLY_QUALIFIED_BUCKET_NAME

Pour importer un dossier dans un bucket, utilisez l'option --recursive pour copier une arborescence de répertoires complète. La commande suivante importe l'arborescence de répertoires dir :

gdcloud storage cp DIRECTORY_NAME s3://FULLY_QUALIFIED_BUCKET_NAME --recursive

Effectuez des importations en plusieurs parties pour les objets volumineux ou utilisez-les automatiquement lorsque vous devez importer un fichier de plus de 15 Mo. Dans ce cas, le fichier est divisé en plusieurs parties de 15 Mo chacune. La dernière partie est plus petite. Chaque partie est importée séparément et reconstruite à la destination une fois le transfert terminé.

Si l'importation d'une partie échoue, vous pouvez la redémarrer sans affecter les autres parties déjà importées.

Deux options sont liées aux importations en plusieurs parties :

  • --disable-multipart : désactive les importations en plusieurs parties pour tous les fichiers.
  • --multipart-chunk-size-mb=SIZE : définit la taille de chaque partie d'une importation en plusieurs parties.

Les fichiers dont la taille est supérieure à SIZE sont automatiquement importés en plusieurs parties multithread. Les fichiers plus petits sont importés à l'aide de la méthode traditionnelle. SIZE est exprimée en mégaoctets. La taille de partie par défaut est de 15 Mo. La taille de partie minimale autorisée est de 5 Mo et la taille maximale est de 5 Go.

Télécharger des objets à partir de buckets de stockage

Console

  1. Dans le menu de navigation, cliquez sur Object Storage (Stockage d'objets).
  2. Cliquez sur le nom du bucket contenant les objets.
  3. Cochez la case à côté du nom de l'objet à télécharger.
  4. Cliquez sur Download (Télécharger).

gdcloud

Pour obtenir des objets à partir du bucket :

gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/OBJECT LOCAL_FILE_TO_SAVE

Pour télécharger tous les fichiers texte d'un bucket dans votre répertoire actuel :

gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/*.txt .

Pour télécharger le fichier texte abc.txt d'un bucket dans votre répertoire actuel :

gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt .

Pour télécharger une ancienne version du fichier, listez d'abord toutes les versions du fichier :

gdcloud storage ls s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt --all-versions

Exemple de résultat :

s3://my-bucket/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND
s3://my-bucket/abc.txt#ODgzNEYzQ0MtMzEzRS0xMUVFLTk2NEItMjI1MTAwQkJENjND
s3://my-bucket/abc.txt#ODNCNDEzNzgtMzEzRS0xMUVFLTlDOUMtQzRDOTAwQjg3RTg3

Ensuite, téléchargez une version spécifique du fichier texte abc.txt du bucket dans votre répertoire actuel :

gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND .

Utiliser une AEADKey personnalisée

Pour une personnalisation plus poussée, vous pouvez créer votre propre AEADKey et l'utiliser directement lors du chiffrement des objets dans votre bucket. Vous disposez ainsi d'un contrôle total sur la clé de chiffrement, en contournant la clé par défaut. Suivez Créer une clé pour créer une AEADKey et assurez-vous qu'elle se trouve dans le même Namespace que le bucket que vous comptez utiliser. Ensuite, chaque fois que vous envoyez la requête, assurez-vous que le HEADER est configuré avec x-amz-server-side-encryption: SSE-KMS et x-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME.