Administra las API y bibliotecas de Cloud

Puedes acceder a los productos y servicios de Google Cloud desde tu código mediante las API de Cloud. Estas API de Cloud exponen una interfaz JSON REST simple que puedes llamar a través de bibliotecas cliente.

En este documento, se describe cómo habilitar las API de Cloud y agregar bibliotecas cliente de Cloud a tu proyecto.

Explora las API de Cloud

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

  1. Selecciona Herramientas > Cloud Code > API de Cloud.
  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. También puedes buscar una API específica con la barra de búsqueda de las API de Búsqueda.
  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 estado, las instrucciones de instalación específicas del lenguaje para las 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 los detalles de API, sigue estos pasos:

  1. En la vista de detalles de la API de Cloud, elige el proyecto de Google Cloud para el que deseas habilitar la API de Cloud.
  2. 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 las bibliotecas cliente de Cloud

Para agregar bibliotecas a tu proyecto en IntelliJ, sigue estos pasos:

Para proyectos de Java Maven

  1. Selecciona Herramientas > Cloud Code > API de Cloud.
  2. En el diálogo Manage Google Cloud APIs, se muestran las bibliotecas compatibles.

    Captura de pantalla en la que se muestra el cuadro de diálogo para administrar las API de Google Cloud. Este diálogo te permite seleccionar un módulo para agregar las bibliotecas, muestra la lista de API disponibles para agregar y proporciona un área de trabajo en la que se muestra información sobre cada API.
  3. Selecciona el tipo de biblioteca que prefieras de la biblioteca cliente de Google Cloud (opción recomendada) o la biblioteca de GCP de Java Spring.
  4. En el menú desplegable Module (Módulo), selecciona el módulo al que deseas agregar la biblioteca.
  5. Haz clic en Add Maven Dependency (Agregar dependencia de Maven) a fin de agregar la BOM y la biblioteca cliente a tu proyecto.

Para todos los demás proyectos

  1. Selecciona Herramientas > Cloud Code > API de Cloud.
  2. En el diálogo Manage Google Cloud APIs, se muestran las bibliotecas compatibles.

    Captura de pantalla en la que se muestra el cuadro de diálogo para administrar las API de Google Cloud.
                      En este cuadro de diálogo, se muestra la lista de API disponibles para agregar y se proporciona un área de trabajo que muestra información sobre la API.
  3. Instala la API mediante las instrucciones de instalación disponibles en la página de detalles de la API de tu lenguaje preferido.

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 gcloud local en tus Pods de Kubernetes con la edición de la especificación del Pod en los manifiestos del Pod o de implementación para que las bibliotecas cliente de Google Cloud puedan encontrar tus credenciales. 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
        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, mediante la herramienta de línea de comandos de gcloud), debes ejecutar gcloud auth login --update-adc para configurar tu 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 alcance de tu proyecto, puedes elegir cómo autenticar los servicios de Google Cloud en GKE:

  • (Solo para desarrollo)
    1. Crea un clúster de GKE con la siguiente configuración:
      • Asegúrate de estar usando la cuenta de servicio que GKE usa de forma predeterminada, la cuenta de servicio predeterminada de Compute Engine yPermisos de acceso se establece enPermitir el acceso total a todas las API de Cloud (ambas opciones de configuración están disponibles en laGrupos de nodos >Seguridad ).
        Dado que todas las cargas de trabajo implementadas en tu nodo comparten la cuenta de servicio de Compute Engine, 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 la cuenta de servicio predeterminada de Compute Engine:
  • (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 quieres crear una cuenta de servicio única para implementar tu aplicación de Cloud Run, en la página Cuentas de servicio, 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 de Kubernetes a la configuración de implementación, navega a la configuración de ejecución Cloud Run: Deploy y expande la sección Configuración de revisión avanzada. Luego, haz lo siguiente: Especifica tu cuenta de servicio en el campo 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 para desarrollo)
    1. Crea un clúster de GKE con la siguiente configuración:
      • Asegúrate de estar usando la cuenta de servicio que GKE usa de forma predeterminada, la cuenta de servicio predeterminada de Compute Engine yPermisos de acceso se establece enPermitir el acceso total a todas las API de Cloud (ambas opciones de configuración están disponibles en laGrupos de nodos >Seguridad ).
        Dado que todas las cargas de trabajo implementadas en tu nodo comparten la cuenta de servicio de Compute Engine, 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 la cuenta de servicio predeterminada de Compute Engine:
  • (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 la cuenta de servicio de Kubernetes a la configuración de implementación, navega a la configuración de ejecución de Cloud Run:Deploy y expande la sección Configuración avanzada de revisión. Luego, especifica tu cuenta de servicio de Kubernetes en el campo Cuenta de servicio.
      Sección de configuración avanzada de revisión expandida en Cloud Run: campo de cuenta de servicio e implementación con nombre de la cuenta de servicio de Kubernetes
    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. Para abrir el panel de Secret Manager, haz clic en la pestaña Secret Manager en la barra lateral derecha de Cloud Code.

  2. Selecciona el secreto al que deseas acceder en tu código.

  3. Cambia a la pestaña Permisos y, luego, haz clic en el ícono de lápiz Editar permiso para configurar los permisos de tu secreto. Si haces clic en el ícono de lápiz, se abre la página de configuración de Secret Manager de ese secreto en el navegador web.

    La pestaña Permisos seleccionada en Secret Manager y en el ícono Editar permisos destacado

  4. En Cloud Console, haga clic en Mostrar panel de información y, luego, en Agregar miembro.

    Detalles del secreto incluidos en la página secreto de Console en el navegador; se destacó el botón Agregar miembro en el panel de información expandido

  5. Asigna a tu cuenta de servicio la función de descriptor de acceso a secretos de Secret Manager.

    Dentro de Agregar miembros para probar el panel, se indica la cuenta de servicio con el formato service-account-name@project-name.iam.gservicesaccount.com en el campo Nuevos miembros y se completa el desplegable Selecciona una función en la categoría Secret Manager, se selecciona la función de tipo “Descriptor de acceso de Secret Manager”

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

Obtén asistencia

Para enviar comentarios o informar un problema en tu IDE de IntelliJ, ve a Tools > Cloud Code > Help / About > . Envía comentarios o informa un problema para informar un error en GitHub o hacer una pregunta en Stack Overflow.

También puedes unirte al canal #cloud-code, que forma parte de la comunidad de Slack de Google Cloud.