Administra las API y bibliotecas de Cloud

El acceso de manera programática a los productos y servicios de Google Cloud requiere el uso de las API de Cloud. Estas API exponen una interfaz JSON REST simple que puedes llamar a través de bibliotecas cliente.

Con Cloud Code, puedes acceder a esta lista consolidada de servicios de Google Cloud junto con sus bibliotecas cliente y documentación correspondientes, explorar y habilitar las API de Cloud y agregar bibliotecas cliente al proyecto, todo desde tu IDE.

Explora las API de Cloud

Para explorar todas las API de Google Cloud disponibles en tu IDE, sigue estos pasos:

  1. Haz clic en el ícono Ícono de las API de Cloud de Cloud Code de Cloud Code en la barra de actividad.
  2. Expande el árbol del Explorador de API de Google Cloud para ver todas las API disponibles. El explorador agrupa las API de Cloud por categoría.
  3. Captura de pantalla que muestra la lista de las API de Cloud que se muestran en el explorador de vista de árbol.

  4. Haz clic en una API para ver más detalles, como el nombre del servicio, el estado, las instrucciones de instalación de sus bibliotecas cliente correspondientes y la documentación relevante.

Habilita las API de Cloud

A fin de habilitar rápidamente las API de Cloud para un proyecto mediante la página de detalles de la API, sigue estos pasos:

  1. En la página de detalles de la API de Cloud, elige un proyecto para el que desees habilitar la API de Cloud.
  2. Captura de pantalla que muestra más detalles sobre la API de Cloud seleccionada

  3. Haz clic en el botón Habilitar API.

    Una vez que se haya habilitado la API, verás un mensaje que confirma este cambio.

Agrega bibliotecas cliente al proyecto

Además de explorar y habilitar las API de Cloud mediante Cloud Code, también puedes agregar una biblioteca cliente específica del lenguaje al proyecto. Tendrás que instalarla. La página de detalles de la API contiene instrucciones de instalación para cada lenguaje.

Captura de pantalla que muestra las instrucciones de instalación para una biblioteca cliente correspondiente a una API de Cloud

Configura la autenticación

Después de habilitar las API necesarias y agregar las bibliotecas cliente necesarias, debes configurar tu aplicación para que se autentique de forma correcta. La configuración depende del tipo de desarrollo y de la plataforma en la que se ejecute.

Una vez que completes los pasos de autenticación relevantes, tu aplicación puede autenticarse y estará lista para implementarse.

Desarrollo local

Máquina local

  1. Cloud Code garantiza que tengas configuradas tus credenciales predeterminadas de la aplicación (ADC) si accediste a Google Cloud a través del IDE.
    Si accediste a Google Cloud fuera de tu IDE (por ejemplo, a través de la herramienta de línea de comandos de gcloud), debes ejecutar gcloud auth login --update-adc para configurar tus ADC. Esto también permite que las bibliotecas cliente de Google Cloud encuentren las ADC con las que se podrá autenticar.

minikube

  1. Cloud Code garantiza que tengas configuradas tus credenciales predeterminadas de la aplicación (ADC) si accediste a Google Cloud a través del IDE.
    Si accediste a Google Cloud fuera de tu IDE (por ejemplo, a través de la herramienta de línea de comandos de gcloud), debes ejecutar gcloud auth login --update-adc para configurar tus ADC. Esto también permite que Minikube encuentre tus ADC con las que te autenticarás.
  2. Inicia Minikube con minikube start --addons gcp-auth. Esto activa tus ADC en los Pods. Si deseas obtener una guía detallada de autenticación de Minikube para Google Cloud, consulta los documentos de gcp-auth de Minikube.

