Traffico VPC diretto in uscita con una rete VPC condiviso

Puoi abilitare il servizio o il job Cloud Run per inviare traffico a una rete VPC condivisa utilizzando il traffico in uscita da VPC diretto senza bisogno di un connettore di accesso VPC serverless.

Questa pagina descrive come configurare le autorizzazioni IAM di Cloud Run per utilizzare la subnet della rete VPC condiviso e poi inserire il servizio o il job nella subnet condivisa.

Prima di iniziare

Quando utilizzi il traffico in uscita da un VPC diretto, assicurati che la subnet abbia almeno qualche centinaio di indirizzi IP disponibili. Se il numero totale di istanze in tutti i tuoi servizi Cloud Run supera il 100, ti consigliamo di avere almeno quattro volte (4 volte) il numero totale disponibile.

Limitazioni

Le seguenti limitazioni si applicano sia ai servizi che ai job Cloud Run:

  • Cloud Run supporta una velocità effettiva fino a 1 Gbps per singola istanza. Il superamento di questo valore determina una limitazione del rendimento.
  • Una quota di utilizzo di Cloud Run limita il numero massimo di istanze che puoi configurare per utilizzare il traffico in uscita da VPC diretto. Il numero massimo viene configurato per ogni revisione o esecuzione di job di Cloud Run. Per aumentare i limiti predefiniti, vedi Come aumentare le quote. Puoi controllare la tua quota utilizzando la console Google Cloud.

  • I servizi e i job Cloud Run potrebbero riscontrare interruzioni di connessione durante gli eventi di manutenzione dell'infrastruttura di rete. Ti consigliamo di utilizzare librerie client in grado di gestire reimpostazioni occasionali della connessione.
Le seguenti limitazioni si applicano solo ai job Cloud Run e non ai servizi:
  • Il traffico VPC diretto in uscita per i job Cloud Run è disponibile solo in anteprima.
  • Per garantire esecuzioni corrette dei job, utilizza il traffico VPC diretto in uscita solo per i job che non richiedono più di 8 istanze in parallelo e assicurati di prenotare un minimo di 1024 indirizzi IP.

Gli elementi seguenti non sono supportati dal traffico in uscita da VPC diretto:

  • I log di flusso VPC non forniscono il nome del servizio o della revisione Cloud Run.
  • I log di flusso VPC non vengono generati da risorse non VM come Cloud Run o macchine on-premise.
  • Logging delle regole firewall
  • Mirroring pacchetto
  • Network Intelligence Center
  • Traffico IPv6
  • Secure Web Proxy
  • Utilizzo dei tag di rete nelle regole firewall in entrata applicate alla risorsa di destinazione.
  • Utilizzo dell'identità di servizio come account di servizio di origine nelle regole firewall in entrata applicate alla risorsa di destinazione.
  • Le regole firewall non possono utilizzare i tag di Resource Manager associati ai carichi di lavoro Cloud Run.
  • I job Cloud Run eseguiti per più di un'ora potrebbero riscontrare interruzioni di connessione. che possono verificarsi durante eventi di manutenzione che eseguono la migrazione del job da una macchina a un'altra. Il container riceve un indicatore SIGTSTP 10 secondi prima dell'evento e un indicatore SIGCONT dopo l'evento. Dopo che il container riceve l'indicatore SIGCONT, riprova a stabilire la connessione.

Configura le autorizzazioni IAM

