Impostare il livello di rete

Questa pagina mostra come specificare un livello di rete per i carichi di lavoro. Prima di impostare manualmente un livello di rete, esamina le informazioni nella panoramica di Network Service Tiers.

Specifiche

Network Service Tiers è supportato solo dalle risorse Google Cloud idonee. Il livello Standard è disponibile solo in alcune regioni. Il livello Premium è disponibile in ogni regione di Google Cloud.

Pool di indirizzi IP esterni

Il fatto che un indirizzo IP esterno sia regionale o globale (e, se a livello di regione, il suo livello di rete) determina il pool da cui viene scelto l'indirizzo IP. Gli indirizzi IP di un pool non possono essere spostati in un altro.

Nel livello Standard, il pool di indirizzi IP esterni a livello di regione è univoco per la regione specifica, non per il tipo di risorsa idonea. Ad esempio, le istanze di macchine virtuali (VM) e i bilanciatori del carico Google Cloud che utilizzano il livello Standard (bilanciatori del carico delle applicazioni esterni, bilanciatori del carico di rete con proxy esterno e bilanciatori del carico di rete esterni) utilizzano tutti gli indirizzi IP del pool di livello Standard della regione scelta.

Nel livello Premium, i bilanciatori del carico delle applicazioni esterni e i bilanciatori del carico di rete proxy esterni utilizzano indirizzi IP esterni globali, mentre i bilanciatori del carico di rete passthrough esterni e le istanze VM utilizzano indirizzi IP esterni regionali. In ogni regione, il pool di indirizzi IP esterni a livello di regione per il livello Premium è separato dal pool di indirizzi IP esterni globali.

Indirizzi IP non assegnati

Gli indirizzi IP esterni a livello di regione non utilizzati nel livello Standard si comportano in modo diverso dagli indirizzi IP non utilizzati nel livello Premium.

Gli indirizzi IP del livello Standard vengono automaticamente parcheggiati quando non sono assegnati a una risorsa idonea. Quando un indirizzo IP è parcheggiato, il bilanciatore del carico risponde a determinate richieste a quell'indirizzo IP; ad esempio, le richieste HTTP inviate a un indirizzo IP del livello Standard parcheggiato vengono inviate a una pagina web HTTP 404 (non trovata) ospitata da Google. Il traffico inviato agli indirizzi IP del livello Standard parcheggiati non viene semplicemente eliminato. Inoltre, gli indirizzi IP del livello Standard in fase di elaborazione per l'assegnazione a una risorsa possono comportarsi come se fossero parcheggiati.

Un indirizzo IP esterno di livello Standard assegnato a un'istanza VM potrebbe essere spostato in uno stato di parcheggio durante la migrazione live se quest'ultima richiede più di 20 minuti. Un indirizzo IP esterno del livello Premium assegnato a una VM elimina il traffico durante le migrazioni dal vivo di lunga durata.

Impostazione del livello di rete predefinito per un progetto

Segui queste indicazioni per definire un livello di rete predefinito per il tuo progetto. Questo livello viene utilizzato dalle risorse idonee appena create nel progetto, a meno che non specifichi un livello per le risorse stesse. La modifica del livello di rete predefinito per un progetto non cambia il livello delle risorse esistenti, ma cambia il livello di rete per le nuove risorse se non specifichi un livello di rete quando crei la nuova risorsa.

Console

  1. Nella console Google Cloud, vai alla pagina Network Service Tiers (Livelli di servizi di rete).

    Vai alla pagina Network Service Tiers

  2. Fai clic su Cambia livello.

  3. Seleziona Premium o Standard, quindi fai clic su Cambia.

gcloud

gcloud compute project-info update \
    --default-network-tier NETWORK_TIER

Sostituisci NETWORK_TIER con PREMIUM o STANDARD. Il valore predefinito è PREMIUM.

API

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/setNetworkTier
{
  "networkTier": "STANDARD"
}

Sostituisci PROJECT_ID con l'ID progetto.

Terraform

Puoi utilizzare una risorsa Terraform per impostare il livello di rete per un progetto. In questo esempio viene impostato il livello su STANDARD.

resource "google_compute_project_default_network_tier" "project-tier" {
  project      = var.project_id # Replace this with your project ID in quotes
  network_tier = "STANDARD"
}

Il livello di rete specificato per una risorsa ha sempre la precedenza sul livello di rete predefinito definito per il progetto. Ad esempio, se il livello di rete predefinito del tuo progetto è Premium, puoi comunque creare un'istanza o un bilanciatore del carico nel livello Standard.

