Mapping di domini personalizzati

Configura i domini personalizzati da utilizzare per accedere a Knative serving i servizi di machine learning. Puoi mappare uno o più domini personalizzati a un singolo servizio oppure puoi mappare un singolo dominio al tuo cluster utilizzato da tutti i servizi. La tua la mappatura di dominio può essere il dominio di base, come your-domain.com, o un sottodominio, ad esempio your-subdomain.your-domain.com.

Per impostazione predefinita, i servizi di cui esegui il deployment nei cluster Knative serving impostato sul dominio di base nip.io. In questo modo puoi testare subito servizi a un URL come:

http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.nip.io

Scopri di più sui domini di test.

Prima di iniziare

Mappatura di un dominio personalizzato

Puoi utilizzare la console Google Cloud o gli strumenti a riga di comando per mappare un dominio personalizzato.

In genere, per configurare un dominio personalizzato:

  1. (Facoltativo) Prenota l'indirizzo IP del bilanciatore del carico.
  2. Mappa i servizi o il cluster sul dominio personalizzato in Knative serving.
  3. Aggiorna i record DNS nel tuo registrar di domini.

Prenota l'indirizzo IP del bilanciatore del carico

Quando Knative serving è installato, il controller Istio in entrata crea un bilanciatore del carico con un indirizzo IP disponibile.

A seconda del cluster GKE, potrebbe essere necessario prenotare l'IP indirizzo del bilanciatore del carico per il controller in entrata Istio:

Al di fuori di Google Cloud
Fai riferimento alla documentazione per l'ambiente in cui esegui il Cluster GKE per determinare come vengono gestiti gli indirizzi IP e se il carico l'indirizzo IP del bilanciatore è statico. Vedi anche le pagine di configurazione Cluster GKE. Ad esempio, in base a come configurato il bilanciamento del carico per Google Distributed Cloud, potresti aver ha già prenotato quegli indirizzi IP.
Su Google Cloud

Devi prenotare l'indirizzo IP esterno del bilanciatore del carico per assicura che rimanga lo stesso se il tuo servizio in entrata eliminati. A seconda della configurazione del cluster, l'indirizzo IP è esterno disponibile o solo per uso interno, ad esempio cluster privati.

Bilanciatori del carico interni su Google Cloud
Consulta la pagina seguente per informazioni dettagliate su come prenotare l'indirizzo IP di il bilanciatore del carico interno: Prenotare un indirizzo IP interno statico
Bilanciatori del carico esterni su Google Cloud
Per prenotare l'indirizzo IP del bilanciatore del carico esterno:
  1. Ottieni l'indirizzo IP del bilanciatore del carico:

    Console

    Per recuperare l'indirizzo IP esterno del bilanciatore del carico dalla console Google Cloud:
    1. Vai alla pagina GKE nella console Google Cloud:
      Vai a GKE
    2. Fai clic su Servizi e in entrata.
    3. Identifica il servizio che è Istio del cluster in entrata. Il Tipo del servizio sarà Carico esterno. bilanciatore del carico, mentre il Nome sarà istio-ingressgateway.
    4. Una volta trovato il servizio in entrata Istio del cluster, copiane il Endpoint. Sarà l'indirizzo IP senza la porta numero. Ad esempio, potresti vedere 00.000.000.000:11 elencato come un ma devi solo copiare 00.000.000.000.

    kubectl

    Per ottenere l'IP esterno per il bilanciatore del carico, esegui questo comando:

    kubectl get svc istio-ingressgateway -n ASM-INGRESS-NAMESPACE
    

    Sostituisci ASM-INGRESS-NAMESPACE con lo spazio dei nomi in cui Si trova il traffico in entrata di Cloud Service Mesh. Specifica istio-system se ha installato Cloud Service Mesh utilizzando la configurazione predefinita.

    L'output risultante è simile al seguente:

    NAME                   TYPE           CLUSTER-IP     EXTERNAL-IP  PORT(S)
    istio-ingressgateway   LoadBalancer   XX.XX.XXX.XX   pending      80:32380/TCP,443:32390/TCP,32400:32400/TCP
    

    dove il valore EXTERNAL-IP è il tuo indirizzo IP esterno del modulo di Google Cloud.

  2. Prenota l'indirizzo IP come IP statico:

    gcloud compute addresses create ADDRESS-NAME --addresses EXTERNAL-IP --region REGION

    Sostituisci:

    • ADDRESS-NAME con il nome che vuoi assegnare al tuo statico IP.
    • EXTERNAL-IP con l'indirizzo IP esterno del bilanciatore del carico ottenuta nel passaggio precedente.
    • REGION con regione in cui si trova il cluster.

