Questa pagina mostra come pubblicare un'API da un dominio personalizzato di tua proprietà, ad esempio example.com.
In alternativa all'utilizzo del tuo nome di dominio, puoi utilizzare un nome di dominio gestito da Google. Per saperne di più, consulta Utilizzare un dominio gestito da Google.
Prima di iniziare
- Se non hai ancora un nome di dominio da utilizzare per la tua API, ottienilo da un registrar di nomi di dominio.
- Verifica la proprietà del dominio.
- Assegna un nome host API con il nome del tuo dominio.
- Se utilizzi SSL con il tuo dominio, ottieni e carica il certificato SSL.
- Esegui il deployment dell'API e Extensible Service Proxy (ESP).
Configurare il progetto API in modo che utilizzi il tuo nome di dominio
Segui le istruzioni nella scheda appropriata.
Compute Engine
Il modo consigliato per pubblicare un'API dalle istanze Compute Engine è utilizzare un bilanciatore del carico in un gruppo di istanze. Devi prenotare un indirizzo IP esterno per il nome di dominio e utilizzarlo per il bilanciatore del carico.
Per gestire l'API da un nome di dominio:
- Prenota almeno un indirizzo IP esterno statico nel tuo progetto:
- Assegna all'indirizzo IP riservato il nome che preferisci
- Per Tipo, fai clic su Globale.
- Per Allegato a, fai clic su Nessuno. L'indirizzo IP verrà associato a un bilanciatore del carico in un secondo momento.
- Visita l'account del tuo provider di dominio e modifica le impostazioni del dominio. Devi
creare un record A che contenga il nome dell'API, ad esempio
myapi.example.comcon l'indirizzo IP esterno nel campo dati. - Crea un gruppo di istanze che includa le istanze che eseguono la tua API e
Extensible Service Proxy (ESP:
- Assegna un nome a tua scelta al gruppo e aggiungi una descrizione.
- Nell'elenco Zona, fai clic sulla zona utilizzata dall'istanza API.
- Nell'elenco Definizione istanza, fai clic su Seleziona istanze esistenti.
- Nel campo Istanze VM, aggiungi l'istanza VM che esegue l'API.
- Fai clic su Crea.
- Crea e configura un bilanciatore del carico HTTP(S):
Vai alla pagina Crea un nuovo bilanciatore del carico HTTP(S)
- Fai clic su Definisci un servizio di backend > Crea o seleziona un servizio di backend.
- Assegna il nome e la descrizione che preferisci a questa configurazione del servizio di backend.
- Nel campo Protocollo, seleziona il protocollo che vuoi supportare tramite il bilanciatore del carico, HTTP o HTTPS.
- Nell'elenco Gruppo di istanze, fai clic sul tuo gruppo di istanze.
- Nel campo Numeri di porta, inserisci
8080. - Fai clic su Controllo di integrità per configurare i controlli di integrità:
- Inserisci un nome per la configurazione del controllo di integrità.
- Assegna la porta
8080. - Per accettare i restanti valori predefiniti, fai clic su Salva.
- Per ora, accetta i valori predefiniti per il resto della configurazione. Puoi apportare modifiche in un secondo momento in base alle esigenze, ad esempio aggiungere porte.
- Non devi impostare nulla nelle regole host e percorso; puoi inoltrare tutto alla tua API di backend utilizzando i filtri Qualsiasi senza corrispondenza predefiniti. Ciò significa che tutto il traffico nel
bilanciatore del carico viene indirizzato all'API sulla porta
8080(la porta predefinita) come definito nei passaggi precedenti. - Fai clic su Configurazione frontend.
- Nel campo Protocollo, seleziona il protocollo che vuoi supportare tramite il bilanciatore del carico, HTTP o HTTPS.
- Nell'elenco IP, fai clic sull'indirizzo IP esterno che hai creato in precedenza.
- Per il protocollo HTTPS, devi utilizzare SSL. Nell'elenco Certificato, fai clic sul certificato che ti interessa.
- (Facoltativo) Se vuoi supportare un altro protocollo, fai clic su Aggiungi IP e porta frontend, specifica il protocollo, lo stesso indirizzo IP esterno e una porta diversa.
- Per creare il bilanciatore del carico completamente configurato, fai clic su Crea. Se il pulsante Crea non è abilitato, controlla i componenti che hai appena configurato: dovrebbe essere visualizzato un segno di spunta accanto a ciascuno dei componenti di configurazione. Un segno di spunta mancante indica che non hai completato la configurazione.
- Una volta propagate le modifiche DNS, le richieste vengono inviate all'API utilizzando il bilanciatore del carico.
GKE
Per pubblicare un'API su un dominio per Google Kubernetes Engine (GKE), devi esporre ESP come servizio utilizzando l'indirizzo IP esterno restituito per le impostazioni DNS del tuo dominio. Tieni presente che GKE esegue automaticamente il bilanciamento del carico.
Per esporre la tua API come servizio:
- Se non ne hai già uno,
configura un servizio Kubernetes
per i tuoi backend API. Crea un file di configurazione del servizio,
service.yaml, con contenuti simili ai seguenti:apiVersion: v1 kind: Service metadata: name: echo spec: ports: - port: 80 targetPort: 8081 protocol: TCP selector: app: echo-app type: LoadBalancer - Modifica l'etichetta
selectorin modo che corrisponda alle etichette di backend (app: echo-appin questo esempio) - Assicurati che
targetPortcorrisponda alla porta utilizzata da ESP configurata nei backend API. ESP utilizza la porta8081per impostazione predefinita. - Esegui il deployment del servizio Kubernetes:
kubectl apply -f service.yaml - Visualizza l'indirizzo IP esterno assegnato al servizio esposto:
L'output mostra un indirizzokubectl get servicesEXTERNAL-IPsimile al seguente:
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-node 10.X.XXX.202 10X.XXX.XX.123 8080/TCP 1m - Modifica l'IP esterno generato da temporaneo a statico.
- Seleziona l'indirizzo IP esterno dall'elenco.
- Nell'elenco Tipo, fai clic su Statico.
- Visita l'account del tuo provider di dominio e modifica le impostazioni del dominio. Devi
creare un record A che contenga il nome dell'API, ad esempio
myapi.example.com, con l'indirizzo IP esterno nel campo dati.