Livello di configurazione.
Livello di configurazione del livello (fai clic per ingrandire).

Creazione di indirizzi IP esterni statici

Quando crei un indirizzo IP esterno statico a livello di regione, puoi specificare PREMIUM o STANDARD per il livello di rete. Se non specifichi un livello di rete, l'indirizzo viene creato utilizzando il livello predefinito del progetto.

Per prenotare un indirizzo IP esterno statico a livello di regione che utilizza il livello Standard, procedi nel seguente modo.

Console

  1. Nella console Google Cloud, vai alla pagina Indirizzi IP esterni.

    Vai alla pagina Indirizzi IP esterni

  2. Fai clic su Prenota indirizzo statico.

  3. In Tipo, seleziona A livello di regione, quindi seleziona una regione in cui è supportato il livello Standard.

  4. In Livello di servizio di rete, seleziona Standard.

  5. Compila gli altri campi in base alle tue esigenze.

  6. Fai clic su Prenota.

gcloud

gcloud compute addresses create my-standard-tier-ip-address \
     --region REGION \
     --network-tier STANDARD

Sostituisci REGION con la regione in cui stai creando l'indirizzo IP a livello di regione.

Per altri flag della riga di comando, vedi indirizzi di gcloud compute.

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
{
  "name": "my-standard-tier-ip-address",
  "networkTier": "STANDARD"
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • REGION: la regione in cui stai creando la regola di forwarding

Terraform

Puoi utilizzare una risorsa Terraform per impostare il livello di rete per un indirizzo IP esterno regionale. In questo esempio viene impostato il livello su STANDARD.

resource "google_compute_address" "ip-address" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "my-standard-tier-ip-address"
  region       = "us-central1"
  network_tier = "STANDARD"
}

Creazione di regole di forwarding

Quando crei una nuova regola di forwarding, puoi specificare il livello di rete. I valori possibili sono PREMIUM (predefinito) e STANDARD. Se non specifichi un livello di rete, la regola di forwarding viene creata utilizzando il livello predefinito del progetto:

  • Se specifichi un indirizzo IP esterno con il flag --address, quell'indirizzo IP deve trovarsi nello stesso livello specificato per la regola di forwarding.
  • Se crei una regola di forwarding e non specifichi il flag --address, Google Cloud alloca un indirizzo IP temporaneo del livello appropriato.

Il livello Standard è disponibile solo per le regole di forwarding a livello di regione. Le regole di inoltro globali utilizzano sempre il livello Premium.

Un bilanciatore del carico può utilizzare sia il livello Premium che il livello Standard avendo due diverse regole di forwarding, una per ogni livello. Ciò può essere utile negli scenari in cui un'applicazione richiede la latenza più bassa fornita dal livello Premium e un'altra, che forse offre contenuti statici, funziona bene con una latenza più alta e può trovarsi nel livello Standard.

Console

Per creare una regola di forwarding di livello Standard nella console Google Cloud, devi creare o aggiornare un bilanciatore del carico esistente. I bilanciatori del carico che hanno servizi di backend in più di una regione non possono utilizzare il livello Standard. Per istruzioni sulla scelta e sulla creazione di un bilanciatore del carico, consulta la documentazione sul bilanciamento del carico.

  1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

    Vai alla pagina Bilanciamento del carico

  2. Fai clic sul nome di un bilanciatore del carico esistente, quindi su Modifica .

  3. Fai clic su Configurazione frontend.

  4. Fai clic su Aggiungi IP e porta frontend.

  5. In Livello di servizio di rete, fai clic su Standard.

  6. Compila gli altri campi in base alle tue esigenze.

  7. Fai clic su Fine, quindi su Aggiorna.

gcloud

gcloud compute forwarding-rules create my-standard-tier-regional-rule \
     --load-balancing-scheme=SCHEME \
     --network-tier STANDARD \
     --address my-standard-tier-ip-address \
     --region REGION \
     --ports PORTS \
     [--target-http-proxy=TARGET_HTTP_PROXY \
     | --target-https-proxy=TARGET_HTTPS_PROXY \
     | --target-ssl-proxy=TARGET_SSL_PROXY \
     | --target-tcp-proxy=TARGET_TCP_PROXY \
     | --target-pool=TARGET_POOL \
     | --target-instance=TARGET_INSTANCE]

Sostituisci quanto segue:

  • SCHEME: lo schema di bilanciamento del carico del bilanciatore del carico
  • REGION: la regione in cui stai creando la regola di forwarding
  • TARGET_HTTP_PROXY o TARGET_HTTPS_PROXY o TARGET_SSL_PROXY o TARGET_TCP_PROXY o TARGET_POOL o TARGET_INSTANCE: il target appropriato per la regola, a seconda del flag target specificato