Prima che Cloud Run in un progetto di servizio VPC condiviso possa accedere a una rete VPC condivisa, devi assicurarti che l'agente di servizio Cloud Run disponga di autorizzazioni sufficienti per utilizzare la subnet.

  1. Per accedere alla rete VPC condiviso, concedi le autorizzazioni sufficienti all'agente di servizio Cloud Run aggiungendo uno dei seguenti ruoli:

    • Utente di rete Compute (compute.networkUser) nel progetto host del VPC condiviso.

      Ad esempio, esegui questo comando:

      gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
      --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com" \
      --role "roles/compute.networkUser"
      

      Sostituisci quanto segue:

      • HOST_PROJECT_ID: l'ID del progetto host del VPC condiviso.
      • SERVICE_PROJECT_NUMBER: il numero di progetto di servizio VPC condiviso in cui esegui il deployment del servizio o del job Cloud Run.
    • Visualizzatore rete Compute (compute.networkViewer) nel progetto host del VPC condiviso e nel ruolo Utente di rete Compute (compute.networkUser) nella subnet VPC condivisa.

      Ad esempio, per concedere il ruolo Visualizzatore rete Compute nella subnet, esegui questo comando:

      gcloud compute networks subnets add-iam-policy-binding SUBNET_NAME \
        --region REGION \
        --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com" \
        --role "roles/compute.networkUser" \
        --project HOST_PROJECT_ID
      

      Sostituisci quanto segue:

      • SUBNET_NAME: il nome della subnet in cui vuoi eseguire i servizi Cloud Run.
      • REGION: la regione del servizio Cloud Run, che deve corrispondere alla regione della subnet.
      • SERVICE_PROJECT_NUMBER: il numero di progetto di servizio VPC condiviso in cui esegui il deployment del servizio o del job Cloud Run.
      • HOST_PROJECT_ID: l'ID del progetto host del VPC condiviso.
  2. L'agente di servizio Cloud Run richiede il ruolo Agente di servizio Cloud Run nel progetto Cloud Run. Puoi verificare che il ruolo non sia stato rimosso manualmente eseguendo questo comando:

    gcloud projects get-iam-policy SERVICE_PROJECT_ID \
      --flatten bindings \
      --filter "bindings.role:roles/run.serviceAgent"
    

    Sostituisci SERVICE_PROJECT_ID con l'ID progetto del tuo servizio o job Cloud Run.

Per un controllo più granulare, puoi assicurarti che l'agente di servizio Cloud Run disponga delle seguenti autorizzazioni:

  • compute.networks.use nel progetto host del VPC condiviso
  • compute.subnetworks.use sul progetto host o sulla subnet specifica
  • compute.addresses.get nel progetto di servizio del VPC condiviso
  • compute.addresses.list nel progetto di servizio del VPC condiviso
  • compute.addresses.createInternal nel progetto di servizio del VPC condiviso
  • compute.addresses.deleteInternal nel progetto di servizio del VPC condiviso

Allocazione degli indirizzi IP

Per posizionare il servizio o il job Cloud Run su una rete VPC, devi specificare una rete e una subnet. Cloud Run assegna gli indirizzi IP dalla subnet.

Gli indirizzi IP sono temporanei, quindi non creare criteri basati su singoli IP. Se devi creare un criterio basato sugli IP, ad esempio nelle regole firewall, devi utilizzare l'intervallo di indirizzi IP dell'intera subnet.

Per cambiare la rete o la subnet utilizzata dal servizio o dal job, esegui il deployment di una nuova revisione del servizio o esegui una nuova attività del job che utilizzi i nuovi valori di rete e subnet.

Scale up

Per abilitare lo scale up rapido in caso di picco di traffico, Cloud Run assegna gli indirizzi IP prima che siano necessari.

In un determinato momento, è probabile che il numero di indirizzi IP allocati sia maggiore rispetto al numero di istanze esistenti. Per assicurarti che Cloud Run possa ottenere un numero sufficiente di indirizzi IP, assicurati che la subnet abbia almeno qualche centinaio di indirizzi IP disponibili. Se il numero totale di istanze della subnet in tutti i servizi e i job Cloud Run supera il limite di 100, consigliamo di avere almeno 4 volte (4 volte) il numero totale disponibile. Se Cloud Run non può allocare altri indirizzi IP, non può avviare altre istanze di servizio o attività dei job finché non saranno disponibili altri indirizzi IP. Se lo spazio di indirizzi IP è limitato, consulta Intervalli IP supportati per ulteriori opzioni. Per l'efficienza e la facilità di gestione dell'allocazione degli IP, posiziona più servizi o job nella stessa subnet.

