Dopo il deployment dell'API, gli utenti dell'API dovranno accedervi tramite un nome di dominio anziché un indirizzo IP. Puoi:
- Configura
.endpoints.PROJECT_ID.cloud.goog
come dominio (dovePROJECT_ID
è il tuo account Google Cloud) dell'ID progetto). - In alternativa, registra il tuo nome di dominio, ad esempio
example.com
, che prevede:- Configurazione dei server dei nomi DNS (o utilizzo di Cloud DNS).
- Aggiornamento degli indirizzi del registry.
- Creazione e gestione dei record DNS.
Se disponi già di un'infrastruttura DNS o desideri registrarne una personalizzata nome di dominio, vedi Pubblicare un'API dal tuo nome di dominio per ulteriori informazioni.
Questa pagina descrive come configurare le API Cloud Endpoints da utilizzare
.endpoints.PROJECT_ID.cloud.goog
come dominio
nome. I passaggi di configurazione in questa pagina sono applicabili alle API che utilizzano gRPC in esecuzione su Compute Engine, Google Kubernetes Engine o Kubernetes.
Il dominio .cloud.goog
è gestito da Google e condiviso da Google Cloud
clienti. Poiché è garantito che i progetti Google Cloud abbiano un ID progetto univoco a livello globale,
un nome di dominio nel formato .endpoints.PROJECT_ID.cloud.goog
sia univoco
può essere utilizzato come nome di dominio per l'API. La configurazione
Il nome di dominio .endpoints.PROJECT_ID.cloud.goog
è facoltativo. Se preferisci,
registrare il tuo nome di dominio.
Prerequisiti
Come punto di partenza, questa pagina presuppone che tu abbia già creato la tua API Cloud Endpoints e l'abbia dispiegato in Compute Engine, Google Kubernetes Engine o Kubernetes. Se hai bisogno di un'API per i test, puoi utilizzare una delle tutorial che ti guidano la configurazione e il deployment di un'API di esempio.
Configurazione del DNS
La procedura seguente descrive come configurare il DNS per
API Endpoints che utilizzano
.endpoints.PROJECT_ID.cloud.goog
come
Nome servizio Endpoints. Per praticità, la procedura si riferisce
del file di configurazione del servizio gRPC come service.yaml
.
Per configurare il DNS:
- Apri
service.yaml
e aggiungi il campoendpoints
a il file come mostrato nel seguente snippet di codice:type: google.api.Service name: API_NAME.endpoints.PROJECT_ID.cloud.goog endpoints: - name: API_NAME.endpoints.PROJECT_ID.cloud.goog target: "IP_ADDRESS"
In genere, i campi
name
eendpoints.name
sono uguali. - Sostituisci
API_NAME
con il nome dell'API (ad es.bookstore
omy-cool-api
). - Sostituisci
IP_ADDRESS
con un indirizzo IPv4. L'indirizzo IP è una stringa e deve essere racchiuso tra virgolette.Ad esempio, se esegui il deployment del servizio API Endpoints in una di macchina virtuale Compute Engine, puoi utilizzare l'indirizzo IP esterno della macchina virtuale. In alternativa, se esegui il codice su un gruppo di istanze di macchine virtuali (o pod GKE) dietro un bilanciatore del carico, puoi usare l'indirizzo IP del bilanciatore del carico.
- Esegui il deployment del file di configurazione gRPC aggiornato in Service Management
utilizzando il seguente comando:
gcloud endpoints services deploy service.yaml service.pb
Ad esempio, se nel file service.yaml
è specificato quanto segue:
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"
Quando esegui il deployment del file service.yaml
utilizzando il comando gcloud
precedente,
Service Management crea un record A DNS,
my-cool-api.endpoints.my-project-id.cloud.goog
, che si risolve nel target
Indirizzo IP, 192.0.2.1
. Potrebbe essere necessario attendere qualche minuto prima che il nuovo DNS
per propagare la configurazione.
Passaggi successivi
- Configurazione di Endpoints
- Attivazione di SSL per Endpoints
- Prenotare un indirizzo IP esterno statico
- Pubblicare un'API dal tuo nome di dominio