Per altri flag della riga di comando, consulta gcloud compute regole di forwarding.

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules
{
  "name": "my-standard-tier-regional-rule",
  "networkTier": "STANDARD",
    "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/my-standard-tier-ip-address",
  "IPProtocol": "tcp",
    "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetPools/TARGET_POOL"
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • REGION: la regione in cui stai creando la regola di forwarding
  • TARGET_HTTP_PROXY o TARGET_HTTPS_PROXY o TARGET_SSL_PROXY o TARGET_TCP_PROXY o TARGET_POOL o TARGET_INSTANCE: il target appropriato per la regola, a seconda del flag target specificato

Terraform

Puoi utilizzare una risorsa Terraform per impostare il livello di rete per una regola di forwarding. In questo esempio il livello viene impostato su STANDARD per una regola di forwarding che punta a un'istanza di destinazione.

resource "google_compute_forwarding_rule" "target-fr" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "target-instance-forwarding-rule"
  region       = "us-east4"
  target       = google_compute_target_instance.target.id
  port_range   = "80"
  network_tier = "STANDARD"
}

Istanze VM

Creazione di istanze VM

Quando crei un'istanza che si connette direttamente a internet, puoi specificare il livello di rete. I valori possibili sono PREMIUM (valore predefinito) e STANDARD. Se non specifichi un livello di rete, l'indirizzo viene creato utilizzando il livello predefinito del progetto. Il livello di rete è rilevante solo se l'istanza comunica direttamente con internet con un indirizzo IPv4 regionale. Per il traffico di risposta inviato da un bilanciatore del carico, si applica il livello di rete della regola di forwarding.

Se assegni un indirizzo IP esterno statico utilizzando un indirizzo IP riservato, il livello di rete dell'indirizzo IP deve corrispondere al livello di rete dell'istanza. Se assegni un indirizzo IP esterno temporaneo, il livello di rete dell'istanza viene utilizzato per assegnare un indirizzo IP dal pool corrispondente.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai alla pagina Istanze VM

  2. Fai clic su Crea istanza.

  3. Fai clic su Gestione, sicurezza, dischi, networking, single-tenancy.

  4. Fai clic sulla scheda Networking.

  5. In Interfacce di rete, nell'interfaccia di rete predefinita, fai clic su Modifica .

  6. In Livello di servizio di rete, seleziona Standard.

  7. Compila gli altri campi in base alle tue esigenze.

  8. Fai clic su Crea.

gcloud

gcloud compute instances create my-standard-tier-instance \
    --network-tier STANDARD

Per altri flag della riga di comando, vedi Istanze gcloud compute.

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
  "name": "my-standard-tier-instance",
  "networkInterfaces":[
   {
    "network": "global/networks/default",
    "name": "nic0",
    "accessConfigs": [
     {
     "name": "External NAT",
     "type":"ONE_TO_ONE_NAT",
     "networkTier":"STANDARD"
     }
    ]
   }
  ],
    "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/my-standard-tier-ip-address",
  ... other parameters
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • ZONE: la zona in cui stai creando l'istanza
  • REGION: la regione della risorsa

    Per un elenco degli altri parametri obbligatori e facoltativi, consulta Risorsa REST: instances.

Terraform

Puoi utilizzare una risorsa Terraform per impostare il livello di rete per una VM di Compute Engine. In questo esempio viene impostato il livello su STANDARD.

resource "google_compute_address" "ip-address" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "my-standard-tier-ip-address"
  region       = "us-central1"
  network_tier = "STANDARD"
}

Aggiunta di una configurazione di accesso a un'istanza

Quando crei una configurazione di accesso per un'istanza (ovvero, assegnando un indirizzo IPv4 esterno a livello di regione temporaneo o statico all'interfaccia di rete di un'istanza), puoi specificare un livello di rete per l'interfaccia di rete dell'istanza. Se specifichi un indirizzo IPv4 esterno a livello di regione esistente o crei un nuovo indirizzo, l'indirizzo e l'interfaccia di rete dell'istanza devono utilizzare livelli di servizio di rete corrispondenti. I valori possibili sono PREMIUM e STANDARD. Se non specifichi un livello di rete e non specifichi un indirizzo IP, l'interfaccia di rete dell'istanza e un nuovo indirizzo IPv4 esterno temporaneo a livello di regione utilizzano il livello predefinito del progetto. Se non specifichi un livello di rete ma specifichi un indirizzo IP, Google Cloud restituisce un errore se il livello di rete dell'indirizzo IP non corrisponde al livello predefinito del progetto.