Scalabilità verso il basso

Anche dopo che tutti i servizi o i job fare lo scale down a zero, Cloud Run riserva alcuni indirizzi IP dalla subnet per un massimo di 20 minuti nel caso in cui i servizi o i job debbano fare nuovamente lo scale up. Ogni istanza richiede un indirizzo IP, ma Cloud Run riserva una subnet mask minima di /28 all'inizio. Una volta esaurite tutte le 16 istanze, Cloud Run crea una nuova subnet.

Per eliminare la subnet, devi prima eliminare i servizi o i job Cloud Run o eseguire nuovamente il deployment per smettere di utilizzare la subnet e poi attendere 1-2 ore.

Intervalli IP supportati

Cloud Run supporta i seguenti intervalli IPv4 per la subnet:

  • RFC 1918 (consigliato)
    • 10.0.0.0/8
    • 172.16.0.0/12
    • 192.168.0.0/16
  • RFC 6598
    • 100.64.0.0/10
  • Classe E (sconsigliata con le configurazioni on-premise)
    • 240.0.0.0/4

Esegui il deployment di un servizio

Il traffico in uscita da VPC diretto consente al servizio Cloud Run di inviare traffico a una rete VPC condiviso senza un connettore di accesso VPC serverless. I costi di rete sono scalati fino a zero, proprio come il servizio stesso. Puoi anche utilizzare i tag di rete direttamente nelle revisioni del servizio Cloud Run per una sicurezza di rete più granulare.

Puoi configurare il traffico in uscita da VPC diretto con un servizio utilizzando la console Google Cloud, Google Cloud CLI o YAML.

Console

  1. Vai a Cloud Run

  2. Fai clic su Crea servizio se stai configurando un nuovo servizio in cui stai eseguendo il deployment. Se stai configurando ed eseguendo il deployment di un servizio esistente, fai clic sul servizio e poi su Modifica ed esegui il deployment di nuova revisione.

  3. Se stai configurando un nuovo servizio, compila la pagina iniziale delle impostazioni del servizio in base alle esigenze, quindi fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione del servizio.

  4. Fai clic sulla scheda Networking.

  5. Fai clic su Connetti a un VPC per il traffico in uscita.

  6. Fai clic su Invia il traffico direttamente a un VPC.

  7. Seleziona Reti condivise con me.

  8. Nel campo Rete, seleziona la rete VPC condiviso a cui vuoi inviare il traffico.

  9. Nel campo Subnet, seleziona la subnet da cui il servizio riceve gli indirizzi IP.

  10. (Facoltativo) Inserisci i nomi dei tag di rete che vuoi associare al tuo servizio o ai tuoi servizi. I tag di rete vengono specificati a livello di revisione. Ogni revisione del servizio può avere tag di rete diversi, ad esempio network-tag-2.

  11. Per Routing del traffico, seleziona una delle seguenti opzioni:

    • Instrada al VPC solo richieste a IP privati per inviare solo il traffico agli indirizzi interni attraverso la rete VPC condiviso.
    • Instrada tutto il traffico al VPC per inviare tutto il traffico in uscita attraverso la rete VPC condiviso.
  12. Fai clic su Crea o Esegui il deployment.

  13. Per verificare che il servizio sia nella tua rete VPC condiviso, fai clic sul servizio e quindi sulla scheda Networking. La rete e la subnet sono elencate nella scheda VPC.

Ora puoi inviare richieste dal tuo servizio Cloud Run a qualsiasi risorsa della rete VPC condiviso, in base a quanto consentito dalle regole firewall.

gcloud

Per inserire il servizio nella subnet condivisa, specifica i nomi completi delle risorse per la rete VPC condiviso e la subnet eseguendo questo comando:

gcloud run deploy SERVICE_NAME \
  --image IMAGE_URL \
  --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \
  --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \
  --network-tags NETWORK_TAG_NAMES \
  --vpc-egress=EGRESS_SETTING \
  --region REGION \
  --max-instances MAX
  

