En esta página se explica cómo desplegar el código de backend de tu API y Extensible Service Proxy (ESP) en Google Kubernetes Engine, Compute Engine y el entorno flexible de App Engine.
Aunque los pasos de implementación varían en función de la plataforma que aloje tu API, siempre hay un paso en el que proporcionas a ESP el nombre del servicio y una opción que configura ESP para que use la configuración del servicio Cloud Endpoints más reciente. Con esta información, el ESP puede obtener la configuración de los endpoints de tu API, lo que le permite proxyizar solicitudes y respuestas para que Endpoints pueda gestionar tu API.
Requisitos previos
Para empezar, en esta página se presupone que tienes lo siguiente:
- Ha creado un Google Cloud proyecto.
- Has configurado Endpoints.
- Desplegar la configuración de Endpoints.
Preparación para la implementación
Entorno flexible de App Engine
Si añades un pequeño paso de configuración (descrito en los pasos siguientes), desplegar tu API para que la gestione Endpoints es lo mismo que desplegar cualquier aplicación en el entorno flexible de App Engine. Sigue la documentación de App Engine para hacer lo siguiente:
- Organiza tus archivos de configuración.
-
Crea el archivo de configuración
app.yaml. - Si tu aplicación se basa en microservicios, consulta la documentación sobre despliegue de varias aplicaciones de servicio para obtener información sobre cómo configurar los archivos
app.yamlde cada servicio.
Para desplegar la API en App Engine, usa el comando
gcloud app deploy. Este comando compila automáticamente una imagen de contenedor mediante el servicio Container Builder y, a continuación, despliega esa imagen en tu entorno flexible de App Engine.
Antes de implementar:
- El propietario del Google Cloud proyecto debe crear la aplicación de App Engine.
- Asegúrate de que tu cuenta de usuario incluye los privilegios necesarios.
Compute Engine
Para que Endpoints gestione tu API, debes instalar y configurar ESP, así como el código del servidor backend de tu API. Debes instalar Docker en tu instancia de VM de Compute Engine para poder ejecutar la imagen Docker de ESP, que está disponible de forma gratuita en Artifact Registry.
Antes de implementar:
A continuación, se describen los pasos generales que debes seguir antes de poder desplegar tu API y ESP en Compute Engine. Por lo general, debes seguir todos los pasos que harías normalmente para ejecutar el código del servidor backend en Compute Engine.
- Crea, configura e inicia tu instancia de VM. Consulta la documentación de Compute Engine.
- Instala Docker Enterprise Edition (EE) o Docker Community Edition (CE) en tu instancia de VM. Consulta el artículo sobre cómo instalar Docker.
- Crea un contenedor Docker para el código de tu servidor backend. Consulta la documentación de Cloud Build.
- Envía el contenedor a Artifact Registry u otro registro.
- Asegúrate de que puedes hacer lo siguiente:
- Conéctate a la instancia de VM.
- Ejecuta la imagen de Docker para iniciar el servidor backend en la instancia de VM. Consulta la referencia de Docker run.
- Envía solicitudes a tu API.
GKE
Cuando creas un clúster en la Google Cloud consola, de forma predeterminada, los permisos de OAuth que se conceden a la cuenta de servicio del clúster incluyen los permisos que requiere Endpoints:
- Control de servicios: habilitado
- Gestión de servicios: solo lectura
Cuando crees un clúster con el comando
gcloud container clusters create o con un archivo de configuración de terceros, asegúrate de especificar los siguientes ámbitos:
"https://www.googleapis.com/auth/servicecontrol""https://www.googleapis.com/auth/service.management.readonly"
Para obtener más información, consulta ¿Qué son los ámbitos de acceso?
Antes de implementar:
Si añades una pequeña sección al archivo manifiesto de implementación, puedes ejecutar la imagen de Docker de ESP en tus clústeres de contenedores junto con tu aplicación en contenedores. A continuación, se describen los pasos generales que debes seguir para desplegar tu API con ESP en GKE. Por lo general, debes seguir todos los pasos que harías normalmente para ejecutar el código de tu servidor backend en GKE.
- Despliega tu aplicación en contenedores en los clústeres de contenedores. Los pasos generales que se describen en la documentación de GKE son los siguientes:
- Empaqueta tu aplicación en una imagen de Docker.
- Sube la imagen a un registro.
- Crea un clúster de contenedores.
- Despliega la aplicación en el clúster.
- Expón tu aplicación a Internet.
- Asegúrate de que puedes hacer lo siguiente:
- Inicia el servidor de tu API.
- Envía solicitudes a tu API.
Desplegar una API y ESP
Entorno flexible de App Engine
Para desplegar la API y el ESP en App Engine, sigue estos pasos:
- Obtén el
nombre del servicio de tu API. Es el nombre que has especificado en el campo
hostde tu documento OpenAPI. - Edita el archivo