Per configurare un nuovo endpoint pubblico per il tuo servizio Cloud Run, puoi utilizzare Cloud Load Balancing per aggiungere un bilanciatore del carico delle applicazioni esterno globale dal servizio Cloud Run. Il bilanciatore del carico delle applicazioni esterno globale ti consente di controllare la configurazione del tuo dominio personalizzato, ma richiede alcuni passaggi di configurazione se non possiedi già certificato TLS o utilizza un bilanciatore del carico delle applicazioni esterno globale.
Utilizzando i comandi Integrazioni di Cloud Run (anteprima) descritto in questa pagina, puoi configurare rapidamente un nuovo mapping di dominio personalizzato utilizzando un bilanciatore del carico delle applicazioni esterno globale. Se vuoi per utilizzare un bilanciatore del carico delle applicazioni esterno globale esistente, consulta di un bilanciatore del carico delle applicazioni esterno globale con Cloud Run.
Prima di iniziare
- Assicurati di disporre dell'accesso richiesto per apportare modifiche al DNS per il dominio da mappare al servizio Cloud Run.
- Assicurati che il servizio Cloud Run con cui stai eseguendo l'integrazione sia è già stato eseguito il deployment.
- Consulta la pagina dei prezzi del bilanciatore del carico delle applicazioni esterno globale. Ti viene addebitata una fattura per singole di risorse utilizzate nell'integrazione.
Ruoli obbligatori
Per utilizzare le integrazioni di Cloud Run, tu o l'amministratore dovete concedere ruoli IAM su due entità diverse.
Fai clic per visualizzare i ruoli richiesti per il tuo Account Google
Per ottenere le autorizzazioni necessarie per utilizzare Cloud Run integrazioni, chiedi all'amministratore di concederti Account Google: i seguenti ruoli IAM sul tuo progetto:
- Sviluppatore Cloud Run (
roles/run.developer
) - Visualizzatore Compute (
roles/compute.viewer
) - Sviluppatore di integrazioni serverless (
roles/runapps.developer
) - Operatore per integrazioni serverless (
roles/runapps.operator
) - Utente account di servizio (
roles/iam.serviceAccountUser
)
Fai clic per visualizzare i ruoli richiesti per l'account di servizio
Per eseguire il deployment del servizio Cloud Run, puoi utilizzare il cluster creato automaticamente l'account di servizio predefinito di Compute Engine o specifica account di servizio gestito dall'utente. L'account di servizio deve avere i ruoli seguenti:
- Sviluppatore Cloud Run (
roles/run.developer
) - Writer bucket di log (
roles/logging.bucketWriter
) - Utente account di servizio (
roles/iam.serviceAccountUser
) - Storage Admin (
roles/storage.admin
) - Amministratore bilanciatore del carico Compute (
roles/compute.loadBalancerAdmin
)
Mappa un dominio personalizzato con un bilanciatore del carico delle applicazioni esterno globale
Puoi mappare un dominio personalizzato utilizzando la console o la riga di comando. Tieni presente che il provisioning del certificato SSL e il tuo dominio possono richiedere fino a un'ora per iniziare il routing del traffico HTTPS al tuo servizio Cloud Run.
Console
Nella console Google Cloud, vai alla pagina Cloud Run.
Nell'elenco dei servizi, fai clic sul servizio che vuoi utilizzare e integrazione.
Fai clic sulla scheda Integrations (Integrazioni).
Fai clic su Aggiungi integrazione.
Fai clic su Domini personalizzati - Bilanciamento del carico di Google Cloud.
Inserisci il dominio nel campo Dominio.
Inserisci il percorso del dominio che stai utilizzando nel campo Percorso.
Inserisci il nome del servizio che stai mappando a questo dominio personalizzato in Servizio.
Se stai eseguendo la mappatura di altri domini, fai clic su Aggiungi elemento e ripeti la procedura passaggi precedenti per mappare il dominio al servizio in base alle esigenze.
Se ti viene richiesto di abilitare un elenco di API, fai clic su Abilita e attendi che API da abilitare.
In Risorse, nota che le nuove risorse che verranno create come risorse come risultato di questa integrazione.
Fai clic su Invia e attendi il completamento dell'integrazione e delle risorse. creato:
- Al termine, viene creata una tabella con i record DNS necessari configura: utilizza questa opzione per aggiornare i record DNS presso il provider DNS.
- Dopo l'aggiornamento del DNS presso il tuo provider DNS, possono essere necessarie fino a 45 minuti per eseguire il provisioning del certificato SSL e iniziare a instradare il traffico a il tuo servizio.
gcloud
Esegui l'aggiornamento all'ultima versione di Google Cloud CLI:
gcloud components update
Crea l'integrazione:
gcloud beta run integrations create \ --type=custom-domains \ --parameters='set-mapping=DOMAIN:SERVICE' \
Sostituisci:
- DOMAIN con il tuo dominio personalizzato, ad esempio
example.com
osubdomain.example.com
- Può contenere anche un percorso, ad esempio
example.com/subpath/*
- Può contenere anche un percorso, ad esempio
- SERVICE con il nome del tuo servizio Cloud Run.
Se vuoi, includi il
--service-account=SERVICE_ACCOUNT_EMAIL
flag.Sostituisci SERVICE_ACCOUNT_EMAIL con il servizio gestito dall'utente indirizzo email dell'account (
PROJECT_NUMBER-compute@developer.gserviceaccount.com
) usato per il deployment del servizio. Ometti questo flag se vuoi utilizzare account di servizio Compute predefinito (SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com
).Per continuare a utilizzare l'account di servizio specificato durante il deployment le integrazioni di Cloud Run, esegui:
gcloud config set runapps/deployment-service-account
- DOMAIN con il tuo dominio personalizzato, ad esempio
Attendi circa da 2 a 5 minuti, durante i quali un caricamento completamente configurato viene creato un bilanciatore. Al termine della procedura, verranno riportati i viene mostrato il seguente messaggio:
[custom-domains] integration [custom-domains] has been created successfully. To complete the process, please ensure the following DNS records are configured for the domains: NAME TTL TYPE DATA DOMAIN 3600 A IP_ADDRESS It can take up to an hour for the SSL certificate to be provisioned.
Puoi controllare lo stato utilizzando
gcloud beta run integrations describe
.Aggiorna i record DNS del tuo provider DNS con l'indirizzo IP_ADDRESS. valore visualizzato. Dopo aver aggiornato il DNS con il tuo provider DNS, quest'ultimo può potrebbero volerci fino a 45 minuti per eseguire il provisioning del certificato SSL e iniziare il routing verso il tuo servizio.
Aggiorna i domini personalizzati con integrazioni del bilanciatore del carico
L'aggiornamento di un'integrazione comporterà l'aggiornamento di tutte le risorse Google Cloud associate grazie a questa integrazione. Aggiornare domini personalizzati con l'integrazione del bilanciatore del carico dal tuo servizio Cloud Run:
Console
Nella console Google Cloud, vai alla pagina Cloud Run.
Fai clic sul servizio che vuoi aggiornare.
Fai clic sulla scheda Integrations (Integrazioni).
Individua i domini personalizzati con l'integrazione del bilanciatore del carico e fai clic su Modifica.
Al termine dell'aggiornamento dei campi, fai clic su Aggiorna.
gcloud
Utilizza il seguente comando per visualizzare un elenco delle integrazioni disponibili:
gcloud beta run integrations list
Esegui il comando per aggiornare l'integrazione:
gcloud beta run integrations update INTEGRATION_NAME
Sostituisci:
- INTEGRATION_NAME con il nome del tuo personalizzati con l'integrazione del bilanciatore del carico.
Facoltativamente, puoi utilizzare le seguenti opzioni di flag:
Opzione Descrizione --parameters
Il dominio personalizzato da impostare per il servizio. --service-account
L'indirizzo email dell'account di servizio gestito dall'utente da specificare quando si aggiorna il servizio. Questo account di servizio esegue l'override dell'account di servizio precedente utilizzato al momento del deployment.
Visualizza i domini personalizzati con integrazioni del bilanciatore del carico
Per visualizzare lo stato attuale dei domini personalizzati con integrazioni del bilanciatore del carico per per il tuo servizio Cloud Run:
Console
Nella console Google Cloud, vai alla pagina Cloud Run.
Nell'elenco dei servizi, fai clic sul servizio che vuoi utilizzare e integrazione.
Fai clic sulla scheda Integrations (Integrazioni).
Individua i domini personalizzati con l'integrazione del bilanciatore del carico che ti interessano e fai clic su Visualizza dettagli.
gcloud
Utilizza il seguente comando per visualizzare un elenco delle integrazioni disponibili:
gcloud beta run integrations list
Utilizzando un nome dall'elenco restituito, visualizza i relativi dettagli:
gcloud beta run integrations describe INTEGRATION_NAME
Sostituisci INTEGRATION_NAME con il nome del tuo personalizzati con l'integrazione del bilanciatore del carico.
Elimina i domini personalizzati con integrazioni del bilanciatore del carico
L'eliminazione di un'integrazione comporta anche l'eliminazione di tutte le risorse Google Cloud associati all'integrazione, ma non eliminerà i tuoi dal servizio Cloud Run.
Per eliminare un dominio personalizzato con l'integrazione del bilanciatore del carico da Servizio Cloud Run:
Console
Nella console Google Cloud, vai alla pagina Cloud Run.
Fai clic sul servizio da cui vuoi eliminare un'integrazione.
Fai clic sulla scheda Integrations (Integrazioni).
Individua i domini personalizzati con l'integrazione del bilanciatore del carico che ti interessano e fai clic sull'icona dei puntini di sospensione a destra dell'integrazione, quindi fai clic su Elimina.
gcloud
Utilizza il seguente comando per visualizzare un elenco delle integrazioni disponibili:
gcloud beta run integrations list
Utilizzando un nome dall'elenco restituito, elimina l'integrazione:
gcloud beta run integrations delete INTEGRATION_NAME
Sostituisci:
- INTEGRATION_NAME con il nome del tuo personalizzati con l'integrazione del bilanciatore del carico.
Facoltativamente, puoi utilizzare le seguenti opzioni di flag:
Opzione Descrizione --service-account
L'indirizzo email dell'account di servizio gestito dall'utente per eseguire l'operazione di eliminazione.
Limitazioni
Le integrazioni di Cloud Run supportato solo in determinate regioni. Se utilizza una regione non supportata da Cloud Run consulta l'articolo sulla configurazione di un bilanciatore del carico delle applicazioni esterno globale con Cloud Run.