Créer des instances qui utilisent l'interface de réseau virtuel Compute Engine


L'interface de réseau virtuel Compute Engine, également appelée gVNIC, est spécialement conçue pour Compute Engine. Elle fournit un réseau de distribution plus efficace, afin d'envoyer du trafic depuis et vers vos instances de VM. Auparavant, les instances de machine virtuelle (VM) exécutées sur Compute Engine utilisaient une interface de réseau virtuel basée sur la spécification virtIO.

L'interface de réseau virtuel Compute Engine est requise pour les bandes passantes réseau élevées (vitesses atteignant 50 à 100 Gbit/s, par exemple) pouvant être utilisées pour des charges de travail distribuées sur des instances associées à des GPU.

Pour créer des instances de VM qui utilisent l'interface de réseau virtuel Compute Engine, vous pouvez effectuer l'une des opérations suivantes :

Avant de commencer

Limites

L'interface de réseau virtuel Compute Engine n'est pas compatible avec les instances de VM qui utilisent des types de machines à mémoire optimisée.

Systèmes d'exploitation compatibles

Pour en savoir plus sur les images qui appartiennent au projet d'image gvnic-vm-image-prod et qui sont configurées pour utiliser l'interface de réseau virtuel Compute Engine, consultez la page Détails des systèmes d'exploitation.

Vous pouvez utiliser n'importe laquelle de ces images pour créer une instance de VM qui, par défaut, utilise l'interface de réseau virtuel Compute Engine.

Créer une instance de VM à l'aide d'images préconfigurées

Pour créer une instance de VM à l'aide d'une image du projet d'image gvnic-vm-image-prod, suivez les étapes de la section créer une instance de VM et fournissez le projet et la famille de l'image.

Debian

Pour créer une instance Debian, exécutez la commande suivante :

gcloud beta compute instances create instance-name \
      --image-project=gvnic-vm-image-prod \
      --image-family=debian-9-gvnic

Remplacez instance-name par le nom de votre instance.

Windows

  • Pour créer une instance Windows 2019, exécutez la commande suivante :

    gcloud beta compute instances create instance-name \
            --image-project=gvnic-vm-image-prod \
            --image-family=windows-2019-gvnic
    
  • Pour créer une instance Windows 2016, exécutez la commande suivante :

    gcloud beta compute instances create instance-name \
              --image-project=gvnic-vm-image-prod \
              --image-family=windows-2016-gvnic
    
  • Pour créer une instance Windows 2012-r2, exécutez la commande suivante :

    gcloud beta compute instances create instance-name \
              --image-project=gvnic-vm-image-prod \
              --image-family=windows-2012-r2-gvnic
    

    Remplacez instance-name par le nom de votre instance.

Installer manuellement le pilote du réseau virtuel Compute Engine

Pour créer une instance de VM à partir d'une image sur laquelle le pilote du réseau virtuel Compute Engine n'est pas installé, procédez comme suit :

  1. Installez le pilote du réseau virtuel Compute Engine sur l'image.
  2. Utilisez l'image sur laquelle le pilote du réseau virtuel Compute Engine est maintenant installé pour créer une instance de VM.

Linux

Pour pouvoir installer le pilote du réseau virtuel Compute Engine, vous devez installer les versions les plus récentes du pilote et de l'en-tête du noyau de votre système d'exploitation. Une instance qui utilise une interface de réseau virtuel Compute Engine sans pilote de noyau n'aura pas de connectivité réseau interne ni externe, SSH et RDP inclus.

Pour créer et installer le pilote du noyau à partir de la source, vous devez disposer d'un noyau compatible avec les en-têtes installés. Le pilote du réseau virtuel Compute Engine est compatible avec les noyaux de distribution principaux pour les versions 3.10 et ultérieures.

  1. Installez ou mettez à jour le noyau et les en-têtes vers la version 3.10 ou ultérieure. Pour terminer cette étape, consultez la documentation de votre système d'exploitation. Pour obtenir des packages de codes sources et de pilotes sur GitHub, consultez GoogleCloudPlatform/compute-virtual-ethernet-linux.

  2. Utilisez votre image pour créer et démarrer une instance de VM.

  3. Sur cette instance de VM, chargez le pilote du noyau. Pour charger le pilote, exécutez la commande suivante :

    modprobe gve

    Cette commande charge le pilote jusqu'à ce que vous redémarriez le système ou que vous supprimiez le pilote avec la commande rmmod.

  4. (Facultatif) Pour vous assurer que le pilote se charge automatiquement au démarrage du système, exécutez l'une des commandes suivantes :

    • Pour les systèmes d'exploitation qui utilisent systemd, exécutez la commande suivante :

      echo gve > /etc/modules-load.d/gve.conf
    • Pour les systèmes Debian, exécutez la commande suivante :

      echo gve >> /etc/modules
  5. Arrêtez l'instance de VM.

  6. Créez une image à partir du disque associé à l'instance de VM que vous venez d'arrêter.

    gcloud beta compute images create image-name\
            --source-disk disk-name \
            --guest-os-features=GVNIC
    

    Remplacez l'élément suivant :

    • image-name correspond au nom de l'image que vous souhaitez créer. Le pilote du réseau virtuel Compute Engine est installé sur cette image.
    • disk-name correspond au nom du disque de démarrage de l'instance de VM que vous venez d'arrêter.
  7. Utilisez l'image sur laquelle le pilote du réseau virtuel Compute Engine est installé pour créer et démarrer une instance de VM.

Windows

  1. Utilisez votre image pour créer et démarrer une instance de VM.

  2. Installez GooGet sur cette instance de VM. Pour installer GooGet, consultez Télécharger et installer GooGet.

  3. Installez le pilote gVNIC. Pour installer le pilote, exécutez la commande suivante dans une invite PowerShell élevée :

    googet install google-compute-engine-driver-gvnic
  4. Arrêtez l'instance de VM.

  5. Créez une image à partir du disque associé à l'instance de VM que vous venez d'arrêter.

    gcloud beta compute images create image-name\
            --source-disk disk-name \
            --guest-os-features=GVNIC
    

    Remplacez l'élément suivant :

    • image-name correspond au nom de l'image que vous souhaitez créer. Le pilote du réseau virtuel Compute Engine est désormais installé sur cette image.
    • disk-name correspond au nom du disque de démarrage de l'instance de VM que vous venez d'arrêter.
  6. Utilisez l'image sur laquelle le pilote du réseau virtuel Compute Engine est installé pour créer et démarrer une instance de VM.

Vérifier que l'interface de réseau virtuel Compute Engine est activée

Linux

Méthode 1

  1. Sur votre instance de VM Linux, exécutez les commandes suivantes :

    sudo apt install pciutils
    lspci
    

    La sortie doit ressembler à ceci :

    00:04.0 Ethernet controller: Google, XXX. Device 0042

Méthode 2

  1. Suivez les instructions de votre système d'exploitation pour télécharger l'utilitaire de mise en réseau ethtool.

  2. Exécutez la commande suivante :

    sudo ethtool -i network-interface

    Remplacez network-interface par le nom de votre interface réseau. Exemple :eth0

    La sortie doit ressembler à ceci :

    driver: gve
    version: 1.0.0
    firmware-version:
    expansion-rom-version:
    bus-info: 0000:00:04.0
    supports-statistics: yes
    supports-test: no
    supports-eeprom-access: no
    supports-register-dump: no
    supports-priv-flags: no

Windows

  1. Dans votre instance de VM Windows, ouvrez le gestionnaire d'appareils.
  2. Sous "Carte réseau", vous devriez voir : "Google Ethernet Adapter"

Étapes suivantes