Dopo aver ottenuto l'indirizzo IP del bilanciatore del carico, puoi utilizzarlo per mappare il tuo dominio personalizzato:

Servizi di mappatura

Scegli uno dei seguenti metodi per mappare il tuo dominio personalizzato a un servizio Knative serving. Ogni singolo servizio può essere mappato a più domini.

Console

  1. Apri la pagina delle mappature dei domini nella console Google Cloud:

    Vai a Mappature di domini

    Tieni presente che se la finestra del display è troppo piccola, il pulsante Mapping Custom Domains (Mappatura domini personalizzati) non viene visualizzato e devi fare clic su l'icona dei tre puntini verticali nell'angolo a destra della pagina.

  2. Fai clic su Aggiungi mappatura e seleziona Aggiungi mappatura di dominio del servizio per mappare una a un singolo servizio. Puoi mappare più domini a ciascuno completamente gestito di Google Cloud.

  3. Dall'elenco a discesa nel modulo Aggiungi mappatura, seleziona il servizio da per cui vuoi mappare il tuo dominio personalizzato:

  4. Inserisci il nome del dominio, Ad esempio, your-domain.com o subdomain.your-domain.com. Requisiti per il dominio:

    • La mappatura del percorso di base non è supportata. Il termine percorso di base si riferisce al nome del percorso dell'URL che segue il nome di dominio. Ad esempio, users è il percorso di base di your-domain.com/users. Knative serving consente solo di mappare un dominio a /, non a un percorso di base specifico. Ogni percorso del percorso la gestione mediante l'uso di un router all'interno del container del servizio Firebase Hosting.
    • Non puoi mappare il tuo dominio a un sottodominio che corrisponde all'URL di i tuoi servizi. Gli URL di un servizio sono definiti come http://{service}.{namespace}.{your-domain.com}, pertanto se disponi di un in test.default.your-domain.com, non devi creare una mappatura di dominio nello stesso sottodominio test.default.your-domain.com.

  5. Fai clic su Continua.

  6. Aggiorna i record DNS nel registrar del dominio utilizzando i record DNS visualizzati nell'ultimo passaggio. Puoi visualizzare i record in qualsiasi momento facendo clic su DNS Record (Record DNS) nella "..." menu azione per una mappatura di dominio.

  7. Fai clic su Fine.

gcloud

  1. Mappa il servizio al dominio personalizzato:

    gcloud run domain-mappings create --service SERVICE --domain DOMAIN

    Sostituisci:

    • SERVICE con il nome del tuo servizio.
    • DOMAIN con il tuo dominio personalizzato. Ad esempio: your-domain.com o subdomain.your-domain.com. Requisiti per il dominio:
      • La mappatura del percorso di base non è supportata. Il termine percorso di base si riferisce al nome del percorso dell'URL che segue il nome di dominio. Ad esempio, users è il percorso di base di your-domain.com/users. Knative serving consente solo di mappare un dominio a /, non a un percorso di base specifico. Ogni percorso del percorso la gestione mediante l'uso di un router all'interno del container del servizio Firebase Hosting.
      • Non puoi mappare il tuo dominio a un sottodominio che corrisponde all'URL di i tuoi servizi. Gli URL di un servizio sono definiti come http://{service}.{namespace}.{your-domain.com}, pertanto se disponi di un in test.default.your-domain.com, non devi creare una mappatura di dominio nello stesso sottodominio test.default.your-domain.com.