Sostituisci quanto segue:

  • SERVICE_NAME: il nome del servizio Cloud Run.
  • IMAGE_URL: l'URL immagine del servizio.
  • HOST_PROJECT_ID: l'ID del progetto del VPC condiviso.
  • VPC_NETWORK: il nome della tua rete VPC condiviso.
  • REGION: la regione del servizio Cloud Run, che deve corrispondere alla regione della subnet.
  • SUBNET_NAME: il nome della subnet.
  • Facoltativo: NETWORK_TAG_NAMES con i nomi separati da virgole dei tag di rete da associare a un servizio. Per i servizi, i tag di rete vengono specificati a livello di revisione. Ogni revisione del servizio può avere tag di rete diversi, ad esempio network-tag-2.
  • EGRESS_SETTING con un valore di impostazione per il traffico in uscita:
    • all-traffic: invia tutto il traffico in uscita attraverso la rete VPC condiviso.
    • private-ranges-only: invia il traffico solo agli indirizzi interni attraverso la rete VPC condiviso.
  • MAX: numero massimo di istanze da utilizzare per la rete VPC condiviso. Il numero massimo di istanze consentite per i servizi è 100.

Per ulteriori dettagli e argomenti facoltativi, consulta la documentazione di riferimento di gcloud.

YAML

Puoi archiviare la specifica del servizio in un file YAML e quindi eseguirne il deployment utilizzando gcloud CLI.

  1. Crea un nuovo file service.yaml con i seguenti contenuti:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE_NAME
      annotations:
        run.googleapis.com/launch-stage: GA
      labels:
        cloud.googleapis.com/location: REGION
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
            run.googleapis.com/vpc-access-egress: EGRESS_SETTING
        spec:
          containers:
          - image: IMAGE

    Sostituisci:

    • SERVICE_NAME con il nome del tuo servizio Cloud Run. I nomi dei servizi devono contenere al massimo 49 caratteri e devono essere univoci per regione e progetto.
    • REGION con la regione del tuo servizio Cloud Run, che deve corrispondere alla regione della subnet.
    • NETWORK con il nome della tua rete VPC condiviso.
    • SUBNET con il nome della subnet.
    • Facoltativo: NETWORK_TAG_NAMES con i nomi dei tag di rete che vuoi associare a un servizio. Per i servizi, i tag di rete vengono specificati a livello di revisione. Ogni revisione del servizio può avere tag di rete diversi, ad esempio network-tag-2.
    • EGRESS_SETTING con un valore di impostazione per il traffico in uscita:
      • all-traffic: invia tutto il traffico in uscita attraverso la rete VPC condiviso.
      • private-ranges-only: invia il traffico solo agli indirizzi interni attraverso la rete VPC condiviso.
    • IMAGE con l'URL dell'immagine container del tuo servizio.
  2. Esegui il deployment del nuovo servizio eseguendo questo comando:

    gcloud run services replace service.yaml
  3. Se vuoi, imposta il servizio come pubblico se vuoi consentire l'accesso non autenticato al servizio.

Se devi scaricare o visualizzare la configurazione di un servizio esistente, usa il comando seguente per salvare i risultati in un file YAML:

gcloud run services describe SERVICE --format export > service.yaml

Da un file YAML di configurazione del servizio, modifica tutti gli attributi secondari spec.template in base alle esigenze per aggiornare le impostazioni di revisione, quindi esegui il deployment della nuova revisione:

gcloud run services replace service.yaml

Crea un job

Il traffico VPC diretto in uscita consente al job Cloud Run di inviare traffico a una rete VPC condiviso senza un connettore di accesso VPC serverless.

Puoi configurare il traffico in uscita da un VPC diretto con un job utilizzando la console Google Cloud, Google Cloud CLI o YAML.

