Una vez que se haya implementado tu API, los usuarios de la API deberán acceder a ella a través de un nombre de dominio en lugar de una dirección IP. A continuación, dispones de las siguientes opciones:
- Configura
.endpoints.PROJECT_ID.cloud.goog
como nombre de dominio (dondePROJECT_ID
es el ID de tu proyecto Google Cloud). - También puedes registrar tu propio nombre de dominio, como
example.com
, lo que implica lo siguiente:- Configurar servidores de nombres DNS (o usar Cloud DNS).
- Actualizando las direcciones del registro.
- Crear y mantener registros DNS.
Si ya tienes una infraestructura de DNS o quieres registrar tu propio nombre de dominio, consulta Servir una API desde tu nombre de dominio para obtener más información.
En esta página se describe cómo configurar las APIs de Cloud Endpoints para usar .endpoints.PROJECT_ID.cloud.goog
como nombre de dominio. Los pasos de configuración de esta página se aplican a las APIs que usan gRPC y que se ejecutan en Compute Engine, Google Kubernetes Engine o Kubernetes.
Google gestiona el dominio .cloud.goog
, que comparten varios clientes de Google Cloud. Como se garantiza que los proyectos tienen un ID de proyecto único en todo el mundo, un nombre de dominio con el formato .endpoints.PROJECT_ID.cloud.goog
es único y se puede usar como nombre de dominio de tu API. Google Cloud Configurar el nombre de dominio .endpoints.PROJECT_ID.cloud.goog
es opcional. Si lo prefieres, puedes registrar tu propio nombre de dominio.
Requisitos previos
Para empezar, en esta página se da por hecho que ya has creado tu API de Cloud Endpoints y la has desplegado en Compute Engine, Google Kubernetes Engine o Kubernetes. Si necesitas una API para hacer pruebas, puedes usar uno de los tutoriales que te explican cómo configurar y desplegar una API de ejemplo.
Configurar DNS
En el siguiente procedimiento se describe cómo configurar el DNS para las APIs de Endpoints que usan .endpoints.PROJECT_ID.cloud.goog
como nombre de servicio de Endpoints. Para mayor comodidad, en este procedimiento se hace referencia al archivo de configuración de tu servicio gRPC como service.yaml
.
Para configurar el DNS, sigue estos pasos:
- Abre
service.yaml
y añade el campoendpoints
al archivo, tal como se muestra en el siguiente fragmento de código:type: google.api.Service name: API_NAME.endpoints.PROJECT_ID.cloud.goog endpoints: - name: API_NAME.endpoints.PROJECT_ID.cloud.goog target: "IP_ADDRESS"
Normalmente, los campos
name
yendpoints.name
son iguales. - Sustituye
API_NAME
por el nombre de tu API (por ejemplo,bookstore
omy-cool-api
). - Sustituye
IP_ADDRESS
por una dirección IPv4. La dirección IP es una cadena y debe indicarse entre comillas.Por ejemplo, si despliegas tu servicio de API de Endpoints en una instancia de máquina virtual de Compute Engine, puedes usar la dirección IP externa de esa máquina virtual. Si ejecutas el código en un grupo de instancias de máquinas virtuales (o pods de GKE) detrás de un balanceador de carga, puedes usar la dirección IP del balanceador de carga.
- Implementa el archivo de configuración de gRPC actualizado en Service Management
con el siguiente comando:
gcloud endpoints services deploy service.yaml service.pb
Por ejemplo, si se especifica lo siguiente en el archivo service.yaml
:
type: google.api.Service name: my-cool-api.endpoints.my-project-id.cloud.goog endpoints: - name: my-cool-api.endpoints.my-project-id.cloud.goog target: "192.0.2.1"
Cuando implementas el archivo service.yaml
mediante el comando gcloud
anterior, Service Management crea un registro A de DNS, my-cool-api.endpoints.my-project-id.cloud.goog
, que se resuelve en la dirección IP de destino, 192.0.2.1
. Es posible que tengas que esperar unos minutos para que se propague la nueva configuración de DNS.
Siguientes pasos
- Configurar Endpoints
- Habilitar SSL para endpoints
- Reservar una dirección IP externa estática
- Servir una API desde tu nombre de dominio