Ora che il dominio personalizzato è mappato a Knative serving, devi aggiungi i record DNS nel tuo registrar di domini.

Mappatura dei cluster

Scegli uno dei seguenti metodi per mappare il dominio personalizzato al cluster:

Console

  1. Apri la pagina delle mappature dei domini nella console Google Cloud:

    Vai a Mappature di domini

    Tieni presente che se la finestra del display è troppo piccola, il pulsante Mapping Custom Domains (Mappatura domini personalizzati) non viene visualizzato e devi fare clic su l'icona dei tre puntini verticali nell'angolo a destra della pagina.

  2. Fai clic su Aggiungi mappatura e seleziona Aggiungi dominio predefinito a cui mappare un dominio. a tutti i servizi nel tuo cluster. Per impostazione predefinita, i nuovi servizi di cui esegui il deployment per utilizzare il dominio mappato.

  3. Fai clic sulla casella di controllo per applicare la nuova mappatura di dominio a tutte le istanze esistenti dei servizi nel tuo cluster.

  4. Dall'elenco a discesa nel modulo Aggiungi mappatura, seleziona il cluster da per cui vuoi mappare il tuo dominio personalizzato:

  5. Inserisci il nome del dominio, Ad esempio, your-domain.com o subdomain.your-domain.com. Requisiti per il dominio:

    • La mappatura del percorso di base non è supportata. Il termine percorso di base si riferisce al nome del percorso dell'URL che segue il nome di dominio. Ad esempio, users è il percorso di base di your-domain.com/users. Knative serving consente solo di mappare un dominio a /, non a un percorso di base specifico. Ogni percorso del percorso la gestione mediante l'uso di un router all'interno del container del servizio Firebase Hosting.
    • Non puoi mappare il tuo dominio a un sottodominio che corrisponde all'URL di i tuoi servizi. Gli URL di un servizio sono definiti come http://{service}.{namespace}.{your-domain.com}, pertanto se disponi di un in test.default.your-domain.com, non devi creare una mappatura di dominio nello stesso sottodominio test.default.your-domain.com.

  6. Fai clic su Continua.

  7. Aggiorna i record DNS nel registrar del dominio utilizzando i record DNS visualizzati nell'ultimo passaggio. Puoi visualizzare i record in qualsiasi momento facendo clic su DNS Record (Record DNS) nella "..." menu azione per una mappatura di dominio.

  8. Fai clic su Fine.

kubectl

  1. Esegui questo comando per rimuovere il dominio di base esistente da il ConfigMap config-domain e sostituiscilo con il tuo dominio personalizzato:

    kubectl patch configmap config-domain --namespace knative-serving --patch \
    '{"data": {"nip.io": null, "DOMAIN": ""}}'

    Sostituisci DOMAIN con il tuo dominio personalizzato. Ad esempio: your-domain.com o subdomain.your-domain.com. Requisiti per il dominio:

    • La mappatura del percorso di base non è supportata. Il termine percorso di base si riferisce al nome del percorso dell'URL che segue il nome di dominio. Ad esempio, users è il percorso di base di your-domain.com/users. Knative serving consente solo di mappare un dominio a /, non a un percorso di base specifico. Ogni percorso del percorso la gestione mediante l'uso di un router all'interno del container del servizio Firebase Hosting.
    • Non puoi mappare il tuo dominio a un sottodominio che corrisponde all'URL di i tuoi servizi. Gli URL di un servizio sono definiti come http://{service}.{namespace}.{your-domain.com}, pertanto se disponi di un in test.default.your-domain.com, non devi creare una mappatura di dominio nello stesso sottodominio test.default.your-domain.com.

Ora che il dominio personalizzato è mappato a Knative serving, devi aggiungi i record DNS nel tuo registrar di domini.

Aggiungi i record DNS nel tuo registrar di domini

Dopo aver mappato il servizio a un dominio personalizzato in Knative serving, devi aggiornare i tuoi record DNS nel registrar del dominio. Per praticità, Knative serving genera e visualizza i record DNS che devi inserire. Devi aggiungere questi record che rimandano al servizio Knative serving all'indirizzo al tuo registrar di domini affinché la mappatura venga applicata.