Console

  1. Vai a Cloud Run

  2. Se stai configurando un nuovo job, fai clic sulla scheda Job e compila la pagina iniziale delle impostazioni del job come preferisci. Se stai configurando un job esistente, fai clic sul job e poi su Modifica.

  3. Fai clic su Container, variabili e secret, connessioni, sicurezza per espandere la pagina delle proprietà del job.

  4. Fai clic sulla scheda Connessioni.

  5. Fai clic su Connetti a un VPC per il traffico in uscita.

  6. Fai clic su Invia il traffico direttamente a un VPC.

  7. Seleziona Reti condivise con me.

  8. Nel campo Rete, seleziona la rete VPC condiviso a cui vuoi inviare il traffico.

  9. Nel campo Subnet, seleziona la subnet da cui il job riceve gli indirizzi IP.

  10. (Facoltativo) Inserisci i nomi dei tag di rete che vuoi associare a un job. Per i job, i tag di rete vengono specificati a livello di esecuzione. Ogni esecuzione del job può avere tag di rete diversi, ad esempio network-tag-2.

  11. Per Routing del traffico, seleziona una delle seguenti opzioni:

    • Instrada al VPC solo richieste a IP privati per inviare solo il traffico agli indirizzi interni attraverso la rete VPC condiviso.
    • Instrada tutto il traffico al VPC per inviare tutto il traffico in uscita attraverso la rete VPC condiviso.
  12. Fai clic su Crea o Aggiorna.

  13. Per verificare che il job si trovi nella tua rete VPC condiviso, fai clic sul job, quindi sulla scheda Configurazione. La rete e la subnet sono elencate nella scheda VPC.

Ora puoi eseguire il job Cloud Run e inviare richieste dal job a qualsiasi risorsa della rete VPC condiviso, in base a quanto consentito dalle regole firewall.

gcloud

Per inserire il job nella subnet condivisa, specifica i nomi completi delle risorse per la rete VPC condiviso e la subnet eseguendo questo comando:

gcloud run jobs create JOB_NAME \
  --image IMAGE_URL \
  --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \
  --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \
  --network-tags NETWORK_TAG_NAMES \
  --vpc-egress=EGRESS_SETTING \
  --region REGION \
  

Sostituisci quanto segue:

  • JOB_NAME: il nome del job Cloud Run.
  • IMAGE_URL: l'URL immagine del job.
  • HOST_PROJECT_ID: l'ID del progetto host del VPC condiviso.
  • VPC_NETWORK: il nome della tua rete VPC condiviso.
  • REGION: la regione del job Cloud Run, che deve corrispondere alla regione della subnet.
  • SUBNET_NAME: il nome della subnet.
  • Facoltativo: NETWORK_TAG_NAMES con i nomi separati da virgole dei tag di rete da associare a un job. Ogni esecuzione del job può avere tag di rete diversi, ad esempio network-tag-2.
  • EGRESS_SETTING con un valore di impostazione per il traffico in uscita:
    • all-traffic: invia tutto il traffico in uscita attraverso la rete VPC condiviso.
    • private-ranges-only: invia il traffico solo agli indirizzi interni attraverso la rete VPC condiviso.

Per ulteriori dettagli e argomenti facoltativi, consulta la documentazione di riferimento di gcloud.

YAML

Puoi archiviare le specifiche del job in un file YAML e quindi eseguirne il deployment utilizzando gcloud CLI.

  1. Crea un nuovo file job.yaml con i seguenti contenuti:

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB_NAME
      annotations:
        run.googleapis.com/launch-stage: BETA
      labels:
        cloud.googleapis.com/location: REGION
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
            run.googleapis.com/vpc-access-egress: EGRESS_SETTING
        spec:
          containers:
          - image: IMAGE

    Sostituisci:

    • JOB_NAME con il nome del tuo job Cloud Run. I nomi dei job devono contenere al massimo 49 caratteri e devono essere univoci per ogni regione e progetto.
    • REGION con la regione del job Cloud Run, che deve corrispondere alla regione della subnet.
    • NETWORK con il nome della tua rete VPC condiviso.
    • SUBNET con il nome della subnet.
    • Facoltativo: NETWORK_TAG_NAMES con i nomi dei tag di rete che vuoi associare a un job. Per i job, i tag di rete vengono specificati a livello di esecuzione. Ogni esecuzione del job può avere tag di rete diversi, ad esempio network-tag-2.
    • EGRESS_SETTING con un valore di impostazione per il traffico in uscita:
      • all-traffic: invia tutto il traffico in uscita attraverso la rete VPC condiviso.
      • private-ranges-only: invia il traffico solo agli indirizzi interni attraverso la rete VPC condiviso.
    • IMAGE con l'URL dell'immagine container del job.
  2. Esegui il deployment del nuovo job eseguendo questo comando:

    gcloud run jobs replace job.yaml