gcloud

gcloud compute instances add-access-config INSTANCE_NAME \
    --network-interface INTERFACE_NAME; default="nic0" \
    --access-config-name=ACCESS_CONFIG_NAME; default="external-nat" \
    --address=IP_ADDRESS \
    --network-tier PREMIUM | STANDARD

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome dell'istanza
  • INTERFACE_NAME: il nome dell'interfaccia; il valore predefinito è nic0 (il nome dell'interfaccia predefinita nell'istanza)
  • ACCESS_CONFIG_NAME: il nome della configurazione dell'accesso per l'interfaccia
  • IP_ADDRESS: l'URL della risorsa dell'indirizzo IP, se stai specificando un indirizzo IP

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig?networkInterface=nic0
{
  "name": INSTANCE_NAME,
  "networkTier": "STANDARD",
  ... other parameters
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • ZONE: la zona dell'istanza
  • INSTANCE_NAME: il nome dell'istanza

Per un elenco degli altri parametri obbligatori e facoltativi, consulta Risorsa REST: instances.

Aggiornamento del livello di rete di un'istanza

Puoi utilizzare il comando update-access-config per modificare il livello di rete dell'interfaccia di rete di un'istanza. I valori possibili per il livello di rete sono PREMIUM e STANDARD. Se all'istanza è già assegnato un indirizzo IPv4 esterno a livello di regione nella configurazione dell'accesso esistente, devi rimuovere questo indirizzo IP esterno prima di modificare il livello di rete dell'interfaccia. Per ulteriori informazioni su come il livello di rete di un indirizzo IPv4 esterno a livello di regione deve corrispondere al livello di rete dell'interfaccia di rete dell'istanza, consulta Aggiunta di una configurazione di accesso a un'istanza.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai alla pagina Istanze VM

  2. Fai clic sul nome di un'istanza.

  3. Fai clic su Modifica .

  4. In Interfacce di rete, nell'interfaccia di rete predefinita, fai clic su Modifica .

  5. In Livello di servizio di rete, seleziona Standard.

  6. Fai clic su Salva.

gcloud

gcloud compute instances update-access-config INSTANCE_NAME \
    --network-interface nic0 \
    --network-tier STANDARD

Sostituisci INSTANCE_NAME con il nome dell'istanza.

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
{
  "networkTier": "STANDARD",
  ... other parameters
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • ZONE: la zona dell'istanza
  • INSTANCE_NAME: il nome dell'istanza

Creazione di un modello di istanza che utilizza il livello Standard

Quando configuri il livello di rete durante la creazione del modello di istanza, segui questi passaggi.

Console

  1. Nella console Google Cloud, vai alla pagina Modelli di istanza.

    Vai alla pagina Modelli di istanza

  2. Fai clic su Crea modello istanza.

  3. Fai clic su Gestione, sicurezza, dischi, networking, single-tenancy.

  4. Fai clic sulla scheda Networking.

  5. In Livello di servizio di rete, seleziona Standard.

  6. Compila gli altri campi in base alle tue esigenze.

  7. Fai clic su Crea.

gcloud

gcloud compute instance-templates create my-standard-tier-instance-template \
    --network-tier STANDARD

Per altri flag della riga di comando, consulta gcloud compute instance-templates.

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceTemplates
{
  "name": "my-standard-tier-instance-template",
  "networkInterfaces[].accessConfigs[].networkTier": "STANDARD",
  ... other parameters
}

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • ZONE: la zona del modello di istanza

Per un elenco di altri parametri obbligatori e facoltativi, consulta Risorsa REST: instanceTemplates.

Terraform

Puoi utilizzare una risorsa Terraform per impostare il livello di rete per un modello di istanza Compute Engine. In questo esempio viene impostato il livello su STANDARD.

resource "google_compute_instance_template" "template" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "template"
  machine_type = "e2-medium"
  disk {
    source_image = "debian-cloud/debian-10"
    boot         = true
  }
  network_interface {
    network = "default"
    access_config {
      network_tier = "STANDARD"
    }
  }
}

Configurazione di NAT utilizzando indirizzi IP di un livello di rete specifico

Quando crei un gateway Cloud NAT, Google Cloud consente di assegnare gli indirizzi IP sia del livello Standard che di Premium.

Per ulteriori informazioni, vedi Configurare NAT utilizzando indirizzi IP di un livello di rete specifico.