Aggiungere NIC dinamiche a un'istanza

Questa pagina descrive come aggiungere un'interfaccia di rete dinamica (NIC) a un'istanza VM esistente.

Per informazioni sulla creazione di nuove istanze, consulta Creare VM con più interfacce di rete.

Prima di iniziare

Prima di aggiungere NIC dinamiche a un'istanza, segui questi passaggi:

Aggiungere una NIC dinamica

Questa sezione descrive come aggiungere una NIC dinamica a un'istanza.

Quando aggiungi una NIC dinamica, potresti notare un ritardo nella propagazione. In genere, questo ritardo è di pochi secondi, ma in rari casi può arrivare anche a un minuto.

gcloud

Per aggiungere una NIC dinamica a un'istanza esistente, utilizza il comando gcloud beta compute instances network-interfaces add.

gcloud beta compute instances network-interfaces add INSTANCE_NAME \
   --zone=ZONE \
   --vlan=VLAN_ID \
   --parent-nic-name=PARENT_VNIC_NAME \
   --network=NETWORK \
   --subnetwork=SUBNET

Sostituisci quanto segue:

  • INSTANCE_NAME: il nome dell'istanza a cui aggiungere la NIC dinamica
  • ZONE: la zona dell'istanza
  • VLAN_ID: l'ID VLAN della NIC dinamica
  • PARENT_VNIC_NAME: il nome della vNIC principale, ad esempio nic0
  • NETWORK: la rete a cui si connette la NIC dinamica
  • SUBNET: la subnet a cui si connette la NIC dinamica

In alternativa, puoi aggiungere una NIC dinamica a un'istanza quando aggiorni le proprietà dell'istanza. Per ulteriori informazioni, consulta Aggiornare le proprietà dell'istanza.

Per aggiungere NIC dinamiche a un gruppo di istanze gestite (MIG), consulta il comando gcloud beta compute instance-groups managed set-instance-template.

API

