Creare e utilizzare intervalli interni

Questo documento descrive come creare, utilizzare ed eliminare gli intervalli interni.

Gli intervalli interni ti aiutano a gestire uno spazio indirizzi IP unificato nelle reti Virtual Private Cloud (VPC) consentendoti di allocare blocchi di indirizzi IP interni e di specificare come possono essere utilizzati.

Prima di iniziare

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per lavorare con gli intervalli interni, chiedi all'amministratore di concederti il ruolo IAM Amministratore di rete Compute (roles/compute.networkAdmin) nel progetto. Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

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

Prenotare intervalli interni

Quando crei un intervallo interno, devi specificare almeno due elementi: gli indirizzi IP da allocare e la rete in cui allocare gli indirizzi. Puoi creare un intervallo interno IPv4 o IPv6 (Anteprima) con un blocco CIDR specifico oppure puoi chiedere di assegnare automaticamente un blocco IPv4. Google Cloud Non puoi creare un intervallo interno IPv6 con un blocco di indirizzi allocato automaticamente.

Quando richiedi un blocco CIDR IPv4 allocato automaticamente, fornisci una lunghezza del prefisso e uno o più blocchi CIDR IPv4 target facoltativi. Se non specifichi un blocco CIDR di destinazione, Google Cloud utilizza gli intervalli predefiniti di10.0.0.0/8 per le reti VPC in modalità personalizzata o 10.128.0.0/9 per le reti VPC in modalità automatica. Google Cloud tiene conto delle allocazioni degli indirizzi IP esistenti e assegna all'intervallo interno un blocco CIDR libero della dimensione scelta dai blocchi CIDR di destinazione. Puoi perfezionare ulteriormente questa allocazione fornendo un elenco facoltativo di blocchi CIDR da escludere (Anteprima) utilizzando gcloud CLI o inviando una richiesta API. Google Cloud alloca un blocco di indirizzi IP all'intervallo interno che non si sovrappone a nessun blocco escluso. L'elenco dei blocchi esclusi non può essere aggiornato dopo la creazione di un intervallo interno.

Gli intervalli interni IPv6 (Anteprima) ti consentono di impedire l'assegnazione automatica di indirizzi IP alle nuove subnet solo IPv6 o a doppio stack. Gli intervalli IPv6 interni devono avere il tipo di utilizzo EXTERNAL_TO_VPC e il tipo di peering FOR_SELF. Devi includere un blocco CIDR IPv6 specifico e il overlaps deve essere vuoto o non specificato.

Per impedire agli utenti di aggiornare il blocco CIDR o la configurazione dell'overlapping di un intervallo interno, puoi creare un intervallo interno immutabile (Anteprima). Gli intervalli interni immutabili impediscono le modifiche a queste proprietà, ma puoi comunque aggiornare la descrizione. L'immutabilità non può essere modificata dopo la creazione dell'intervallo interno.

Per impostazione predefinita, Google Cloud blocca la creazione di intervalli o risorse interni se condividono indirizzi IP sovrapposti nella stessa rete VPC. Puoi configurare un intervallo interno IPv4 per consentire l'intersezione con gli intervalli di indirizzi di route, subnet o entrambi. Non puoi creare Google Cloud risorse che utilizzano indirizzi IP di un intervallo interno esistente, a meno che non associ esplicitamente la risorsa all'intervallo interno (per le subnet) o configuri la sovrapposizione (per le route). Per creare un intervallo interno con sovrapposizione, utilizza Google Cloud CLI o invia una richiesta API.

Console

  1. Nella console Google Cloud, vai alla pagina Intervalli interni.

    Vai a Intervalli interni

  2. Fai clic su Prenota intervallo interno.

  3. Inserisci un nome.

  4. (Facoltativo) Inserisci una descrizione.

  5. Seleziona una versione IP.

    • Se selezioni IPv4, procedi nel seguente modo:
      1. Specifica se l'intervallo interno è immutabile (Anteprima).
      2. Seleziona un metodo di prenotazione.
        • Se selezioni Automatico, seleziona una lunghezza del prefisso e poi inserisci un intervallo di indirizzi IP di destinazione in notazione CIDR.
        • Se selezioni Fammi specificare, inserisci un intervallo IP in notazione CIDR.
      3. Seleziona una rete.
      4. Seleziona un tipo di peering.
      5. Seleziona un tipo di utilizzo.
    • Se selezioni IPv6 (Anteprima), procedi nel seguente modo:
      1. Specifica se l'intervallo interno è immutabile (Anteprima).
      2. Seleziona Fammi specificare e poi inserisci un blocco CIDR IPv6 o IPv6 mappato su IPv4.
      3. Seleziona una rete.
      4. Fai clic su Peering e poi seleziona Per me.
      5. Fai clic su Utilizzo e seleziona Esterno alla VPC.
  6. Fai clic su Prenota.

