Connessione a una rete VPC

Questa pagina mostra come utilizzare l'accesso VPC serverless per connettere i servizi App Engine nell'ambiente standard direttamente alla tua rete VPC, consentendo l'accesso alle istanze VM Compute Engine, alle istanze Memorystore e a qualsiasi altra risorsa con un indirizzo IP interno.

Prima di iniziare

Crea un connettore di accesso VPC serverless

Per inviare richieste alla tua rete VPC e ricevere le risposte corrispondenti senza utilizzare la rete internet pubblica, puoi utilizzare un connettore di accesso VPC serverless.

Se il connettore si trova nello stesso progetto della rete VPC, puoi creare un connettore utilizzando una subnet esistente oppure creare un connettore e una nuova subnet.

Se il connettore si trova in un progetto di servizio e utilizza una rete VPC condiviso, il connettore e la rete VPC associata si trovano in progetti diversi. Quando un connettore e la relativa rete VPC si trovano in progetti diversi, un amministratore di rete VPC condiviso deve creare la subnet del connettore nella rete VPC condiviso prima di poter creare il connettore e devi creare il connettore utilizzando una subnet esistente.

Per saperne di più sui requisiti delle subnet, consulta Requisiti delle subnet del connettore.

Per saperne di più sulla velocità effettiva del connettore, inclusi il tipo di macchina e lo scaling, vedi Velocità effettiva e scalabilità.

Puoi creare un connettore utilizzando la console Google Cloud , Google Cloud CLI o Terraform.

Console

  1. Vai alla pagina di panoramica di accesso VPC serverless.

    Vai ad Accesso VPC serverless

  2. Fai clic su Crea connettore.

  3. Nel campo Nome, inserisci un nome per il connettore che corrisponda alle convenzioni di denominazione di Compute Engine, con i requisiti aggiuntivi che il nome deve contenere meno di 21 caratteri e che i trattini (-) vengono conteggiati come due caratteri.

  4. Nel campo Regione, seleziona una regione per il connettore. Deve corrispondere alla regione del tuo servizio serverless.

    Se il tuo servizio o lavoro si trova nella regione us-central o europe-west, utilizza us-central1 o europe-west1.

  5. Nel campo Rete, seleziona la rete VPC a cui collegare il connettore.

  6. Nel campo Subnet, seleziona una delle seguenti opzioni:

    • Crea un connettore utilizzando una subnet esistente: seleziona la subnet esistente nel campo Subnet.

    • Crea un connettore e una nuova subnet:seleziona Intervallo IP personalizzato nel campo Subnet. Quindi, inserisci il primo indirizzo in un CIDR /28 non utilizzato (ad esempio 10.8.0.0/28) da utilizzare come intervallo di indirizzi IPv4 principale di una nuova subnet che Google Cloud crea nella rete VPC del connettore. Assicurati che l'intervallo IP non sia in conflitto con le route esistenti nella rete VPC del connettore. Il nome della nuova subnet inizia con il prefisso "aet-".

  7. (Facoltativo) Per impostare le opzioni di scalabilità per un maggiore controllo del connettore, fai clic su Mostra impostazioni di scalabilità per visualizzare il modulo di scalabilità.

    1. Imposta il numero minimo e massimo di istanze per il connettore oppure utilizza i valori predefiniti, ovvero 2 (minimo) e 10 (massimo). Il connettore viene scalato fino al massimo specificato se l'utilizzo del traffico lo richiede, ma il connettore non viene ridimensionato quando il traffico diminuisce. Devi utilizzare valori compresi tra 2 e 10.
    2. Nel menu Tipo di istanza, scegli il tipo di macchina da utilizzare per il connettore oppure utilizza il valore predefinito e2-micro. Quando scegli il tipo di istanza, nota la barra laterale dei costi a destra, che mostra le stime della larghezza di banda e dei costi.
  8. Fai clic su Crea.

  9. Quando è pronto per l'uso, accanto al nome del connettore viene visualizzato un segno di spunta verde.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Aggiorna i componenti di gcloud all'ultima versione:

    gcloud components update
  3. Assicurati che l'API Serverless VPC Access sia abilitata per il tuo progetto:

    gcloud services enable vpcaccess.googleapis.com
  4. Crea il connettore utilizzando una delle seguenti opzioni:

    Per maggiori dettagli e argomenti facoltativi, consulta il gcloud riferimento.

    • Crea un connettore utilizzando una subnet esistente:

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --subnet SUBNET_NAME \
       --subnet-project HOST_PROJECT_ID \
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

      Sostituisci quanto segue:

      • CONNECTOR_NAME: un nome per il connettore, che corrisponda alle convenzioni di denominazione di Compute Engine, con i requisiti aggiuntivi che il nome deve contenere meno di 21 caratteri e che i trattini (-) vengono conteggiati come due caratteri.
      • REGION: una regione per il connettore, corrispondente alla regione del servizio o del job serverless. Se il tuo servizio o lavoro si trova in us-central o europe-west, utilizza us-central1 o europe-west1.
      • SUBNET_NAME: il nome della subnet esistente.
      • HOST_PROJECT_ID: l'ID progetto host VPC condiviso. Se il connettore e la subnet esistente si trovano nello stesso progetto, ometti il flag --subnet-project.
      • MIN: il numero minimo di istanze da utilizzare per il connettore. Utilizza un numero intero compreso tra 2(il valore predefinito) e 9.
      • MAX: il numero massimo di istanze da utilizzare per il connettore. Utilizza un numero intero compreso tra 3 e 10 (valore predefinito). Se il connettore esegue lo scale up fino al numero massimo di istanze, non esegue lo scale down.
      • MACHINE_TYPE: deve essere uno dei seguenti valori: f1-micro, e2-micro o e2-standard-4.
    • Crea un connettore e una nuova subnet:

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --network VPC_NETWORK \
       --range IP_RANGE
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

      Sostituisci quanto segue:

      • CONNECTOR_NAME: un nome per il connettore, che corrisponda alle convenzioni di denominazione di Compute Engine, con i requisiti aggiuntivi che il nome deve contenere meno di 21 caratteri e che i trattini (-) vengono conteggiati come due caratteri.
      • REGION: una regione per il connettore, corrispondente alla regione del servizio o del job serverless. Se il tuo servizio o lavoro si trova in us-central o europe-west, utilizza us-central1 o europe-west1.
      • VPC_NETWORK: il nome della rete VPC a cui collegare il connettore. Il connettore e la rete VPC devono trovarsi nello stesso progetto.
      • IP_RANGE: fornisci un CIDR /28 non utilizzato (ad esempio 10.8.0.0/28) da utilizzare come intervallo di indirizzi IPv4 principale di una nuova subnet che Google Cloud crea nella rete VPC del connettore. Assicurati che l'intervallo IP non sia in conflitto con le route esistenti nella rete VPC del connettore. Il nome della nuova subnet inizia con il prefisso "aet-".
      • MIN: il numero minimo di istanze da utilizzare per il connettore. Utilizza un numero intero compreso tra 2(il valore predefinito) e 9.
      • MAX: il numero massimo di istanze da utilizzare per il connettore. Utilizza un numero intero compreso tra 3 e 10 (valore predefinito). Se il connettore esegue lo scale up fino al numero massimo di istanze, non esegue lo scale down.
      • MACHINE_TYPE: deve essere uno dei seguenti valori: f1-micro, e2-micro o e2-standard-4.
  5. Prima di utilizzare il connettore, verifica che si trovi nello stato READY:

    gcloud compute networks vpc-access connectors describe CONNECTOR_NAME \
    --region REGION

    Sostituisci quanto segue:

    • CONNECTOR_NAME: il nome del connettore, ovvero il nome specificato nel passaggio precedente.
    • REGION: la regione del connettore, ovvero la regione specificata nel passaggio precedente.

    L'output deve contenere la riga state: READY.