Se utilizzi Cloud DNS come provider DNS, consulta l'articolo su come aggiungere un registrazione.

  1. Recupera le informazioni del record DNS per le mappature dei tuoi domini utilizzando:

    Console

    1. Vai alla pagina delle mappature dei domini di Knative serving:

      Vai a Mappature di domini

    2. Fai clic sull'icona dei tre puntini verticale a destra del servizio, quindi fai clic su RECORD DNS per visualizzare tutti i record DNS:

    gcloud

    gcloud run domain-mappings describe --domain DOMAIN

    Sostituisci DOMAIN con il tuo dominio personalizzato. Ad esempio: your-domain.com o subdomain.your-domain.com.

    Devi restituire tutti i record sotto l'intestazione resourceRecords.

  2. Accedi al tuo account nel registrar del dominio e apri il DNS di configurazione del deployment.

  3. Individua la sezione dei record dell'host nella pagina di configurazione del tuo dominio e quindi aggiungi ogni record di risorse che hai ricevuto quando hai mappato il tuo dominio al servizio Knative serving.

  4. Quando aggiungi ciascuno dei record DNS precedenti all'account del provider DNS:

    • Seleziona il tipo restituito nel record DNS nel passaggio precedente: A o AAAA. o CNAME.
    • Utilizza il nome www per mappare www.your-domain.com.
    • Utilizza il nome @ per mappare your-domain.com.
    • Utilizza la carattere jolly * per mappare *.your-domain.com.
  5. Salva le modifiche nella pagina di configurazione DNS dell'account del tuo dominio. Nella maggior parte dei casi, l'applicazione delle modifiche richiede solo pochi minuti, ma in alcuni casi possono essere necessarie anche diverse ore, a seconda del registrar e la durata (TTL) di qualsiasi record DNS precedenti per il tuo dominio. Puoi utilizzare uno dei seguenti dig, come questa versione online di dig, per confermare che i record DNS sono stati aggiornati correttamente.

  6. Per ottenere risultati ottimali, accedi al tuo servizio al nuovo URL, ad esempio esempio https://www.your-domain.com. Tieni presente che l'operazione può richiedere diversi minuti per ottenere il certificato SSL/TLS gestito.

Aggiunta di proprietari del dominio verificati ad altri utenti o account di servizio

Quando un utente verifica un dominio, questo viene verificato solo all'account di quell'utente. Ciò significa che solo quell'utente può aggiungere altri domini mappature che usano quel dominio. Quindi, per consentire ad altri utenti di aggiungere mappature utilizzano tale dominio, devi aggiungerli come proprietari verificati.

Se devi aggiungere proprietari verificati del tuo dominio ad altri utenti account di servizio, puoi aggiungere le autorizzazioni tramite Search Console pagina:

  1. Vai a questo indirizzo nel tuo browser web:

    https://search.google.com/search-console/welcome

  2. In Proprietà, fai clic sul dominio per cui vuoi aggiungere un utente. o un account di servizio.

  3. Scorri verso il basso fino all'elenco Proprietari verificati, fai clic su Aggiungi un proprietario. quindi inserisci l'indirizzo email o l'ID account di servizio di un Account Google.

    Per visualizzare un elenco dei tuoi account di servizio, apri la sezione Account di servizio nella console Google Cloud:

    Vai alla pagina Account di servizio

Registrazione di un dominio con Cloud Domains all'interno della console Knative serving

Per registrare un dominio con Cloud Domains dall'interno Console Knative serving:

  1. Vai alla pagina delle mappature dei domini di Knative serving:

    Vai a Mappature di domini

  2. Fai clic su Registra dominio.

  3. Completa il processo di registrazione seguendo le istruzioni per Registrazione di un dominio.

  4. Completa i passaggi precedenti in questa pagina per Mappare il dominio a Knative serving aggiungi i record DNS nel tuo registrar di domini.

Risoluzione dei problemi

Visualizza i problemi comuni in Risoluzione dei problemi relativi a domini personalizzati e TLS gestito.