2017-09-13 2 views
1

Je suis tombé sur un mur de briques avec ceci. J'ai accordé un accès complet aux deux instances: Autoriser un accès complet à toutes les API Cloud.Copie de fichiers entre instances à l'aide de gcloud compute scp

J'utilise la commande suivante :

gcloud compute scp [myinstancename]:/var/www /var/www --recurse --zone europe-west1-d 

ou

gcloud compute scp [email protected][myinstancename]:/var/www /var/www --recurse --zone europe-west1-d 

Google Cloud Network Firewall a SSH activé.

Peu importe ce que j'ai essayé, je reçois l'erreur suivante :

Permission denied (publickey, gssapi-KeyEx, gssapi-avec-micro).

Merci d'avance.

Répondre

1

Vous devez vérifier plusieurs choses:

  • Avez-vous ajouté/clés ssh edtited à l'instance ou métadonnées projet? Si oui, assurez-vous que vous avez le fichier de clé publique correcte dans le répertoire de l'utilisateur de votre machine locale:

.ssh/google_compute_engine

  • Pouvez-vous ssh à l'instance en utilisant la commande gcloud?

    gcloud compute ssh [instance_name] 
    

Vous devez avoir installé le sdk gcloud, la voie officielle pour l'installer est détaillée dans Google Cloud docs ici:

Installing Cloud SDK

Si vous n'exécuté une commande gcloud dans votre machine locale, vous devez l'initialiser en exécutant:

gcloud init 
  • Si vous ne pouvez toujours pas ssh à l'instance de votre machine locale, assurez-vous que vous avez le fichier de clé publique dans le répertoire de l'utilisateur:

Il serait utile si vous exécutez le ssh gcloud avec des drapeaux de débogage:

gcloud compute ssh [instance_name] --log-http --verbosity debug 
  • quota API Compute Engine. Habituellement, cela ne devrait pas être changé, mais il se peut que quelqu'un d'autre par erreur ait limité les requêtes max à l'API.