Per aggiungere una NIC dinamica a un'istanza esistente, utilizza il metodo instances.addNetworkInterface.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addNetworkInterface
{
  "subnetwork": "regions/REGION/subnetworks/SUBNET",
  "parentNicName": "PARENT_VNIC_NAME",
  "vlan": "VLAN_ID"
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene l'istanza
  • ZONE: la zona che contiene l'istanza
  • INSTANCE_NAME: il nome dell'istanza a cui aggiungere una NIC dinamica
  • REGION: la regione che contiene l'istanza
  • SUBNET: la subnet a cui si collega la NIC dinamica
  • PARENT_VNIC_NAME: il nome della vNIC principale, ad esempio nic0
  • VLAN_ID: l'ID VLAN della NIC dinamica

In alternativa, puoi aggiungere una NIC dinamica a un'istanza quando aggiorni le proprietà dell'istanza. Per ulteriori informazioni, consulta Aggiornare le proprietà dell'istanza.

Per aggiungere NIC dinamiche a un gruppo di istanze gestite (MIG), consulta il metodo instanceGroupManagers.setInstanceTemplate.

Configura il sistema operativo guest per le NIC dinamiche

Questa sezione descrive come completare la configurazione aggiuntiva del sistema operativo guest obbligatoria quando aggiungi NIC dinamiche a un'istanza nuova o esistente.

Scegli una delle seguenti opzioni di configurazione:

Opzione di configurazione Descrizione
Configurare la gestione automatica delle NIC dinamiche (opzione consigliata)

Utilizza l'agente guest Google per la gestione automatica delle NIC dinamiche.

L'ambiente guest include l'agente guest di Google, che automatizza l'installazione e la gestione delle interfacce VLAN nello spazio dei nomi principale sulle distribuzioni Linux delle immagini Google Cloud OS. Questa funzionalità è supportata nell'agente ospite Google versione 20250204.02 e successive.

Configurare manualmente il sistema operativo ospite

Esegui i comandi nel sistema operativo guest per installare le NIC dinamiche.

Se utilizzi questa opzione, la configurazione non viene mantenuta automaticamente dopo un riavvio dell'istanza. Per fare in modo che le configurazioni rimangano invariate dopo un riavvio, utilizza il metodo consigliato per configurare le interfacce di rete permanenti per la tua distribuzione Linux. Ad esempio, consulta NetworkConfiguration per Debian e interfaces per Ubuntu.

Configurare la gestione automatica delle NIC dinamiche

Questa sezione descrive come configurare la gestione automatica delle NIC dinamiche utilizzando l'agente guest di Google.

Devi completare questi passaggi una sola volta per istanza. Se hai aggiunto una NIC dinamica a un'istanza per la quale hai già completato questi passaggi, non è necessario ripeterli.

Per configurare la gestione automatica delle NIC dinamiche:

  1. Connettiti all'istanza utilizzando SSH.

  2. Assicurati che nell'istanza sia in esecuzione l'agente guest di Google nella versione 20250204.02 o successiva:

    1. Per determinare se l'istanza esegue l'agente guest di Google, esegui il comando appropriato elencato in Pacchetti installati per l'ambiente guest.

      1. Se nell'istanza non è in esecuzione l'agente ospite Google, installa l'ambiente ospite.

      2. Se la tua istanza esegue l'agente guest di Google, aggiorna l'ambiente guest.

      L'installazione o l'aggiornamento dell'ambiente guest ti garantisce di avere la versione più recente dell'agente guest di Google. Puoi confermare la versione seguendo i passaggi descritti in Convalida dell'ambiente invitato.

  3. Configura l'agente ospite Google per gestire le NIC dinamiche:

    1. Apri o crea il file di configurazione dell'ambiente guest.

      edit /etc/default/instance_configs.cfg
      
    2. Aggiungi quanto segue al file di configurazione, quindi salva le modifiche ed esci dall'editor.

      [NetworkInterfaces]
      vlan_setup_enabled = true
      manage_primary_nic = true
      

      Per informazioni su queste impostazioni, consulta quanto segue:

      • vlan_setup_enabled = true: configura l'agente guest di Google per installare e gestire le NIC dinamiche
      • manage_primary_nic = true: un'impostazione aggiuntiva necessaria per consentire all'agente guest di Google di gestire le NIC dinamiche create in nic0

      Per ulteriori informazioni sulla modifica del file di configurazione dell'agente ospite, consulta la sezione Configurazione della documentazione dell'agente ospite Google.

    3. Riavviare l'agente guest eseguendo il seguente comando. In alternativa, puoi riavviare l'istanza.

      sudo systemctl restart google-guest-agent.service
      
  4. Elenca le interfacce di rete dell'istanza per verificare che l'agente ospite di Google abbia installato le NIC dinamiche.

    Ad esempio, il seguente comando mostra un nome come a-gcp.ens4.11 per una NIC dinamica con un ID VLAN di 11 creato come elemento secondario dell'interfaccia ens4.

    sudo ip -d addr
    

Configurare manualmente il sistema operativo guest

Per configurare manualmente le NIC dinamiche nel sistema operativo guest di un'istanza:

  1. Connettiti all'istanza utilizzando SSH.

  2. Se nell'istanza è in esecuzione l'agente ospite Google, disattiva la gestione automatica delle NIC dinamiche. Puoi determinare se l'istanza esegue l'agente ospite Google utilizzando il comando appropriato elencato in Pacchetti installati per l'ambiente ospite.

    Per disattivare la gestione automatica delle NIC dinamiche:

    1. Apri o crea il file di configurazione dell'ambiente guest.

        edit /etc/default/instance_configs.cfg
        

    2. Aggiungi quanto segue al file di configurazione, quindi salva le modifiche ed esci dall'editor.

      [NetworkInterfaces]
      vlan_setup_enabled = false
      manage_primary_nic = false
      

      Per ulteriori informazioni sulla modifica del file di configurazione dell'agente ospite, consulta la sezione Configurazione della documentazione dell'agente ospite Google.

    3. Riavviare l'agente guest eseguendo il seguente comando. In alternativa, puoi riavviare l'istanza.

      sudo systemctl restart google-guest-agent.service
      
  3. Per ogni NIC dinamica creata, svolgi i seguenti passaggi:

    1. Ottieni l'indirizzo MAC della vNIC principale. Per trovare l'indirizzo MAC, esegui una query sul server dei metadati eseguendo il seguente comando:

      curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/VNIC_NUMBER/mac -H "Metadata-Flavor: Google"
      

      Sostituisci VNIC_NUMBER con il numero della vNIC principale. Ad esempio, 0 per nic0 o 1 per nic1.

    2. Configura una sottointerfaccia nel sistema operativo guest dell'istanza. Ad esempio, su una VM Debian, esegui i seguenti comandi:

      sudo modprobe 8021q
      sudo ip link add link VNIC_NAME name VNIC_NAME.VLAN_ID type vlan id VLAN_ID
      sudo ip addr add IP_ADDRESS dev VNIC_NAME.VLAN_ID
      sudo ip link set dev VNIC_NAME.VLAN_ID address MAC_ADDRESS
      sudo ip link set up VNIC_NAME.VLAN_ID
      

      Sostituisci quanto segue:

      • VNIC_NAME: il nome della vNIC principale assegnata dal sistema operativo, ad esempio eth1 o ens4
      • IP_ADDRESS: l'indirizzo IP della NIC dinamica che hai creato
      • VLAN_ID: l'ID VLAN assegnato alla NIC dinamica
      • MAC_ADDRESS: l'indirizzo MAC che hai ottenuto nel passaggio precedente