Terraform

Puoi utilizzare una risorsa Terraform per abilitare l'API vpcaccess.googleapis.com.

resource "google_project_service" "vpcaccess-api" {
  project = var.project_id # Replace this with your project ID in quotes
  service = "vpcaccess.googleapis.com"
}

Puoi utilizzare i moduli Terraform per creare una rete VPC e una subnet, quindi creare il connettore.

module "test-vpc-module" {
  source       = "terraform-google-modules/network/google"
  version      = "~> 10.0"
  project_id   = var.project_id # Replace this with your project ID in quotes
  network_name = "my-serverless-network"
  mtu          = 1460

  subnets = [
    {
      subnet_name   = "serverless-subnet"
      subnet_ip     = "10.10.10.0/28"
      subnet_region = "us-central1"
    }
  ]
}

module "serverless-connector" {
  source     = "terraform-google-modules/network/google//modules/vpc-serverless-connector-beta"
  version    = "~> 10.0"
  project_id = var.project_id
  vpc_connectors = [{
    name        = "central-serverless"
    region      = "us-central1"
    subnet_name = module.test-vpc-module.subnets["us-central1/serverless-subnet"].name
    # host_project_id = var.host_project_id # Specify a host_project_id for shared VPC
    machine_type  = "e2-standard-4"
    min_instances = 2
    max_instances = 7
    }
    # Uncomment to specify an ip_cidr_range
    #   , {
    #     name          = "central-serverless2"
    #     region        = "us-central1"
    #     network       = module.test-vpc-module.network_name
    #     ip_cidr_range = "10.10.11.0/28"
    #     subnet_name   = null
    #     machine_type  = "e2-standard-4"
    #     min_instances = 2
    #   max_instances = 7 }
  ]
  depends_on = [
    google_project_service.vpcaccess-api
  ]
}

Configura il servizio per utilizzare un connettore

Dopo aver creato un connettore di accesso VPC serverless, devi configurare ogni servizio nella tua app App Engine a cui vuoi connetterti alla tua rete VPC.

Per specificare un connettore per un servizio nella tua app:

  1. Aggiungi il campo vpc_access_connector al file app.yaml del tuo servizio:

    vpc_access_connector:
     name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
    

    dove PROJECT_ID è l'ID progetto Google Cloud , REGION è la regione in cui si trova il connettore e CONNECTOR_NAME è il nome del connettore.

  2. Esegui il deployment del servizio:

    gcloud app deploy
    

Dopo aver eseguito il deployment del servizio, questo è in grado di inviare richieste agli indirizzi IP interni per accedere alle risorse nella rete VPC.

Accesso alle risorse VPC

Regole firewall richieste per i connettori nei progetti di servizio

Se crei un connettore in una rete VPC autonoma o nel progetto host di una rete VPC condiviso, Google Cloud crea tutte le regole firewall necessarie per il funzionamento del connettore. Per maggiori informazioni, consulta Regole firewall per i connettori nelle reti VPC autonome o nei progetti host VPC condiviso.

Tuttavia, se crei un connettore in un progetto di servizio e il connettore ha come target una rete VPC condiviso nel progetto host, devi aggiungere regole firewall per consentire il traffico necessario per il funzionamento del connettore dai seguenti intervalli:

Questi intervalli vengono utilizzati dall'infrastruttura Google sottostante Cloud Run, Cloud Run Functions e l'ambiente standard di App Engine. Tutte le richieste provenienti da questi indirizzi IP hanno origine dall'infrastruttura Google per garantire che ogni risorsa serverless comunichi solo con il connettore a cui è connessa.

Devi anche consentire il traffico dalla subnet del connettore alle risorse nella tua rete VPC.

Per eseguire questi passaggi, devi disporre di uno dei seguenti ruoli nel progetto host:

Per una configurazione di base, applica le regole per consentire alle risorse serverless in qualsiasi progetto di servizio connesso alla rete VPC condiviso di inviare richieste a qualsiasi risorsa nella rete.

Per applicare queste regole, esegui i seguenti comandi nel progetto host:

  1. Crea regole firewall che consentano alle richieste dell'infrastruttura serverless di Google e ai probe di controllo di integrità di raggiungere tutti i connettori nella rete. In questi comandi, le porte UDP e TCP vengono utilizzate rispettivamente come proxy e per i controlli di integrità HTTP. Non modificare le porte specificate.

    gcloud compute firewall-rules create serverless-to-vpc-connector \
        --allow tcp:667,udp:665-666,icmp \
        --source-ranges=35.199.224.0/19 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-to-serverless \
        --allow tcp:667,udp:665-666,icmp \
        --destination-ranges=35.199.224.0/19 \
        --direction=EGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-health-checks \
        --allow tcp:667 \
        --source-ranges=35.191.0.0/16,35.191.192.0/18,130.211.0.0/22 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK

    Sostituisci VPC_NETWORK con il nome della rete VPC a cui collegare il connettore.

  2. Crea una regola firewall in entrata sulla tua rete VPC per consentire le richieste dai connettori che hanno come target questa rete:

    gcloud compute firewall-rules create vpc-connector-requests \
        --allow tcp,udp,icmp \
        --direction=INGRESS \
        --source-tags vpc-connector \
        --network=VPC_NETWORK

    Questa regola concede al connettore l'accesso a ogni risorsa della rete. Per limitare le risorse che il tuo ambiente serverless può raggiungere utilizzando l'accesso VPC serverless, consulta Limitare l'accesso alle VM del connettore alle risorse di rete VPC.

Crea regole firewall per connettori specifici

Se segui la procedura descritta in Regole firewall richieste per i connettori nei progetti di servizio, le regole firewall risultanti si applicano a tutti i connettori, sia quelli attuali sia quelli creati in futuro. Se non vuoi questo, ma vuoi creare regole solo per connettori specifici, puoi definire l'ambito delle regole in modo che vengano applicate solo a questi connettori.

Per limitare l'ambito delle regole a connettori specifici, puoi utilizzare uno dei seguenti meccanismi:

  • Tag di rete: ogni connettore ha due tag di rete: vpc-connector e vpc-connector-REGION-CONNECTOR_NAME. Utilizza il secondo formato per limitare l'ambito delle regole firewall a un connettore specifico.
  • Intervalli IP: utilizza questo campo solo per le regole di uscita, perché non funziona per le regole di ingresso. Puoi utilizzare l'intervallo IP della subnet del connettore per limitare l'ambito delle regole firewall a un singolo connettore VPC.

Limitare l'accesso della VM del connettore alle risorse di rete VPC

Puoi limitare l'accesso del connettore alle risorse nella rete VPC di destinazione utilizzando le regole firewall VPC o le regole nelle policy firewall. Puoi applicare queste limitazioni utilizzando una delle seguenti strategie:

  • Crea regole di ingresso le cui destinazioni rappresentano le risorse a cui vuoi limitare l'accesso della VM del connettore e le cui origini rappresentano le VM del connettore.
  • Crea regole di uscita i cui target rappresentano le VM del connettore e le cui destinazioni rappresentano le risorse a cui vuoi limitare l'accesso della VM del connettore.

Gli esempi riportati di seguito illustrano ciascuna strategia.

Limitare l'accesso utilizzando le regole per il traffico in entrata

Scegli tag di rete o intervalli CIDR per controllare il traffico in entrata nella rete VPC.

Tag di rete

I seguenti passaggi mostrano come creare regole di ingresso che limitano l'accesso di un connettore alla tua rete VPC in base ai tag di rete del connettore.

  1. Assicurati di disporre delle autorizzazioni necessarie per inserire regole firewall. Devi disporre di uno dei seguenti ruoli Identity and Access Management (IAM):

  2. Nega il traffico del connettore nella rete VPC.

    Crea una regola firewall in entrata con priorità inferiore a 1000 nella tua rete VPC per negare l'accesso dal tag di rete del connettore. Questa operazione sostituisce la regola firewall implicita che l'accesso VPC serverless crea per impostazione predefinita nella tua rete VPC.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, deny-vpc-connector.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

      Per motivi di sicurezza e convalida, puoi anche configurare regole di negazione per bloccare il traffico per i seguenti protocolli non supportati: ah, all, esp, icmp, ipip e sctp.

    • VPC_CONNECTOR_NETWORK_TAG: il tag di rete del connettore universale se vuoi limitare l'accesso per tutti i connettori (inclusi quelli creati in futuro) o il tag di rete univoco se vuoi limitare l'accesso per un connettore specifico.

      • Tag di rete universale: vpc-connector
      • Tag di rete univoco: vpc-connector-REGION-CONNECTOR_NAME

        Sostituisci:

        • REGION: la regione del connettore che vuoi limitare
        • CONNECTOR_NAME: il nome del connettore che vuoi limitare

      Per saperne di più sui tag di rete del connettore, consulta Tag di rete.

    • VPC_NETWORK: il nome della tua rete VPC

    • PRIORITY: un numero intero compreso tra 0 e 65535. Ad esempio, 0 imposta la priorità più alta.

  3. Consenti il traffico del connettore alla risorsa che deve ricevere il traffico del connettore.

    Utilizza i flag allow e target-tags per creare una regola firewall in entrata che abbia come target la risorsa nella tua rete VPC a cui vuoi che il connettore VPC acceda. Imposta la priorità per questa regola su un valore inferiore rispetto alla priorità della regola creata nel passaggio precedente.

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, allow-vpc-connector-for-select-resources.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

    • VPC_CONNECTOR_NETWORK_TAG: il tag di rete del connettore universale se vuoi limitare l'accesso per tutti i connettori (inclusi quelli creati in futuro) o il tag di rete univoco se vuoi limitare l'accesso per un connettore specifico. Deve corrispondere al tag di rete che hai specificato nel passaggio precedente.

      • Tag di rete universale: vpc-connector
      • Tag di rete univoco: vpc-connector-REGION-CONNECTOR_NAME

        Sostituisci:

        • REGION: la regione del connettore che vuoi limitare
        • CONNECTOR_NAME: il nome del connettore che vuoi limitare

      Per saperne di più sui tag di rete del connettore, consulta Tag di rete.

    • VPC_NETWORK: il nome della tua rete VPC

    • RESOURCE_TAG: il tag di rete per la risorsa VPC a cui vuoi che acceda il connettore VPC

    • PRIORITY: un numero intero inferiore alla priorità impostata nel passaggio precedente. Ad esempio, se hai impostato la priorità della regola che hai creato nel passaggio precedente su 990, prova 980.