Otros clústeres locales de K8s

  1. Cloud Code garantiza que tengas configuradas tus credenciales predeterminadas de la aplicación (ADC) si accediste a Google Cloud a través del IDE.
    Si accediste a Google Cloud fuera de tu IDE (por ejemplo, a través de la herramienta de línea de comandos de gcloud), debes ejecutar gcloud auth login --update-adc para configurar tus ADC.
  2. Activa tu directorio ~/.config/gcloud local en tus pods de Kubernetes mediante la edición de los manifiestos de implementación para que las bibliotecas cliente de Google Cloud puedan encontrar tus credenciales. También deberás configurar tu ID del proyecto de Google Cloud como una variable de entorno llamada GOOGLE_CLOUD_PROJECT. Ejemplo de configuración de Pod de Kubernetes:
    apiVersion: v1
    kind: Pod
    metadata:
      name: my-app
      labels:
        name: my-app
    spec:
      containers:
      - name: my-app
        image: gcr.io/google-containers/busybox
        ports:
          - containerPort: 8080
        env:
        - name: GOOGLE_CLOUD_PROJECT
          value: my-project-id
        volumeMounts:
          - mountPath: /root/.config/gcloud
            name: gcloud-volume
      volumes:
        - name: gcloud-volume
          hostPath:
            path: /path/to/home/.config/gcloud

Cloud Run

  1. Cloud Code garantiza que tengas configuradas tus credenciales predeterminadas de la aplicación (ADC) si accediste a Google Cloud a través del IDE.
    Si accediste a Google Cloud fuera de tu IDE (por ejemplo, a través de la herramienta de línea de comandos de gcloud), debes ejecutar gcloud auth login --update-adc para configurar tus ADC. Esto también permite que el entorno simulado local de Cloud Run encuentre tus ADC con el que puedas autenticarte.

Desarrollo remoto

Google Kubernetes Engine

Según el permiso de tu proyecto, puedes elegir cómo autenticar los servicios de Google Cloud en GKE:

  • (Solo desarrollo)
    1. Crea un clúster de GKE con la siguiente configuración:
      • Asegúrate de usar la cuenta de servicio que GKE usa de forma predeterminada, la cuenta de servicio predeterminada de Compute Engine y que los Permisos de acceso estén configurados en Permitir el acceso total a la API de IAM. todas las API de Cloud (ambas opciones se pueden acceder en la sección Grupos de nodos > Seguridad)
        Dado que la cuenta de servicio de Compute Engine está compartida por En todas las cargas de trabajo implementadas en tu nodo, este método aprovisiona en exceso los permisos y solo debe usarse para el desarrollo.
      • Asegúrate de que Workload Identity no esté habilitado en tu clúster (en la sección Clúster > Seguridad).
    2. Asigna las funciones necesarias a tu cuenta de servicio:
  • (Recomendado para la producción)
    1. Configura el clúster y la aplicación de GKE con Workload Identity para autenticar los servicios de Google Cloud en GKE. Esto asocia tu cuenta de servicio de Kubernetes con tu cuenta de servicio de Google.
    2. Configura tu implementación de Kubernetes para que haga referencia a la cuenta de servicio de Kubernetes mediante la configuración del campo .spec.serviceAccountName en tu archivo YAML de implementación de Kubernetes.
      Si trabajas en una app creada a partir de una plantilla de Cloud Code, este archivo se encuentra en la carpeta kubernetes-manifests.
    3. Si el servicio de Google Cloud al que intentas acceder requiere funciones adicionales, otórgales la cuenta de servicio de Google que usas para desarrollar tu app:

