2016-03-10 10 views
10

Da una VM in GCE, ho fatto la seguente403 "Richiesta aveva scopi di autenticazione insufficienti" durante grappolo contenitore gcloud get-credenziali

gcloud auth activate-service-account --key-file <blah> 
# "blah" is a service account key file (JSON) I generated from the web interface 
gcloud config set project <project-name> 
gcloud config set compute/zone <zone-name> 
gcloud set container/cluster <cluster-name> 

Poi, quando ho provato a correre

gcloud container clusters get-credentials <cluster-name> 

e venuto a mancare con il messaggio di errore:

Error message: "ERROR: (gcloud.container.clusters.get-credentials) ResponseError: code=403, message=Request had insufficient authentication scopes."

la VM è sulla stessa rete del cluster GKE. Ho provato la stessa cosa, con lo stesso file chiave dell'account di servizio da una macchina esterna a GCE, contro un cluster GKE sulla rete "predefinita" ed è riuscito ...

Si prega di avvisare.

risposta

19

Per utilizzare l'API di Google Kubernetes Engine da una macchina virtuale GCE è necessario aggiungere l'ambito della piattaforma cloud ("https://www.googleapis.com/auth/cloud-platform") alla macchina virtuale quando viene creata.

+0

come fare? – twoface88

+2

Se si utilizza la riga di comando si farebbe qualcosa come 'istanze di calcolo di gcloud creare NAME --scopes = https: // www.googleapis.com/auth/cloud-platform'. Se si sta utilizzando la console cloud, quando si crea una VM cercare la sezione "Accesso Identità e API" e selezionare "Consenti accesso completo a tutte le API Cloud". –

+0

@RobertBailey Grazie per le istruzioni, davvero utile. Ma, perché dobbiamo fornire pieno accesso a tutte le API del cloud? Qualche idea su quale API elencata nella console cloud abilita le operazioni di CloudKMS? –

Problemi correlati