Per saperne di più sui flag obbligatori e facoltativi per la creazione di regole firewall, consulta la documentazione per gcloud compute firewall-rules create.

Intervallo CIDR

I seguenti passaggi mostrano come creare regole di ingresso che limitano l'accesso di un connettore alla tua rete VPC in base all'intervallo CIDR del connettore.

  1. Assicurati di disporre delle autorizzazioni necessarie per inserire regole firewall. Devi disporre di uno dei seguenti ruoli Identity and Access Management (IAM):

  2. Nega il traffico del connettore nella rete VPC.

    Crea una regola firewall in entrata con priorità inferiore a 1000 nella tua rete VPC per negare l'accesso in entrata dall'intervallo CIDR del connettore. Questa operazione sostituisce la regola firewall implicita che l'accesso VPC serverless crea per impostazione predefinita nella tua rete VPC.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, deny-vpc-connector.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

      Per motivi di sicurezza e convalida, puoi anche configurare regole di negazione per bloccare il traffico per i seguenti protocolli non supportati: ah, all, esp, icmp, ipip e sctp.

    • VPC_CONNECTOR_CIDR_RANGE: l'intervallo CIDR per il connettore di cui stai limitando l'accesso

    • VPC_NETWORK: il nome della tua rete VPC

    • PRIORITY: un numero intero compreso tra 0 e 65535. Ad esempio, 0 imposta la priorità più alta.

  3. Consenti il traffico del connettore alla risorsa che deve ricevere il traffico del connettore.

    Utilizza i flag allow e target-tags per creare una regola firewall in entrata che abbia come target la risorsa nella tua rete VPC a cui vuoi che il connettore VPC acceda. Imposta la priorità per questa regola su un valore inferiore rispetto alla priorità della regola creata nel passaggio precedente.

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, allow-vpc-connector-for-select-resources.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

    • VPC_CONNECTOR_CIDR_RANGE: l'intervallo CIDR per il connettore di cui stai limitando l'accesso

    • VPC_NETWORK: il nome della tua rete VPC

    • RESOURCE_TAG: il tag di rete per la risorsa VPC a cui vuoi che acceda il connettore VPC

    • PRIORITY: un numero intero inferiore alla priorità impostata nel passaggio precedente. Ad esempio, se hai impostato la priorità della regola che hai creato nel passaggio precedente su 990, prova 980.

Per saperne di più sui flag obbligatori e facoltativi per la creazione di regole firewall, consulta la documentazione per gcloud compute firewall-rules create.

Limitare l'accesso utilizzando le regole di uscita

I passaggi riportati di seguito mostrano come creare regole di uscita per limitare l'accesso al connettore.

  1. Assicurati di disporre delle autorizzazioni necessarie per inserire regole firewall. Devi disporre di uno dei seguenti ruoli Identity and Access Management (IAM):

  2. Nega il traffico in uscita dal connettore.

    Crea una regola firewall in uscita sul connettore di accesso VPC serverless per impedirgli di inviare traffico in uscita, ad eccezione delle risposte stabilite, a qualsiasi destinazione.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --direction=EGRESS \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, deny-vpc-connector.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

      Per motivi di sicurezza e convalida, puoi anche configurare regole di negazione per bloccare il traffico per i seguenti protocolli non supportati: ah, all, esp, icmp, ipip e sctp.

    • VPC_CONNECTOR_NETWORK_TAG: il tag di rete del connettore VPC universale se vuoi che la regola venga applicata a tutti i connettori VPC esistenti e a tutti i connettori VPC creati in futuro. In alternativa, il tag di rete del connettore VPC univoco se vuoi controllare un connettore specifico.

    • VPC_NETWORK: il nome della tua rete VPC

    • PRIORITY: un numero intero compreso tra 0 e 65535. Ad esempio, 0 imposta la priorità più alta.

  3. Consenti il traffico in uscita quando la destinazione si trova nell'intervallo CIDR a cui vuoi che il connettore acceda.

    Utilizza i flag allow e destination-ranges per creare una regola firewall che consenta il traffico in uscita dal connettore per un intervallo di destinazione specifico. Imposta l'intervallo di destinazione sull'intervallo CIDR della risorsa nella tua rete VPC a cui vuoi che il connettore possa accedere. Imposta la priorità di questa regola su un valore inferiore a quello della regola creata nel passaggio precedente.

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --destination-ranges=RESOURCE_CIDR_RANGE \
    --direction=EGRESS \
    --network=VPC_NETWORK \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --priority=PRIORITY

    Sostituisci quanto segue:

    • RULE_NAME: il nome della nuova regola firewall. Ad esempio, allow-vpc-connector-for-select-resources.

    • PROTOCOL: uno o più protocolli che vuoi consentire dal connettore VPC. I protocolli supportati sono tcp o udp. Ad esempio, tcp:80,udp consente il traffico TCP tramite la porta 80 e il traffico UDP. Per saperne di più, consulta la documentazione del flag allow.

    • RESOURCE_CIDR_RANGE: l'intervallo CIDR per il connettore di cui stai limitando l'accesso

    • VPC_NETWORK: il nome della tua rete VPC

    • VPC_CONNECTOR_NETWORK_TAG: il tag di rete del connettore VPC universale se vuoi che la regola venga applicata a tutti i connettori VPC esistenti e a tutti i connettori VPC creati in futuro. In alternativa, il tag di rete del connettore VPC univoco se vuoi controllare un connettore specifico. Se hai utilizzato il tag di rete univoco nel passaggio precedente, utilizza il tag di rete univoco.

    • PRIORITY: un numero intero inferiore alla priorità impostata nel passaggio precedente. Ad esempio, se hai impostato la priorità della regola che hai creato nel passaggio precedente su 990, prova 980.

