Pubblicazione di un'API dal nome di dominio

Questa pagina mostra come gestire 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 ulteriori informazioni, consulta Utilizzare un dominio gestito da Google.

Prima di iniziare

Configurare il progetto API per utilizzare il nome di dominio

Segui le istruzioni nella scheda appropriata.

App Engine

Per impostare il progetto API in modo che utilizzi il dominio verificato, segui le istruzioni fornite in Aggiungere un dominio personalizzato per l'applicazione

Compute Engine

Il modo consigliato per erogare un'API dalle istanze Compute Engine è utilizzare un bilanciatore del carico su un gruppo di istanze. Devi prenotare un indirizzo IP esterno per il nome di dominio e utilizzarlo per il bilanciatore del carico.

Per erogare l'API da un nome di dominio:

  1. Prenota almeno un indirizzo IP esterno statico nel tuo progetto:

    Vai alla pagina Indirizzi IP esterni

    1. Assegna all'indirizzo IP prenotato il nome che preferisci.
    2. In Tipo, fai clic su Globale.
    3. In Collegato a, fai clic su Nessuno. Collegherai l'indirizzo IP a un bilanciatore del carico in un secondo momento.
  2. Visita l'account del 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 dei dati.
  3. Crea un gruppo di istanze che includa le istanze che eseguono l'API e Extensible Service Proxy (ESP:

    Vai alla pagina Crea un nuovo gruppo di istanze

    1. Assegna al gruppo il nome che preferisci e aggiungi una descrizione.
    2. Nell'elenco Zona, fai clic sulla zona utilizzata dall'istanza API.
    3. Nell'elenco Definizione istanza, fai clic su Seleziona istanze esistenti.
    4. Nel campo Istanze VM, aggiungi l'istanza VM che esegue l'API.
    5. Fai clic su Crea.
  4. Crea e configura un bilanciatore del carico HTTP(S):

    Vai alla pagina Crea un nuovo bilanciatore del carico HTTP(S)

    1. Fai clic su Definisci un servizio di backend > Crea o seleziona un servizio di backend.
      Configurazione backend
    2. Assegna il nome e la descrizione che preferisci a questa configurazione del servizio di backend.
    3. Nel campo Protocollo, seleziona il protocollo che vuoi supportare tramite il bilanciatore del carico, HTTP o HTTPS.
    4. Nell'elenco Gruppo di istanze, fai clic sul gruppo di istanze.
    5. Nel campo Numeri di porta, inserisci 8080.
    6. 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 valori predefiniti rimanenti, fai clic su Salva.
    7. Per il momento, accetta i valori predefiniti per il resto della configurazione. Puoi apportare modifiche in un secondo momento, se necessario, ad esempio aggiungere altre porte.
    8. Non devi impostare nulla in Regole host e percorso; puoi inoltrare tutto alla tua API di backend utilizzando i filtri Qualsiasi non corrispondente predefiniti. Ciò significa che tutto il traffico in entrata nel bilanciatore del carico viene indirizzato all'API sulla porta 8080 (la porta predefinita) come definito nei passaggi precedenti.
    9. Fai clic su Configurazione frontend.
      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 preferisci.
      • (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.
    10. Per creare il bilanciatore del carico completamente configurato, fai clic su Crea. Se il pulsante Crea non è attivo, controlla i componenti appena configurati: accanto a ciascuno dei componenti di configurazione dovrebbe essere visualizzato un segno di spunta. Se manca un segno di spunta, significa che non hai completato la configurazione.
    11. Dopo la propagazione delle modifiche DNS, le richieste vengono inviate all'API utilizzando il bilanciatore del carico.

GKE

Per gestire 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 dominio. Tieni presente che GKE esegue automaticamente il bilanciamento del carico.

Per esporre l'API come servizio:

  1. Se non ne hai già uno, Configura un servizio Kubernetes per i 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 selector in modo che corrisponda alle etichette di backend (app: echo-app in questo esempio)
    • Assicurati che targetPort corrisponda alla porta utilizzata da ESP configurata nei backend API. Per impostazione predefinita, ESP utilizza la porta 8081.
  2. Esegui il deployment del servizio Kubernetes:
                kubectl apply -f service.yaml
                
  3. Visualizza l'indirizzo IP esterno assegnato al servizio esposto:
                kubectl get services
                
    L'output mostra un indirizzo EXTERNAL-IP simile al seguente:
                NAME         CLUSTER-IP     EXTERNAL-IP      PORT(S)    AGE
                hello-node   10.X.XXX.202   10X.XXX.XX.123   8080/TCP   1m
          
  4. Modifica l'indirizzo IP esterno generato da temporaneo a statico.

    Vai alla pagina Indirizzi IP esterni

    1. Seleziona l'indirizzo IP esterno dall'elenco.
    2. Nell'elenco Tipo, fai clic su Statico.
  5. Visita l'account del 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 dei dati.

Passaggi successivi