Se hai bisogno di scaricare o visualizzare la configurazione di un job esistente, utilizza il seguente comando per salvare i risultati in un file YAML:

gcloud run jobs describe JOB --format export > job.yaml

Da un file YAML di configurazione di un job, modifica qualsiasi attributo secondario spec.template in base alle tue esigenze per aggiornare le impostazioni di revisione, quindi esegui nuovamente il deployment:

gcloud run jobs replace job.yaml

Scollegare un servizio

Console

  • Per rimuovere il tuo servizio dalla rete VPC condiviso:

    1. Vai a Cloud Run

    2. Fai clic sul servizio da rimuovere e poi su Modifica ed esegui il deployment di nuova revisione.

    3. Fai clic sulla scheda Networking.

    4. Deseleziona Connetti a un VPC per il traffico in uscita.

    5. Fai clic su Esegui il deployment.

    6. Per verificare che il tuo servizio non sia più nella tua rete VPC condiviso, fai clic sulla scheda Networking. La rete e la subnet non sono più elencate nella scheda VPC.

  • Per rimuovere solo i tag di rete mantenendo il servizio connesso alla rete VPC condiviso:

    1. Fai clic sul servizio che contiene i tag di rete da rimuovere, poi fai clic su Modifica ed esegui il deployment di nuova revisione.

    2. Fai clic sulla scheda Networking.

    3. Cancella i nomi dei tag di rete che non vuoi più associare al servizio.

    4. Fai clic su Esegui il deployment.

gcloud

  • Per rimuovere il tuo servizio dalla rete VPC condiviso, esegui questo comando:

    gcloud run services update SERVICE_NAME --region=REGION \
    --clear-network
    
  • Per rimuovere solo i tag di rete mantenendo il servizio connesso alla rete VPC condiviso, esegui questo comando:

    gcloud run services update SERVICE_NAME --region=REGION \
    --clear-network-tags
    

    Sostituisci quanto segue:

    • SERVICE_NAME: il nome del servizio Cloud Run.
    • REGION: la regione del tuo servizio Cloud Run.

YAML

  • Per rimuovere il tuo servizio dalla rete VPC condiviso:

    1. Rimuovi i seguenti contenuti dal file service.yaml:

      run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'

      Dove

      • NETWORK: il nome della tua rete VPC condiviso.
      • SUBNET: il nome della subnet.
      • Facoltativo: NETWORK_TAG_NAMES: i nomi dei tag di rete, se li hai associati a un servizio.
    2. Esegui il deployment della revisione del servizio eseguendo questo comando:

      gcloud run services replace service.yaml
  • Per rimuovere solo i tag di rete mantenendo il servizio connesso alla rete VPC condiviso:

    1. Rimuovi la variabile tags dai contenuti nel tuo file service.yaml, mantenendo attive le variabili network e subnetwork, come mostrato nell'esempio seguente:

      run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET"}]'

      Sostituisci quanto segue:

      • NETWORK: il nome della tua rete VPC condiviso.
      • SUBNET: il nome della subnet.
    2. Esegui il deployment della revisione del servizio eseguendo questo comando:

      gcloud run services replace service.yaml

Disconnetti un job