Per saperne di più sui flag obbligatori e facoltativi per la creazione di regole firewall, consulta la documentazione per gcloud compute firewall-rules create.

Gestire il connettore

Controllo del traffico in uscita da un servizio

Per impostazione predefinita, solo le richieste agli indirizzi IP interni e ai nomi DNS interni vengono instradate tramite un connettore di accesso VPC serverless. Puoi specificare l'impostazione per il traffico in uscita per il servizio nel file app.yaml.

Le impostazioni di uscita non sono compatibili con il servizio URL Fetch. L'utilizzo della libreria urlfetch ignora le impostazioni del traffico in uscita e le richieste non vengono instradate tramite un connettore di accesso VPC serverless.

Per configurare il comportamento di uscita del servizio App Engine:

  1. Aggiungi l'attributo egress_setting al campo vpc_access_connector del file app.yaml del tuo servizio:

    vpc_access_connector:
      name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
      egress_setting: EGRESS_SETTING

    Sostituisci:

    • PROJECT_ID con l'ID progetto Google Cloud
    • REGION con la regione in cui si trova il connettore
    • CONNECTOR_NAME con il nome del connettore
    • EGRESS_SETTING con uno dei seguenti elementi:
      • private-ranges-only Predefinita. Solo le richieste agli intervalli di indirizzi IP RFC 1918 e RFC 6598 o ai nomi DNS interni vengono indirizzate alla tua rete VPC. Tutte le altre richieste vengono indirizzate direttamente a internet.
      • all-traffic Tutte le richieste in uscita dal tuo servizio vengono indirizzate alla tua rete VPC. Le richieste sono quindi soggette alle regole firewall, DNS e di routing della tua rete VPC. Tieni presente che il routing di tutte le richieste in uscita alla tua rete VPC aumenta la quantità di traffico in uscita gestito dal connettore di accesso VPC serverless e può comportare addebiti.
  2. Esegui il deployment del servizio:

    gcloud app deploy
    

Disconnetti un servizio da una rete VPC

Per disconnettere un servizio da una rete VPC, rimuovi il campo vpc_access_connector dal file app.yaml e esegui nuovamente il deployment del servizio.

I connettori continuano a generare addebiti anche se non hanno traffico e sono disconnessi. Per i dettagli, consulta la pagina Prezzi. Se non hai più bisogno del connettore, assicurati di eliminarlo per evitare la fatturazione continua.

Aggiorna un connettore

Puoi aggiornare e monitorare i seguenti attributi del connettore utilizzando la console Google Cloud , Google Cloud CLI o l'API:

  • Tipo di macchina (istanza)
  • Numero minimo e massimo di istanze
  • Throughput recente, numero di istanze e utilizzo della CPU

Aggiorna tipo di macchina

Console

  1. Vai alla pagina di panoramica di accesso VPC serverless.

    Vai ad Accesso VPC serverless

  2. Seleziona il connettore da modificare e fai clic su Modifica.

  3. Nell'elenco Tipo di istanza, seleziona il tipo di macchina (istanza) che preferisci. Per scoprire di più sui tipi di macchina disponibili, consulta la documentazione su Throughput e scalabilità.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per aggiornare il tipo di macchina del connettore, esegui questo comando nel terminale:

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --machine-type=MACHINE_TYPE
    Sostituisci quanto segue:

    • CONNECTOR_NAME: il nome del connettore
    • REGION: il nome della regione del connettore
    • MACHINE_TYPE: il tipo di macchina che preferisci. Per scoprire di più sui tipi di macchine disponibili, consulta la documentazione su Throughput e scalabilità.

Diminuisci il numero minimo e massimo di istanze

Per diminuire il numero minimo e massimo di istanze, devi:

  1. Crea un nuovo connettore con i valori che preferisci.
  2. Aggiorna il servizio o la funzione per utilizzare il nuovo connettore.
  3. Elimina il vecchio connettore dopo aver spostato il traffico.

Aumenta il numero minimo e massimo di istanze

