
Tengo una cuenta de servicio que tiene permisos para hacer todo tipo de cosas en mi proyecto de GCP y una canalización de Jenkins que se ejecuta todas las noches y cierra uno de mis entornos de GKE.
Hace unos días comencé a notar fallas aleatorias al obtener credenciales para el clúster, mientras ejecutaba la misma canalización nuevamente.
Tengo el siguiente bloque de código:
gcloud auth activate-service-account --key-file=****
gcloud container clusters get-credentials integration-cluster --zone europe-west1-c --project integration-project
El caso es que las noches falla veo el siguiente error:
00:00:45 Activated service account credentials for: [[email protected]]
00:00:46 Fetching cluster endpoint and auth data.
00:00:46 ERROR: (gcloud.container.clusters.get-credentials) ResponseError: code=403, message=Required "container.clusters.get" permission(s) for "projects/integration-project/zones/europe-west1-c/clusters/integration-cluster".
como la cuenta de servicio si faltan permisos en el proyecto, pero nada ha cambiado y volver a ejecutar funciona.
¿Cuál puede ser la razón de esto? Parece un error pero... ¿dónde? Estoy usando ahora Google Cloud SDK 319.0.0.
10x
Respuesta1
El mensaje de error message=Required "container.clusters.get" permission(s)
significa que su cuenta de servicio no tiene container.clusters.get
permiso.
Según la documentaciónComprender los rolessecciónRoles del motor Kubernetesroles roles/container.clusterViewer
y roles/container.clusterAdmin
contienen este permiso.
Para resolver este problemapuede otorgarle a su cuenta de servicio una función que contenga permiso container.clusters.get
. La función de IAM con menos privilegios que proporciona este permiso es roles/container.clusterViewer
. Para obtener más detalles, consulte la documentación.Comprender las cuentas de serviciosecciónOtorgar acceso a cuentas de servicio.
Si su cuenta de servicio tiene todos los permisos requeridospuedes presentar unainforme de problemaenRastreador de problemas públicos de Googleo alcanzarSoporte de Google Cloud.