web-dev-qa-db-fra.com

Comment transférer des données directement d'un projet Google Cloud Storage à un autre?

Comment transférer des données directement d'un projet Google Cloud Storage à un autre? Je comprends comment télécharger et comment télécharger, mais je souhaite transférer directement entre projets.

15
HannahS

Pour copier un seul objet d'un emplacement GCS à un autre, vous pouvez utiliser la commande copy. Cela peut être effectué à partir de nos API publiques ou de notre client en ligne de commande, gsutil.

Avec gsutil, la commande est simplement:

gsutil cp gs://bucket1/obj gs://bucket2/obj2

Edit: Depuis que j'ai écrit ceci, le service de transfert Google Cloud est devenu disponible, ce qui est utile pour copier des compartiments entiers entre des projets GCS ou pour copier des compartiments entiers de S3 vers GCS. Vous pouvez en savoir plus ici: https://cloud.google.com/storage/transfer/

13
Brandon Yarbrough

Ouvrez la console Web Stockage> Transfert pour créer un nouveau transfert.

Sélectionnez le compartiment source à partir duquel vous souhaitez copier. Tout comme cratervale menitoned juste au-dessus ici, les identificateurs de seau sont globalement unique (c'est la clé de la solution ). Ainsi, une fois que vous arrivez à la partie de destination du formulaire de transfert, vous pouvez écrire/coller le compartiment cible directement dans sa saisie de texte. Même si ce seau provient d'un autre projet. Il vous montrera une icône verte une fois que la cible a été vérifiée comme seau existant. Vous pouvez continuer le formulaire pour finaliser votre configuration.

Une fois que vous avez commencé le transfert à partir du formulaire, vous pouvez suivre sa progression en appuyant sur le bouton d'actualisation en haut de la console.

5
Martin van Dam

Les noms de compartiment dans GCS sont uniques dans tous vos projets. Par exemple, Project1 et Project2 ne peuvent pas avoir tous les deux des compartiments nommés "images", bien qu'ils puissent avoir chacun des dossiers nommés "images".

Cela peut sembler trompeur car gsutil peut vous demander de sélectionner un projet avec lequel travailler. Pour la commande de copie, cette sélection peut être ignorée.

gsutil cp gs://bucket1/obj gs://bucket2/obj

vous permettra de copier un objet dans Project1/bucket1 vers Project2/bucket2

4
cratervale

Utiliser Google Cloud Shell 

Aller au premier projet qui a le seau que vous vouliez copier 
gcloud config set project [PROJECT1 ID]

Fait un répertoire, vous pouvez monter ce seau à 
mkdir test

Montez le seau dans le répertoire 
gcsfuse [BUCKET1] test

Basculez vers le deuxième projet, qui contenait le compartiment que vous vouliez peupler 
gcloud config set project [PROJECT2 ID]

Copiez le contenu du nouveau dossier dans le deuxième compartiment. 
gsutil cp -r /home/user/test gs://[BUCKET2]

1
mflores