Console

  1. Vai alla pagina di panoramica di accesso VPC serverless.

    Vai ad Accesso VPC serverless

  2. Seleziona il connettore da modificare e fai clic su Modifica.

  3. Nel campo Istanze minime, seleziona il numero minimo di istanze che preferisci.

    Il valore più piccolo possibile per questo campo è il valore attuale. Il valore più grande possibile per questo campo è il valore attuale nel campo Istanze massime meno 1. Ad esempio, se il valore nel campo Istanze massime è 8, il valore massimo possibile per il campo Istanze minime è 7.

  4. Nel campo Numero massimo di istanze, seleziona il numero massimo di istanze che preferisci.

    Il valore più piccolo possibile per questo campo è il valore attuale. Il valore massimo possibile per questo campo è 10.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per aumentare il numero minimo o massimo di istanze per il connettore, esegui questo comando nel terminale:

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --min-instances=MIN_INSTANCES --max-instances=MAX_INSTANCES
    Sostituisci quanto segue:

  • CONNECTOR_NAME: il nome del connettore
  • REGION: il nome della regione del connettore
  • MIN_INSTANCES: il numero minimo di istanze che preferisci.
    • Il valore più piccolo possibile per questo campo è il valore attuale di min_instances. Per trovare il valore attuale, consulta Trovare i valori attuali degli attributi.
    • Il valore più grande possibile per questo campo è il valore attuale di max_instances meno 1, perché min_instances deve essere inferiore a max_instances. Ad esempio, se max_instances è 8, il valore più grande possibile per questo campo è 7. Se il connettore utilizza il valore predefinito max-instances di 10, il valore più grande possibile di questo campo è 9. Per trovare il valore di max-instances, consulta Trovare i valori degli attributi attuali.
  • MAX_INSTANCES:

    • Il valore più piccolo possibile per questo campo è il valore attuale di max_instances. Per trovare il valore attuale, consulta Trovare i valori attuali degli attributi.
    • Il valore più grande possibile per questo campo è 10.

    Se vuoi aumentare solo il numero minimo di istanze, ma non quello massimo, devi comunque specificare il numero massimo di istanze. Al contrario, se vuoi aggiornare solo il numero massimo di istanze, ma non quello minimo, devi comunque specificare il numero minimo di istanze. Per mantenere il numero minimo o massimo di istanze al valore attuale, specifica il valore attuale. Per trovare il valore attuale, consulta Trovare i valori attuali degli attributi.

Trovare i valori degli attributi correnti

Per trovare i valori degli attributi correnti per il connettore, esegui il seguente comando nel terminale:

gcloud compute networks vpc-access connectors describe CONNECTOR_NAME --region=REGION --project=PROJECT
Sostituisci quanto segue:

  • CONNECTOR_NAME: il nome del connettore
  • REGION: il nome della regione del connettore
  • PROJECT: il nome del tuo Google Cloud progetto

Monitorare l'utilizzo dei connettori

Il monitoraggio dell'utilizzo nel tempo può aiutarti a determinare quando modificare le impostazioni di un connettore. Ad esempio, se l'utilizzo della CPU aumenta improvvisamente, potresti provare ad aumentare il numero massimo di istanze per ottenere risultati migliori. Oppure, se stai raggiungendo il limite di throughput, potresti decidere di passare a un tipo di macchina più grande.

Per visualizzare i grafici relativi alla velocità effettiva, al numero di istanze e alle metriche di utilizzo della CPU del connettore nel tempo utilizzando la console Google Cloud :

  1. Vai alla pagina di panoramica di accesso VPC serverless.

    Vai ad Accesso VPC serverless

  2. Fai clic sul nome del connettore che vuoi monitorare.

  3. Seleziona il numero di giorni da visualizzare, compreso tra 1 e 90 giorni.

  4. Nel grafico Throughput, tieni il puntatore sopra il grafico per visualizzare il throughput recente del connettore.

  5. Nel grafico Numero di istanze, tieni il puntatore sopra il grafico per visualizzare il numero di istanze utilizzate di recente dal connettore.

  6. Nel grafico Utilizzo CPU, tieni il puntatore sopra il grafico per visualizzare l'utilizzo recente della CPU del connettore. Il grafico mostra l'utilizzo della CPU distribuito tra le istanze per il 50°, 95° e 99° percentile.

Eliminare un connettore

Prima di eliminare un connettore, devi rimuoverlo da tutte le risorse serverless che lo utilizzano ancora. L'eliminazione di un connettore prima di rimuoverlo dalle risorse serverless ti impedisce di eliminare la rete VPC in un secondo momento.

Per gli utenti del VPC condiviso che configurano i connettori nel progetto host del VPC condiviso, puoi utilizzare il comando gcloud compute networks vpc-access connectors describe per elencare i progetti in cui sono presenti risorse serverless che utilizzano un determinato connettore.

Per eliminare un connettore, utilizza la console Google Cloud o Google Cloud CLI:

Console

  1. Vai alla pagina di panoramica dell'accesso VPC serverless nella consoleGoogle Cloud :

    Vai ad Accesso VPC serverless

  2. Seleziona il connettore da eliminare.

  3. Fai clic su Elimina.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Utilizza il seguente comando gcloud per eliminare un connettore:

    gcloud compute networks vpc-access connectors delete CONNECTOR_NAME --region=REGION
    

    Sostituisci quanto segue:

    • CONNECTOR_NAME con il nome del connettore che vuoi eliminare
    • REGION con la regione in cui si trova il connettore

Gestire i vincoli personalizzati per i progetti

Questa sezione descrive come creare vincoli personalizzati per i connettori di accesso VPC serverless e applicarli a livello di progetto. Per informazioni sui criteri personalizzati dell'organizzazione, vedi Creare e gestire criteri personalizzati dell'organizzazione.

Google Cloud I criteri dell'organizzazione offrono un controllo centralizzato e programmatico sulle risorse della tua organizzazione. In qualità di amministratore dei criteri dell'organizzazione, puoi definire un criterio dell'organizzazione, ovvero un insieme di restrizioni chiamate vincoli che si applicano alle Google Cloud risorse e ai relativi discendenti nella Google Cloud gerarchia delle risorse. Puoi applicare i criteri dell'organizzazione a livello di organizzazione, cartella o progetto.

Policy dell'organizzazione fornisce vincoli predefiniti per vari serviziGoogle Cloud . Tuttavia, se vuoi un controllo più granulare e personalizzabile sui campi specifici limitati nelle norme della tua organizzazione, puoi anche creare norme dell'organizzazione personalizzate.

Vantaggi