gcloud

  • Per prenotare un intervallo interno per un blocco CIDR IPv4 o IPv6 (Anteprima) specifico, utilizza il gcloud network-connectivity internal-ranges create comando.

    gcloud network-connectivity internal-ranges create RANGE_NAME \
        --ip-cidr-range=CIDR_RANGE \
        --network=NETWORK_NAME \
        --description="DESCRIPTION" \
        --peering=PEERING_TYPE \
        --usage=USAGE_TYPE
    

    Sostituisci quanto segue:

    • RANGE_NAME: il nome dell'intervallo interno
    • CIDR_RANGE: il blocco CIDR IPv4, IPv6 o IPv6 mappato su IPv4 da allocare al nuovo intervallo interno
      • Se specifichi un blocco IPv6 (Anteprima), le opzioni sono limitate nei seguenti modi:
        • Il tipo peering è limitato a FOR_SELF.
        • Il tipo usage è limitato a EXTERNAL_TO_VPC.
    • NETWORK_NAME: il nome della rete in cui creare l'intervallo interno
    • DESCRIPTION: una descrizione facoltativa dell'intervallo interno
    • PEERING_TYPE: il tipo di peering dell'intervallo interno

      Le opzioni sono FOR_SELF, FOR_PEER e NOT_SHARED. FOR_SELF è il valore predefinito.

    • USAGE_TYPE: il tipo di utilizzo dell'intervallo interno

      Le opzioni sono FOR_VPC, EXTERNAL_TO_VPC e FOR_MIGRATION. Il valore predefinito è FOR_VPC.

  • Per prenotare un intervallo interno IPv4 con un blocco CIDR allocato automaticamente, utilizza il seguente comando:

    gcloud network-connectivity internal-ranges create RANGE_NAME \
        --network=NETWORK_NAME \
        --prefix-length=PREFIX_LENGTH \
        --target-cidr-range=TARGET_CIDR_RANGE \
        --peering=PEERING_TYPE \
        --usage=USAGE_TYPE \
        --description="DESCRIPTION"
    

    Sostituisci quanto segue:

    • PREFIX_LENGTH: la lunghezza del prefisso degli indirizzi IP allocati
    • TARGET_CIDR_RANGE: il blocco CIDR di destinazione da cui allocare un blocco di indirizzi IPv4

      Puoi inserire più blocchi CIDR in un elenco separato da virgole. Il valore predefinito è 10.0.0.0/8 per le reti VPC in modalità personalizzata o 10.128.0.0/9 per le reti VPC in modalità automatica.

  • Se vuoi escludere intervalli di indirizzi IP quando prenoti un intervallo interno IPv4 con un blocco CIDR allocato automaticamente (Anteprima), utilizza il seguente comando:

    gcloud alpha network-connectivity internal-ranges create RANGE_NAME \
        --network=NETWORK_NAME \
        --prefix-length=PREFIX_LENGTH \
        --target-cidr-range=TARGET_CIDR_RANGE \
        --peering=PEERING_TYPE \
        --usage=USAGE_TYPE \
        --description="DESCRIPTION" \
        --exclude-cidr-ranges=EXCLUDED_RANGES
    

    Sostituisci EXCLUDED_RANGES con un elenco separato da virgole di uno o più blocchi CIDR IPv4 da escludere. Google Cloud assegna un blocco di indirizzi IP all' intervallo interno che non si sovrappone a nessun blocco escluso. L'elenco non può essere aggiornato dopo la creazione dell'intervallo interno.

  • Per prenotare un intervallo interno IPv4 con sovrapposizione, utilizza il seguente comando:

    gcloud network-connectivity internal-ranges create RANGE_NAME \
        --ip-cidr-range=CIDR_RANGE \
        --network=NETWORK_NAME \
        --description="DESCRIPTION" \
        --peering=PEERING_TYPE \
        --usage=USAGE_TYPE \
        --overlaps=OVERLAPS
    

    Sostituisci OVERLAPS con il tipo di sovrapposizione da consentire. Le opzioni sono OVERLAP_EXISTING_SUBNET_RANGE e OVERLAP_ROUTE_RANGE. Puoi includere entrambi i valori in un elenco separato da virgole.

  • Per prenotare un intervallo interno immutabile (Anteprima), utilizza il seguente comando:

    gcloud network-connectivity internal-ranges create RANGE_NAME \
        --ip-cidr-range=CIDR_RANGE \
        --network=NETWORK_NAME \
        --description="DESCRIPTION" \
        --peering=PEERING_TYPE \
        --usage=USAGE_TYPE \
        --immutable
    