Console

  • Per rimuovere il job dalla rete VPC condiviso:

    1. Vai a Cloud Run

    2. Fai clic sul job da rimuovere e poi su Modifica ed esegui il deployment di nuova revisione.

    3. Fai clic sulla scheda Configuration (Configurazione).

    4. Deseleziona Connetti a un VPC per il traffico in uscita.

    5. Fai clic su Update (Aggiorna).

    6. Per verificare che il job non sia più nella tua rete VPC condiviso, fai clic sulla scheda Configurazione. La rete e la subnet non sono più elencate nella scheda VPC.

  • Per rimuovere solo i tag di rete mantenendo il job connesso alla rete VPC condiviso:

    1. Fai clic sul job che contiene i tag di rete da rimuovere, poi fai clic su Modifica ed esegui il deployment di nuova revisione.

    2. Fai clic sulla scheda Connessioni.

    3. Cancella i nomi dei tag di rete che non vuoi più associare al job.

    4. Fai clic su Update (Aggiorna).

gcloud

  • Per rimuovere il job dalla rete VPC condiviso, esegui questo comando:

    gcloud run jobs update JOB_NAME --region=REGION \
      --clear-network
      
  • Per rimuovere solo i tag di rete mantenendo il job connesso alla rete VPC condiviso, esegui questo comando:

    gcloud run jobs update JOB_NAME --region=REGION \
      --clear-network-tags
      

    Sostituisci quanto segue:

    • JOB_NAME: il nome del job Cloud Run.
    • REGION: la regione per il tuo job Cloud Run.

YAML

  • Per rimuovere il job dalla rete VPC condiviso:

    1. Rimuovi i seguenti contenuti dal file job.yaml:

      run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'

      Dove

      • NETWORK: il nome della tua rete VPC condiviso.
      • SUBNET: il nome della subnet.
      • Facoltativo: NETWORK_TAG_NAMES: i nomi dei tag di rete se li hai associati a un job.
    2. Esegui di nuovo il deployment del job eseguendo questo comando:

      gcloud run jobs replace job.yaml
  • Per rimuovere solo i tag di rete mantenendo il job connesso alla rete VPC condiviso:

    1. Rimuovi la variabile tags dai contenuti nel tuo file job.yaml, mantenendo attive le variabili network e subnetwork, come mostrato nell'esempio seguente:

      run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET"}]'

      Sostituisci quanto segue:

      • NETWORK: il nome della tua rete VPC condiviso.
      • SUBNET: il nome della subnet.
    2. Esegui di nuovo il deployment del job eseguendo questo comando:

      gcloud run jobs replace job.yaml

Risoluzione dei problemi

Impossibile eliminare la subnet

Per eliminare una subnet, devi prima eliminare tutte le risorse che la utilizzano. Se Cloud Run utilizza una subnet, devi disconnettere Cloud Run dalla rete VPC condiviso o spostarla in un'altra subnet prima di eliminare la subnet.

Impossibile scollegare la rete VPC condiviso

Per scollegare la rete VPC condivisa nel progetto host, segui i passaggi per eseguire il deprovisioning del VPC condiviso e assicurati di scollegare tutti i servizi o job Cloud Run dalla rete VPC condivisa.

Per vedere quali risorse Cloud Run utilizzano la rete VPC condiviso, esegui questo comando:

gcloud compute shared-vpc list-associated-resources HOST_PROJECT_ID

Sostituisci HOST_PROJECT_ID con l'ID del tuo progetto host del VPC condiviso.

La subnet VPC diretta esaurisce gli indirizzi IP

Se la subnet della rete VPC condiviso esaurisce gli indirizzi IP, viene registrata da Cloud Logging. In questo caso, Cloud Run non può avviare altre istanze di servizio o attività dei job finché non diventano disponibili altri indirizzi IP.

Visualizza gli indirizzi IP allocati

Per visualizzare gli indirizzi IP assegnati da Cloud Run, vai alla pagina degli indirizzi IP nella console Google Cloud o esegui questo comando da Google Cloud CLI:

gcloud compute addresses list