L'accesso VPC serverless ti consente di scrivere un numero qualsiasi di vincoli personalizzati utilizzando la maggior parte dei campi configurati dall'utente nell'API Serverless VPC Access. Ad esempio, puoi creare un vincolo personalizzato che specifica le subnet che un connettore di accesso VPC serverless può utilizzare.

Una volta applicate, le richieste che violano un criterio che impone un vincolo personalizzato mostrano un messaggio di errore nella gcloud CLI e nei log di accesso VPC serverless. Il messaggio di errore contiene l'ID vincolo e la descrizione del vincolo personalizzato violato.

Ereditarietà delle norme

Per impostazione predefinita, i criteri dell'organizzazione vengono ereditati dai discendenti delle risorse su cui applichi il criterio. Ad esempio, se applichi un criterio a una cartella, Google Cloud il criterio viene applicato a tutti i progetti nella cartella. Per scoprire di più su questo comportamento e su come modificarlo, consulta le regole di valutazione della gerarchia.

Limitazioni

La specifica del tipo di macchina, delle istanze minime o delle istanze massime non è supportata.

Prima di iniziare

Assicurati di conoscere il tuo ID organizzazione.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per gestire le policy dell'organizzazione, chiedi all'amministratore di concederti il ruolo IAM Amministratore policy dell'organizzazione (roles/orgpolicy.policyAdmin) nella risorsa organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Creare un vincolo personalizzato

Un vincolo personalizzato è definito in un file YAML dalle risorse, dai metodi, dalle condizioni e dalle azioni supportati dal servizio su cui stai applicando il criterio dell'organizzazione. Le condizioni per i vincoli personalizzati sono definite utilizzando Common Expression Language (CEL). Per ulteriori informazioni su come creare condizioni nei vincoli personalizzati utilizzando CEL, consulta la sezione CEL di Creazione e gestione di vincoli personalizzati.

Per creare un file YAML per un vincolo personalizzato di accesso VPC serverless, consulta l'esempio seguente:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- vpcaccess.googleapis.com/Connector
methodTypes:
- CREATE
condition: "CONDITION"
actionType: ACTION
displayName: DISPLAY_NAME
description: DESCRIPTION

Sostituisci quanto segue:

  • ORGANIZATION_ID: l'ID organizzazione, ad esempio 123456789.

  • CONSTRAINT_NAME: il nome che vuoi assegnare al nuovo vincolo personalizzato. Un vincolo personalizzato deve iniziare con custom. e può includere solo lettere maiuscole, minuscole o numeri, ad esempio custom.defaultNetworkConstraint. La lunghezza massima di questo campo è di 70 caratteri, senza contare il prefisso.

  • CONDITION: una condizione CEL scritta in base a una rappresentazione di una risorsa di servizio supportata. Questo campo ha una lunghezza massima di 1000 caratteri. Ad esempio "resource.network == default".

  • ACTION: l'azione da intraprendere se la condizione condition è soddisfatta. Può essere ALLOW o DENY.

  • DISPLAY_NAME: un nome facile da ricordare per il vincolo. Questo campo ha una lunghezza massima di 200 caratteri.

  • DESCRIPTION: una descrizione intuitiva del vincolo da visualizzare come messaggio di errore in caso di violazione della policy, ad esempio "Require network to not be set to default.". Questo campo ha una lunghezza massima di 2000 caratteri.

Per saperne di più su come creare un vincolo personalizzato, consulta Definizione di vincoli personalizzati.

Configurare un vincolo personalizzato

Dopo aver creato il file YAML per un nuovo vincolo personalizzato, devi configurarlo per renderlo disponibile per i criteri dell'organizzazione nella tua organizzazione. Per configurare un vincolo personalizzato, utilizza il comando gcloud org-policies set-custom-constraint:
gcloud org-policies set-custom-constraint CONSTRAINT_PATH
Sostituisci CONSTRAINT_PATH con il percorso completo del tuo file di vincoli personalizzati. Ad esempio: /home/user/customconstraint.yaml. Una volta completati, i vincoli personalizzati sono disponibili come policy dell'organizzazione nell'elenco delle policy dell'organizzazione Google Cloud . Per verificare che il vincolo personalizzato esista, utilizza il comando gcloud org-policies list-custom-constraints:
gcloud org-policies list-custom-constraints --organization=ORGANIZATION_ID
Sostituisci ORGANIZATION_ID con l'ID della risorsa dell'organizzazione. Per saperne di più, consulta Visualizzare le policy dell'organizzazione.

Applica un vincolo personalizzato

Puoi applicare un vincolo creando un criterio dell'organizzazione che lo fa riferimento e poi applicando questo criterio dell'organizzazione a una risorsa. Google Cloud

Console

  1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

    Vai a Policy dell'organizzazione

  2. Nel selettore di progetti, seleziona il progetto per cui vuoi impostare il criterio dell'organizzazione.
  3. Dall'elenco nella pagina Criteri organizzazione, seleziona il vincolo per visualizzare la pagina Dettagli criterio relativa a quel vincolo.
  4. Per configurare la policy dell'organizzazione per questa risorsa, fai clic su Gestisci policy.
  5. Nella pagina Modifica policy, seleziona Esegui override della policy dell'unità organizzativa principale.
  6. Fai clic su Aggiungi una regola.
  7. Nella sezione Applicazione, seleziona se l'applicazione di questa policy dell'organizzazione è attiva o disattivata.
  8. (Facoltativo) Per rendere la policy dell'organizzazione condizionale in base a un tag, fai clic su Aggiungi condizione. Tieni presente che se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per saperne di più, vedi Impostazione di un criterio dell'organizzazione con tag.
  9. Fai clic su Testa modifiche per simulare l'effetto della policy dell'organizzazione. La simulazione delle policy non è disponibile per i vincoli gestiti legacy. Per saperne di più, consulta Testare le modifiche alle policy dell'organizzazione con Policy Simulator.
  10. Per completare e applicare la policy dell'organizzazione, fai clic su Imposta policy. L'applicazione del criterio richiede fino a 15 minuti.