API

  • Per prenotare un intervallo interno per un blocco CIDR IPv4 o IPv6 specifico (Anteprima), invia una richiesta POST al metodoprojects.locations.internalRanges.create.

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
    {
      "ipCidrRange": "CIDR_RANGE",
      "network": "NETWORK_NAME",
      "description": "DESCRIPTION",
      "peering": "PEERING_TYPE",
      "usage": "USAGE_TYPE"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto principale per l'intervallo interno
    • RANGE_NAME: il nome dell'intervallo interno
    • CIDR_RANGE: il blocco CIDR IPv4, IPv6 o IPv6 mappato su IPv4 da allocare all'intervallo interno
      • Se specifichi un blocco IPv6 (Anteprima), le opzioni sono limitate nei seguenti modi:
        • Il tipo peering è limitato a FOR_SELF.
        • Il tipo usage è limitato a EXTERNAL_TO_VPC.
    • NETWORK_NAME: il nome della rete in cui creare l'intervallo interno
    • DESCRIPTION: una descrizione facoltativa del nuovo intervallo interno
    • PEERING_TYPE: il tipo di peering dell'intervallo interno

      Le opzioni sono FOR_SELF, FOR_PEER e NOT_SHARED. FOR_SELF è il valore predefinito.

    • USAGE_TYPE: il tipo di utilizzo dell'intervallo interno

      Le opzioni sono FOR_VPC, EXTERNAL_TO_VPC e FOR_MIGRATION. Il valore predefinito è FOR_VPC.

  • Per prenotare un intervallo IPv4 interno con un blocco CIDR allocato automaticamente, effettua la seguente richiesta:

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
    {
      "prefixLength": PREFIX_LENGTH,
      "targetCidrRange": "TARGET_CIDR_RANGE",
      "network": "NETWORK_NAME",
      "description": "DESCRIPTION",
      "peering": "PEERING_TYPE",
      "usage": "USAGE_TYPE"
    }
    

    Sostituisci quanto segue:

    • PREFIX_LENGTH: la lunghezza del prefisso CIDR per il blocco di indirizzi IP dell'intervallo
    • TARGET_CIDR_RANGE: il blocco CIDR di destinazione da cui allocare un blocco di indirizzi IPv4

      Puoi specificare più intervalli CIDR in un array JSON. Il valore predefinito è 10.0.0.0/8 per le reti VPC in modalità personalizzata o 10.128.0.0/9 per le reti VPC in modalità automatica.

  • Se vuoi escludere intervalli di indirizzi IP quando prenoti un intervallo interno IPv4 con un blocco CIDR allocato automaticamente (Anteprima), effettua la seguente richiesta:

    POST https://networkconnectivity.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
    {
      "prefixLength": PREFIX_LENGTH,
      "targetCidrRange": "TARGET_CIDR_RANGE",
      "network": "NETWORK_NAME",
      "description": "DESCRIPTION",
      "peering": "PEERING_TYPE",
      "usage": "USAGE_TYPE",
      "excludeCidrRanges": ["EXCLUDED_RANGE_1","EXCLUDED_RANGE_2"]
    }
    

    Sostituisci EXCLUDED_RANGE_1 e EXCLUDED_RANGE_2 con uno o più blocchi CIDR IPv4 da escludere. Google Cloud assegna un blocco di indirizzi IP all'intervallo interno che non si sovrappone a nessun blocco escluso. L'elenco non può essere aggiornato dopo la creazione dell'intervallo interno.

  • Per prenotare un intervallo interno IPv4 con sovrapposizione, effettua la seguente richiesta:

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
    {
      "ipCidrRange": "CIDR_RANGE",
      "network": "NETWORK_NAME",
      "description": "DESCRIPTION",
      "peering": "PEERING_TYPE",
      "usage": "USAGE_TYPE",
      "overlaps": ["OVERLAPS"]
    }
    

    Sostituisci OVERLAPS con il tipo di sovrapposizione da consentire. Le opzioni sono OVERLAP_EXISTING_SUBNET_RANGE e OVERLAP_ROUTE_RANGE. Puoi includere entrambi i valori in un array JSON.

  • Per prenotare un intervallo interno immutabile (Anteprima), effettua la seguente richiesta:

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
    {
      "ipCidrRange": "CIDR_RANGE",
      "network": "NETWORK_NAME",
      "description": "DESCRIPTION",
      "peering": "PEERING_TYPE",
      "usage": "USAGE_TYPE",
      "immutable": true
    }
    

Riserva intervalli interni IPv4 per la migrazione delle subnet

Puoi utilizzare un intervallo interno per eseguire la migrazione di un intervallo CIDR da una subnet all'altra. Per ulteriori informazioni, consulta Eseguire la migrazione degli intervalli di subnet IPv4.

gcloud

Utilizza il comando gcloud network-connectivity internal-ranges create.

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --ip-cidr-range=CIDR_RANGE \
    --network=NETWORK_NAME \
    --peering=FOR_SELF \
    --usage=FOR_MIGRATION \
    --migration-source=SOURCE_SUBNET \
    --migration-target=TARGET_SUBNET

Sostituisci quanto segue:

  • RANGE_NAME: il nome dell'intervallo interno da creare
  • CIDR_RANGE: il blocco CIDR IPv4 della subnet di cui vuoi eseguire la migrazione
  • NETWORK_NAME: il nome della rete in cui creare l'intervallo interno
  • SOURCE_SUBNET: l'URI della subnet di origine
  • TARGET_SUBNET: l'URI della subnet di destinazione

API

Invia una richiesta POST al metodo projects.locations.internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "ipCidrRange": "CIDR_RANGE",
  "network": "NETWORK_NAME",
  "peering": "FOR_SELF",
  "usage": "FOR_MIGRATION",
  "migration": {
    "source": "SOURCE_SUBNET",
    "target": "TARGET_SUBNET"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto principale per l'intervallo interno
  • RANGE_NAME: il nome del nuovo intervallo interno
  • CIDR_RANGE: il blocco CIDR IPv4 della subnet di cui vuoi eseguire la migrazione
  • NETWORK_NAME: il nome della rete in cui creare l'intervallo interno
  • SOURCE_SUBNET: l'URI della subnet di origine
  • TARGET_SUBNET: l'URI della subnet di destinazione

Creare subnet con intervalli IPv4 interni

Puoi creare una subnet solo IPv4 o a doppio stack e utilizzare un intervallo interno per specificare l'intervallo di indirizzi IPv4 interni principali della subnet. La subnet può essere associata a un intero intervallo interno o solo a una parte dell'intervallo. Gli intervalli secondari per le subnet possono essere associati anche agli intervalli interni.

Console

  1. Prendi in riserva un intervallo IPv4 interno nella rete dove vuoi creare una nuova subnet. Imposta il tipo di utilizzo su questo intervallo interno su For VPC e il tipo di peering su For self.

  2. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  3. Fai clic sul nome di una rete VPC per visualizzarne la pagina Dettagli rete VPC.

  4. Fai clic su Aggiungi subnet. Nella finestra di dialogo visualizzata:

    1. Fornisci un nome.
    2. Seleziona una regione.
    3. Seleziona la casella di controllo Associa a un intervallo interno.
    4. Per Intervallo interno riservato, effettua una selezione.
    5. (Facoltativo) Per associare la subnet a una parte dell'intervallo interno, inserisci un intervallo IPv4.
    6. Fai clic su Aggiungi.

gcloud

  1. Prendi in riserva un intervallo IPv4 interno nella rete dove vuoi creare una nuova subnet. Imposta il tipo di utilizzo su questo intervallo interno su FOR_VPC e il tipo di peering su FOR_SELF.
  2. Esegui una di queste operazioni:

    • Per creare una subnet associata a un intero intervallo interno, utilizza il comando gcloud compute networks subnets create.

      gcloud compute networks subnets create SUBNET_NAME \
          --reserved-internal-range=networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME \
          --network=NETWORK_NAME \
          --region=REGION
      

      Sostituisci quanto segue:

      • SUBNET_NAME: il nome della subnet
      • PROJECT_ID: l'ID del progetto in cui creare la subnet
      • RANGE_NAME: il nome dell'intervallo interno da associare alla subnet
      • NETWORK_NAME: il nome della rete in cui creare la subnet
      • REGION: la regione in cui creare la subnet
    • Per creare una subnet associata a parte di un intervallo interno, utilizza il seguente comando:

      gcloud compute networks subnets create SUBNET_NAME \
          --reserved-internal-range=networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME \
          --range=IP_RANGE \
          --network=NETWORK_NAME \
          --region=REGION
      

      Sostituisci IP_RANGE con un intervallo CIDR IPv4 che sia un sottoinsieme dell'intervallo interno.

Ad esempio, i seguenti comandi creano una subnet associata solo alla parte 10.9.1.0/24 di un intervallo interno che riserva il blocco CIDR 10.9.0.0/16.

gcloud network-connectivity internal-ranges create reserved-range-one \
    --ip-cidr-range=10.9.0.0/16 \
    --network=vpc-one
gcloud compute networks subnets create subnet-one \
    --reserved-internal-range=networkconnectivity.googleapis.com/projects/project-one/locations/global/internalRanges/reserved-range-one \
    --range=10.9.1.0/24 \
    --network=vpc-one \
    --region=us-central1

API

  1. Prendi in riserva un intervallo IPv4 interno nella rete dove vuoi creare una nuova subnet. Imposta il tipo di utilizzo su questo intervallo interno su FOR_VPC e il tipo di peering su FOR_SELF.
  2. Esegui una di queste operazioni:

    • Per creare una subnet associata a un intero intervallo interno, invia una richiesta POST al metodo subnetworks.insert.

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
      {
        "name" : "SUBNET_NAME",
        "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME",
        "network" : "NETWORK"
      }
      

      Sostituisci quanto segue:

      • PROJECT_ID: l'ID del progetto principale per la nuova subnet
      • REGION: la regione in cui creare la subnet
      • SUBNET_NAME: il nome della nuova sottorete
      • PROJECT_ID: l'ID del progetto in cui creare una subnet
      • RANGE_NAME: il nome dell'intervallo interno da utilizzare per la nuova subnet
      • NETWORK: il nome della rete in cui creare la subnet
    • Per creare una subnet associata a parte di un intervallo interno, effettua la seguente richiesta:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
      {
        "name" : "SUBNET_NAME",
        "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME",
        "range" : "IP_RANGE",
        "network" : "NETWORK"
      }
      

      Sostituisci IP_RANGE con un intervallo CIDR IPv4 che sia un sottoinsieme dell'intervallo interno.

Ad esempio, le seguenti richieste creano una subnet associata solo alla parte 10.9.1.0/24 di un intervallo interno contenente il blocco CIDR 10.9.0.0/16.

POST https://networkconnectivity.googleapis.com/v1/projects/sample-project/locations/global/internalRanges?internalRangeId=reserved-for-subnet
{
  "targetCidrRange": "10.9.0.0/16",
  "network": "network-b"
}
POST https://compute.googleapis.com/compute/v1/projects/11223344/regions/us-central1/subnetworks
{
  "name" : "subnet-with-partial-range",
  "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/project-one/locations/global/internalRanges/reserved-for-subnet",
  "range" : "10.9.1.0/24",
  "network" : "network-b"
}

Creare cluster GKE con intervalli interni IPv4

Puoi utilizzare gli intervalli interni IPv4 per allocare indirizzi IP per i cluster nativi VPC di Google Kubernetes Engine (GKE).

gcloud

  1. Crea i seguenti intervalli IPv4 interni utilizzando il comando gcloud network-connectivity internal-ranges create.

    gcloud network-connectivity internal-ranges create gke-nodes-1 \
        --prefix-length=NODE_PREFIX_LENGTH \
        --network=NETWORK
    
    • Per i pod GKE:
    gcloud network-connectivity internal-ranges create gke-pods-1 \
        --prefix-length=POD_PREFIX_LENGTH \
        --network=NETWORK
    
    gcloud network-connectivity internal-ranges create gke-services-1 \
        --prefix-length=SERVICE_PREFIX_LENGTH \
        --network=NETWORK
    

    Sostituisci quanto segue:

    • NODE_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai nodi GKE
    • POD_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai pod GKE
    • SERVICE_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai servizi GKE
    • NETWORK: il nome della rete
  2. Crea una subnet con gli intervalli interni che hai creato nel passaggio precedente utilizzando il comando gcloud compute networks subnets create.

    gcloud compute networks subnets create gke-subnet-1 \
        --network=NETWORK \
        --region=REGION \
        --reserved-internal-range="//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-nodes-1" \
        --secondary-range-with-reserved-internal-range="pods=//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-pods-1,services=//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-services-1"
    

    Sostituisci quanto segue:

    • REGION: la regione della subnet
    • PROJECT_ID: l'ID del progetto
  3. Crea il cluster nativo di VPC utilizzando il comando gcloud container clusters create.

    gcloud container clusters create CLUSTER_NAME \
        --network=NETWORK \
        --subnetwork=gke-subnet-1 \
        --zone=ZONE \
        --cluster-secondary-range-name=pods \
        --services-secondary-range-name=services \
        --enable-ip-alias
    

    Sostituisci ZONE con la zona del cluster.

API

  1. Crea i seguenti intervalli interni inviando richieste POST al metodo projects.locations.internalRanges.create.

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-nodes-1
    {
      "network": "NETWORK",
      "prefixLength": NODE_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    
    • Per i pod GKE:
    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-pods-1
    {
      "network": "NETWORK",
      "prefixLength": POD_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    
    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-services-1
    {
      "network": "NETWORK",
      "prefixLength": SERVICE_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • NETWORK: il nome della rete
    • NODE_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai nodi GKE
    • POD_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai pod GKE
    • SERVICE_PREFIX_LENGTH: la lunghezza del prefisso per l'intervallo interno associato ai servizi GKE
  2. Crea una subnet con gli intervalli interni che hai creato nel passaggio precedente inviando una richiesta POST al metodo subnetworks.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
    {
      "name": "gke-subnet-1",
      "network": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK",
      "privateIpGoogleAccess": false,
      "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-nodes-1",
      "secondaryIpRanges": [
        {
          "rangeName": "pods",
          "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-pods-1"
        },
        {
          "rangeName": "services",
          "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-services-1"
        }
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • REGION: la regione della subnet
    • NETWORK: la rete della subnet
  3. Crea il cluster nativo di VPC inviando una richiesta POST al metodo clusters.create.

    POST https://container.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/clusters
    {
      "cluster": {
        "ipAllocationPolicy": {
          "clusterSecondaryRangeName": "pods",
          "createSubnetwork": false,
          "servicesSecondaryRangeName": "services",
          "useIpAliases": true
        },
        "name": "CLUSTER_NAME",
        "network": "NETWORK",
        "nodePools": [
          {
            "config": {
              "oauthScopes": [
                "https://www.googleapis.com/auth/devstorage.read_only",
                "https://www.googleapis.com/auth/logging.write",
                "https://www.googleapis.com/auth/monitoring",
                "https://www.googleapis.com/auth/service.management.readonly",
                "https://www.googleapis.com/auth/servicecontrol",
                "https://www.googleapis.com/auth/trace.append"
              ]
            },
            "initialNodeCount": 3,
            "management": {
              "autoRepair": true,
              "autoUpgrade": true
            },
            "name": "default-pool",
            "upgradeSettings": {
              "maxSurge": 1
            }
          }
        ],
        "subnetwork": "gke-subnet-1"
      },
      "parent": "projects/PROJECT_ID/locations/ZONE"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • ZONE: la zona del cluster
    • CLUSTER_NAME: il nome del nuovo cluster
    • NETWORK: la rete del cluster

Elenco intervalli interni

Puoi elencare gli intervalli interni per visualizzare tutti gli intervalli interni nel progetto corrente o in una rete VPC specifica. Per elencare i progetti in una rete VPC, utilizza Google Cloud CLI o invia una richiesta API.

Console

gcloud

  • Per visualizzare tutti gli intervalli interni nel progetto corrente, utilizza il comando gcloud network-connectivity internal-ranges list.

    gcloud network-connectivity internal-ranges list
    
  • Per visualizzare tutti gli intervalli interni di una rete VPC, utilizza il comando internal-ranges list e includi un filtro.

    gcloud network-connectivity internal-ranges list \
        --filter=network:NETWORK_NAME \
        --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • NETWORK_NAME: il nome della rete VPC in cui elencare gli intervalli interni
    • PROJECT_ID: l'ID del progetto che contiene la rete VPC

API

  • Per visualizzare tutti gli intervalli interni di un progetto, invia una richiesta GET al metodo projects.locations.internalRanges.list.

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges
    

    Sostituisci PROJECT_ID con l'ID del progetto in cui visualizzare gli intervalli interni.

  • Per visualizzare tutti gli intervalli interni di una rete VPC, invia una richiesta GET al metodo projects.locations.internalRanges.list e includi un filtro.

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?filter=network=\"https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME\"
    

    Sostituisci NETWORK_NAME con il nome della rete VPC in cui elencare gli intervalli interni.

Descrivere gli intervalli interni

Puoi descrivere un intervallo interno per visualizzare i dettagli dell'intervallo scelto, incluse eventuali subnet associate all'intervallo interno.

Console

  1. Nella console Google Cloud, vai alla pagina Intervalli interni.

    Vai a Intervalli interni

  2. Fai clic su Nome dell'intervallo interno che vuoi descrivere.

gcloud

Utilizza il comando gcloud network-connectivity internal-ranges describe.

gcloud network-connectivity internal-ranges describe RANGE_NAME

Sostituisci RANGE_NAME con il nome dell'intervallo interno da descrivere.

API

Invia una richiesta GET al metodo projects.locations.internalRanges.get.

GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto principale per l'intervallo interno
  • RANGE_NAME: il nome dell'intervallo interno da descrivere

Aggiorna gli intervalli interni

Se un intervallo interno è immutabile, puoi aggiornare solo la descrizione. Se un intervallo interno è mutevole, puoi espandere il blocco CIDR dell'intervallo e aggiornarne la proprietà e la descrizione dell'intersezione.

Per espandere un intervallo interno, puoi aggiornare il blocco CIDR dell'intervallo o diminuire la lunghezza del prefisso. Il blocco CIDR aggiornato deve contiene il blocco precedente.

Se vuoi restringere l'intervallo allocato o modificare un altro elemento, elimina l'intervallo interno e creane uno nuovo.

Per aggiornare la proprietà di sovrapposizione di un intervallo interno IPv4, invia una richiesta API o utilizza Google Cloud CLI.

Console

  1. Nella console Google Cloud, vai alla pagina Intervalli interni.

    Vai a Intervalli interni

  2. Fai clic sul nome dell'intervallo interno da aggiornare.

  3. Per espandere il blocco CIDR dell'intervallo, fai clic su Espandi intervallo e poi esegui una delle seguenti operazioni:

    • Per gli intervalli interni IPv4, fai clic su Lunghezza prefisso e poi segui questi passaggi:
      1. Nel campo Lunghezza prefisso, seleziona una lunghezza del prefisso inferiore al prefisso precedente.
      2. Fai clic su Espandi.
    • Per gli intervalli interni IPv4 o IPv6, fai clic su Intervallo IP e poi segui questi passaggi:
      1. Inserisci un blocco CIDR IPv4, IPv6 o IPv6 mappato su IPv4. Il nuovo blocco deve contenere quello precedente.
      2. Fai clic su Espandi.
  4. Per aggiornare la descrizione dell'intervallo:

    1. Fai clic su Modifica descrizione.
    2. Inserisci una nuova descrizione.
    3. Fai clic su Salva.

gcloud

  • Per aggiornare un intervallo interno, utilizza il gcloud network-connectivity internal-ranges update comando. Ometti gli indicatori per le proprietà che non vuoi modificare.

    gcloud network-connectivity internal-ranges update RANGE_NAME \
        --ip-cidr-range=CIDR_RANGE \
        --overlaps=OVERLAPS \
        --description=DESCRIPTION
    

    Sostituisci quanto segue:

    • RANGE_NAME: il nome dell'intervallo interno
    • CIDR_RANGE: il blocco CIDR IPv4, IPv6, IPv6 mappato su IPv4 espanso, che deve contenere il blocco precedente
    • OVERLAPS: il tipo di sovrapposizione da consentire (solo intervalli IPv4)

      Le opzioni sono OVERLAP_EXISTING_SUBNET_RANGE e OVERLAP_ROUTE_RANGE. Puoi includere entrambi i valori in un elenco separato da virgole. Per disattivare l'intersezione, includere il flag, ma non specificare un valore (--overlaps=).

    • DESCRIPTION: la descrizione aggiornata

  • Per espandere un intervallo interno diminuendo la lunghezza del prefisso, utilizza il seguente comando:

    gcloud network-connectivity internal-ranges update RANGE_NAME \
        --prefix-length=PREFIX_LENGTH
    

    Sostituisci PREFIX_LENGTH con la lunghezza del prefisso aggiornata, che deve essere inferiore a quella precedente.

API

  • Per espandere un intervallo interno aggiornandone l'intervallo CIDR, effettua una richiesta PATCH al metodo projects.locations.internalRanges.patch.

    PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=ipCidrRange
    {
      "ipCidrRange": "CIDR_RANGE"
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto principale per l'intervallo interno
    • RANGE_NAME: il nome dell'intervallo interno
    • CIDR_RANGE: il blocco CIDR IPv4, IPv6 o IPv6 mappato su IPv4 espanso, che deve contenere il blocco precedente
  • Per espandere un intervallo interno diminuendo la lunghezza del prefisso, effettua la seguente richiesta:

    PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=prefixLength
    {
      "prefixLength": PREFIX_LENGTH
    }
    

    Sostituisci PREFIX_LENGTH con la lunghezza del prefisso aggiornata, che deve essere inferiore a quella del prefisso precedente.

  • Per aggiornare la proprietà di sovrapposizione di un intervallo interno IPv4, effettua la seguente richiesta:

    PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=overlaps
    {
      "overlaps": ["OVERLAPS"]
    }
    

    Sostituisci OVERLAPS con il tipo di sovrapposizione da consentire. Le opzioni sono OVERLAP_EXISTING_SUBNET_RANGE e OVERLAP_ROUTE_RANGE. Puoi includere entrambi i valori in un array JSON. Per disattivare l'interferenza, includi il campo, ma non specificare un valore ("overlaps": []).

  • Per aggiornare la descrizione di un intervallo interno, effettua la seguente richiesta:

    PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=description
    {
      "description": "DESCRIPTION"
    }
    

    Sostituisci DESCRIPTION con la descrizione aggiornata.

Elimina intervalli interni

Puoi eliminare un intervallo interno se non è associato a una Google Cloud risorsa come una subnet. Per eliminare un intervallo interno associato a una Google Cloud risorsa, elimina prima la risorsa associata.

Console

  1. Nella console Google Cloud, vai alla pagina Intervalli interni.

    Vai a Intervalli interni

  2. Fai clic sul nome dell'intervallo interno che vuoi eliminare.

  3. Fai clic su Elimina.

  4. Per confermare, fai clic su Elimina.

gcloud

Utilizza il comando gcloud network-connectivity internal-ranges delete.

gcloud network-connectivity internal-ranges delete RANGE_TO_DELETE

Sostituisci RANGE_TO_DELETE con il nome dell'intervallo interno da eliminare.

API

Invia una richiesta DELETE al metodo projects.locations.internalRanges.delete.

DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto principale per l'intervallo interno
  • RANGE_NAME: il nome dell'intervallo interno