Cloud Run

  1. Si deseas crear una cuenta de servicio única para implementar tu aplicación de Cloud Run, navega a la página Cuentas de servicio y, luego, selecciona el proyecto en el que se almacena el secreto.

    Ir a la página Cuentas de servicio

  2. Haga clic en Crear cuenta de servicio.
  3. En el cuadro de diálogo Crear cuenta de servicio, ingresa un nombre descriptivo para la cuenta de servicio.
  4. Cambia el ID de cuenta de servicio por un valor único y reconocible y, luego, haz clic en Crear.
  5. Si el servicio de Google Cloud al que intentas acceder requiere funciones adicionales, otórgaleslas, haz clic en Continuar y, luego, en Listo.
  6. Para agregar tu cuenta de servicio a la configuración de implementación, sigue estos pasos:
    1. Elige el comando Cloud Run: Deploy mediante la barra de estado de Cloud Code.
    2. En la IU de implementación de Cloud Run, en Configuración de revisión, en el campo Cuenta de servicio, especifica la cuenta de servicio.
    Sección de configuración avanzada de revisión expandida en Cloud Run: campo de implementación y cuenta de servicio con el nombre de cuenta de servicio del formato service-account-name@project-name.iam.gserviceaccount.com

Cloud Run

Según el permiso de tu proyecto, puedes elegir cómo autenticar los servicios de Google Cloud en GKE:

  • (Solo desarrollo)
    1. Crea un clúster de GKE con la siguiente configuración:
      • Asegúrate de usar la cuenta de servicio que GKE usa de forma predeterminada, la cuenta de servicio predeterminada de Compute Engine y que los Permisos de acceso estén configurados en Permitir el acceso total a la API de IAM. todas las API de Cloud (ambas opciones se pueden acceder en la sección Grupos de nodos > Seguridad)
        Dado que la cuenta de servicio de Compute Engine está compartida por En todas las cargas de trabajo implementadas en tu nodo, este método aprovisiona en exceso los permisos y solo debe usarse para el desarrollo.
      • Asegúrate de que Workload Identity no esté habilitado en tu clúster (en la sección Clúster > Seguridad).
    2. Asigna las funciones necesarias a tu cuenta de servicio:
  • (Recomendado para la producción)
    1. Configura el clúster y la aplicación de GKE con Workload Identity para autenticar los servicios de Google Cloud en GKE. Esto asocia tu cuenta de servicio de Kubernetes con tu cuenta de servicio de Google.
    2. Para agregar tu cuenta de servicio a la configuración de implementación, sigue estos pasos:
      1. Elige el comando Cloud Run: Deploy mediante la barra de estado de Cloud Code.
      2. En la IU de implementación de Cloud Run, en Configuración de revisión, en el campo Cuenta de servicio, especifica la cuenta de servicio.
      Sección de configuración avanzada de revisión expandida en Cloud Run: campo de implementación y cuenta de servicio con el nombre de cuenta de servicio de Kubernetes con el formato service-account-name@project-name.iam.gserviceaccount.com
    3. Si el servicio de Google Cloud al que intentas acceder requiere funciones adicionales, otórgales la cuenta de servicio de Google que usas para desarrollar tu app:

Desarrollo remoto con Secret Manager habilitado

Si desarrollas una aplicación de forma remota, con una cuenta de servicio para la autenticación y tu aplicación usa secretos, debes completar algunos pasos adicionales además de la instrucciones de desarrollo remoto. Estos pasos asignan la función requerida a tu cuenta de servicio de Google para acceder a un secreto de Secret Manager específico:

  1. Abre la vista Ícono de Secret Manager Secret Manager y selecciona el secreto al que deseas acceder en tu código.

    Secret Manager en Cloud Code abierto con dos secretos enumerados

  2. Haz clic con el botón derecho en el secreto y selecciona Editar permisos en Cloud Console. Esto inicia la página de configuración de Secret Manager para ese secreto en tu navegador web.

    Clic con el botón derecho en el panel de Secret Manager

  3. En Cloud Console, haga clic en Permisos y, luego, en Agregar.

  4. En el campo Principales nuevos, ingresa el nombre de tu cuenta de servicio.

  5. En el campo Selecciona una función, elige la función Administrador y descriptor de acceso a Secretos.

  6. Haz clic en Guardar.

    La cuenta de servicio ahora tiene permiso para acceder a este secreto en particular.

Obtener asistencia

Para enviar comentarios, informa problemas en GitHub o haz preguntas en Stack Overflow.