gcloud

Per creare una policy dell'organizzazione con regole booleane, crea un file YAML della policy che faccia riferimento al vincolo:

      name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
      spec:
        rules:
        - enforce: true
    

Sostituisci quanto segue:

  • PROJECT_ID: il progetto su cui vuoi applicare il vincolo.
  • CONSTRAINT_NAME: il nome che hai definito per il vincolo personalizzato. Ad esempio, custom.defaultNetworkConstraint.

Per applicare il criterio dell'organizzazione contenente il vincolo, esegui questo comando:

    gcloud org-policies set-policy POLICY_PATH
    

Sostituisci POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione. L'applicazione del criterio richiede fino a 15 minuti.

Testa il vincolo personalizzato

Per testare l'esempio che limita le impostazioni di ingresso, implementa un connettore nel progetto con la rete impostata su default:

gcloud compute networks vpc-access connectors create org-policy-test \
    --project=PROJECT_ID \
    --region=REGION_ID \
    --network=default

L'output è il seguente:

Operation denied by custom org policies: ["customConstraints/custom.defaultNetworkConstraint": "Require network to not be set to default."]

Esempi di norme personalizzate dell'organizzazione per i casi d'uso comuni

La seguente tabella fornisce esempi di vincoli personalizzati che potresti trovare utili con i connettori di accesso VPC serverless:

Descrizione Sintassi del vincolo
Richiedi che i connettori di accesso VPC serverless possano utilizzare solo una rete specifica.
    name: organizations/ORGANIZATION_ID/customConstraints/custom.allowlistNetworks
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.network == 'allowlisted-network'"
    actionType: ALLOW
    displayName: allowlistNetworks
    description: Require connectors to use a specific network.
Descrizione Sintassi del vincolo
Richiedi che i connettori di accesso VPC serverless abbiano accesso solo a una subnet specifica.
    name: organizations/ORGANIZATION_ID/customConstraints/custom.restrictSubnetForProject
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.subnet.name == 'allocated-subnet'"
    actionType: ALLOW
    displayName: restrictSubnetForProject
    description: This project is only allowed to use the subnet "allocated-subnet".

Risoluzione dei problemi

Autorizzazioni service account

Per eseguire operazioni nel tuo progetto Google Cloud , l'accesso VPC serverless utilizza il account di servizio agente di servizio di accesso VPC serverless. L'indirizzo email di questo service account ha il seguente formato:

service-PROJECT_NUMBER@gcp-sa-vpcaccess.iam.gserviceaccount.com

Per impostazione predefinita, questo account di servizio dispone del ruolo Agente di servizio di accesso VPC serverless (roles/vpcaccess.serviceAgent). Le operazioni di accesso VPC serverless potrebbero non riuscire se modifichi le autorizzazioni di questo account.

Scarse prestazioni di rete o utilizzo elevato della CPU inattiva

L'utilizzo di un singolo connettore per migliaia di istanze può causare un peggioramento delle prestazioni e un utilizzo elevato della CPU inattiva. Per risolvere il problema, distribuisci i servizi tra più connettori.

Problemi con l'MTU personalizzata

Se riscontri problemi con un'MTU personalizzata, assicurati di utilizzare l'impostazione MTU predefinita per Cloud Run.

Errori

Errore: il service account richiede il ruolo Agente di servizio

Se utilizzi il vincolo dei criteri dell'organizzazione Limita l'utilizzo del servizio di risorse per bloccare Cloud Deployment Manager (deploymentmanager.googleapis.com), potresti visualizzare il seguente messaggio di errore:

Serverless VPC Access service account (service-<PROJECT_NUMBER>@gcp-sa-vpcaccess.iam.gserviceaccount.com) needs Serverless VPC Access Service Agent role in the project.

Imposta il criterio dell'organizzazione per rimuovere Deployment Manager dalla denylist o aggiungerlo alla consent list.

Errore di creazione del connettore

Se la creazione di un connettore genera un errore, prova a procedere nel seguente modo:

  • Specifica un intervallo IP interno RFC 1918 che non si sovrapponga a nessuna prenotazione di indirizzi IP esistente nella rete VPC.
  • Concedi al tuo progetto l'autorizzazione a utilizzare le immagini VM di Compute Engine dal progetto con ID serverless-vpc-access-images. Per saperne di più su come aggiornare di conseguenza la policy dell'organizzazione, consulta Impostare i vincoli di accesso alle immagini.

Impossibile accedere alle risorse

Se hai specificato un connettore, ma non riesci ancora ad accedere alle risorse nella tua rete VPC, assicurati che non siano presenti regole firewall nella tua rete VPC con una priorità inferiore a 1000 che negano l'accesso dall'intervallo di indirizzi IP del connettore.

Se configuri un connettore in un progetto di servizio VPC condiviso, assicurati che le regole firewall consentano l'accesso dalla tua infrastruttura serverless al connettore.

Errore di connessione rifiutata

Se ricevi errori connection refused o connection timeout che peggiorano le prestazioni della rete, le tue connessioni potrebbero aumentare senza limiti nelle invocazioni della tua applicazione serverless. Per limitare il numero massimo di connessioni utilizzate per istanza, utilizza una libreria client che supporti i pool di connessioni. Per esempi dettagliati di come utilizzare i pool di connessioni, vedi Gestire le connessioni ai database.

Errore Risorsa non trovata

Quando elimini una rete VPC o una regola firewall, potresti visualizzare un messaggio simile al seguente: The resource "aet-uscentral1-subnet--1-egrfw" was not found.

Per informazioni su questo errore e sulla relativa soluzione, consulta la sezione Errore Risorsa non trovata nella documentazione sulle regole firewall VPC.

Passaggi successivi