Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Installation de machines virtuelles vMX imbriqués

Une machine virtuelle imbriqué est une machine virtuelle contenue dans une autre VM. Lisez ce sujet pour comprendre comment lancer la VM vMX imbriqué sur KVM.

Présentation du modèle de VM imbriqué

Le modèle de machine virtuelle vMX imbriqué comporte le plan de contrôle virtuel (VCP) qui s’exécute en tant que VM au sein de la VM du plan de transfert virtuel (VFP). La VM VFP exécute le logiciel de plan de transfert Trio virtuel et la VM VCP exécute Junos OS. Les machines virtuelles VCP et VFP nécessitent une connectivité de couche 2 pour communiquer entre elles. Un pont interne local au serveur pour chaque instance vMX permet cette communication. Les machines virtuelles VCP et VFP nécessitent également une connectivité de couche 2 pour communiquer avec le port de gestion Ethernet du serveur. Pour configurer un pont externe pour une instance vMX, vous devez spécifier des interfaces Ethernet virtuelles avec des adresses IP et DES ADRESSES MAC uniques pour le VFP et le VCP. Le trafic de gestion Ethernet pour toutes les instances vMX pénètre le serveur via le port de gestion Ethernet.

La VM vMX imbriqué prend en charge les interfaces virtio et SR-IOV pour les ports de transfert. La première interface est utilisée pour la gestion et doit être une interface virtio connectée au pont br-ext (pont externe). Les interfaces suivantes sont des interfaces WAN et peuvent être des interfaces virtio ou SR-IOV. Vous devez créer les ponts pour toutes les interfaces virtio. Vous devez disposer d’au moins une interface WAN pour le transfert.

VM imbriqué avec interfaces Virtio

En mode virtio, les interfaces serveur ne doivent pas être configurées avec les VF. Vous pouvez supprimer ou réinitialiser les interfaces (eth1) à l’aide de la rmmod ixgbe commande et vous pouvez ajouter le pilote IXGBE avec l’interface par défaut à l’interface du serveur à l’aide de la modprobe ixgbe commande.

La figure 1 illustre le modèle de VM vMX imbriqué avec des interfaces virtio.

Figure 1 : VM imbriquée avec interfaces Nested VM with virtio Interfaces virtio

VM imbriqué avec interfaces SR-IOV

En mode SR-IOV, les interfaces vMX sont associées aux interfaces serveur. Par exemple, l’interface ge-0/0/0 est associée à eth1 . eth1 est définie dans le fichier .conf file- interface: ge-0/0/0 ,nic: eth1.

Le VF est ajouté au pilote IXGBE de l’interface eth1 serveur associé au VF et peut être vérifié à l’aide de la ip link show eth1 commande en cours d’exécution en mode SR-IOV.

La figure 2 illustre le modèle de VM vMX imbriqué avec les interfaces SR-IOV.

Figure 2 : VM imbriquée avec interfaces Nested VM with SR-IOV Interfaces SR-IOV

Pour les interfaces SR-IOV, vous devez charger le pilote IXGBE modifié avant de lancer la VM vMX imbriqué.

La façon dont le trafic réseau passe du NIC physique au NIC virtuel dépend de la technique de virtualisation que vous configurez.

Configuration système requise pour le modèle de VM imbriqué

Le vMX peut être configuré pour être exécuté en deux modes selon le cas d’utilisation :

  • Mode Lite : nécessite moins de ressources en termes de processeur et de mémoire pour fonctionner à une bande passante plus faible.

  • Mode performance : nécessite des ressources plus élevées en termes de processeur et de mémoire pour fonctionner avec une bande passante plus élevée.

    Note:

    Le mode performance est le mode par défaut.

Limites du vMX avec le modèle de VM imbriqué

vMX ne prend pas en charge les fonctionnalités suivantes avec le modèle de VM imbriqué :

  • Attachement ou détachement d’interfaces lors de l’exécution d’une instance vMX

  • Mise à niveau de la version de Junos OS

Configuration matérielle et logicielle requise pour les machines virtuelles vMX imbriquées

Le tableau 1 répertorie les exigences matérielles.

Tableau 1 : Configuration matérielle minimale requise pour la vm vMX imbriquée

Description

Valeur

Exemple de configuration système

Pour virtio : n’importe quel processeur x86 (Intel ou AMD) avec fonctionnalité VT-d.

Pour SR-IOV : processeurs Intel PCI-Express 82599 (10 Gbits/s) et Ivy Bridge.

Nombre de cœurs

Note:

Le mode performance est le mode par défaut et la valeur minimale est basée sur un port.

  • Pour le mode lite : minimum 4 processeurs virtuels

    Note:

    Si vous souhaitez utiliser le mode lite lorsque vous exécutez plus de 4 processeurs virtuels pour le VFP, vous devez configurer explicitement le mode Lite.

  • Pour le mode performance : 8 processeurs virtuels minimum

    Note:

    Pour calculer le nombre recommandé de processeurs virtuels requis par VFP pour le mode de performance :

    (3 * number-of-forwarding-ports) + 4

Mémoire

  • Pour le mode lite : minimum de 3 Go

  • Pour le mode performance :

    • Minimum de 5 Go

    • Recommandé de 16 Go

Le tableau 2 répertorie les exigences logicielles.

Tableau 2 : Configuration logicielle requise pour Ubuntu

Description

Valeur

Système d'exploitation

Ubuntu 14.04.1 LTS

Linux 3.19.0-80-generic

Virtualisation

QEMU-KVM 2.0.0+dfsg-2ubuntu1.11

Packages requis

Note:

D’autres packages supplémentaires peuvent être requis pour répondre à toutes les dépendances.

bridge-utils qemu-kvm libvirt-bin virtinst

Note:

libvirt 1.2.19

Installation et lancement de la VM vMX imbriqué sur KVM

Pour lancer la VM vMX imbriqué sur KVM, effectuez ces tâches.

Préparation de l’hôte Ubuntu à l’installation de la VM vMX imbriqué

Pour préparer le système hôte Ubuntu à l’installation de vMX :

  1. Répondez aux exigences du logiciel et du système d’exploitation décrites dans la configuration matérielle et logicielle requise pour les machines virtuelles vMX imbriquées.
  2. Activez la technologie Intel VT-d dans le BIOD. (Nous vous recommandons de vérifier le processus avec le fournisseur car les différents systèmes disposent de méthodes différentes pour activer VT-d.)

    Reportez-vous à la procédure d’activation de VT-d disponible sur le site Web Intel.

  3. Désactivez KSM en définissant KSM_ENABLED=0 /etc/default/qemu-kvm.
  4. Désactivez la virtualisation APIC en modifiant le fichier /etc/modprobe.d/qemu-system-x86.conf et en ajoutant enable_apicv=0 à la ligne contenant options kvm_intel.

    options kvm_intel nested=1 enable_apicv=0

  5. Redémarrez l’hôte pour désactiver la virtualisation KSM et APIC.
  6. Si vous utilisez SR-IOV, vous devez effectuer cette étape.
    Note:

    Vous devez supprimer toute installation précédente avec un pont externe dans /etc/réseau/interfaces et revenir à l’aide de l’interface de gestion d’origine. Assurez-vous que la commande n’affiche ifconfig -a pas les ponts externes avant de poursuivre l’installation.

    Pour déterminer si un pont externe s’affiche, utilisez la ifconfig commande pour afficher l’interface de gestion. Pour confirmer que cette interface est utilisée pour un groupe de ponts externes, utilisez la brctl show commande pour voir si l’interface de gestion est répertoriée comme pont externe.

    Activez la fonctionnalité SR-IOV en étendant l’activation intel_iommu=on dans le répertoire /etc/default/grub .

    GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on"

    Ajoutez la intel_iommu=on chaîne à n’importe quel texte existant pour le GRUB_CMDLINE_LINUX_DEFAULT paramètre.

  7. Pour des performances optimales, nous vous recommandons de configurer la taille des immenses pages pour qu’elles soient 1G sur l’hôte et de nous assurer que le nœud NUMA du VFP comporte au moins 16 pages 1G Huge Pages. Pour configurer la taille des pages Huge, ajoutez la ligne suivante dans /etc/default/grub :

    GRUB_CMDLINE_LINUX="default_hugepagesz=1G hugepagesz=1G hugepages=number-of-huge-pages"

    Le nombre de pages immenses doit être au moins (16G * number-of-numa-sockets).

  8. Exécutez la update-grub commande suivie de la reboot commande.
  9. Exécutez la modprobe kvm-intel commande avant d’installer vMX.

Chargement du pilote IXGBE modifié

Si vous utilisez des interfaces SR-IOV, vous devez charger le pilote IXGBE modifié avant de lancer la VM vMX imbriquée. Pour charger le pilote IXGBE modifié :

  1. Téléchargez le package logiciel KVM vMX et décompressez-le.
  2. Avant de compiler le pilote, assurez-vous que gcc et assurez-vous qu’il est installé.
  3. Déchargez le pilote IXGBE par défaut, compilez le pilote Juniper Networks modifié et chargez le pilote IXGBE modifié.
  4. Vérifier la version du pilote (3.19.1) sur les interfaces SR-IOV.

Lancement d’une instance vMX imbriqué

Pour lancer l’instance vMX imbriquée :

  1. Téléchargez le package logiciel imbriqué vMX.
  2. Convertir l’image vmdk au qcow2 format.
  3. Créez les ponts pour les interfaces virtio.
    Note:

    Lorsque vous créez un pont à l’aide de la brctl addbr <bridge-name> commande, le serveur peut perdre la connexion. Vous pouvez également générer le vMX en mode nonnes (en mode SRIOV ou virtio) et utiliser les virsh destroy vcp vcp-name commandes pour virsh destroy vfp vfp-name créer et conserver le pont.

    Note:

    Vous devez créer les ponts pour les interfaces virtio avant de lancer l’instance vMX imbriqué.

  4. Lancez l’instance de VM vMX imbriqué avec la virt-install commande. Par exemple :

    Où:

    • --vcpus— Spécifie le nombre de processeurs virtuels.

      Pour le mode lite, au minimum 4 processeurs virtuels. Pour le mode performance, au minimum [(4 * number-of-forwarding-ports) + 4] vCPU.

    • -r— Spécifie la quantité de mémoire que la VM utilise en Mo. Minimum de 16 Go.

    • --serial— Spécifie le port série du VFP.

    • -w— Spécifie l’interface virtio. La première interface est utilisée pour la gestion et est connectée au pont br-ext. Les interfaces suivantes sont des interfaces WAN et sont connectées aux ponts sur l’hôte.

    • --host-device— Spécifie l’interface SR-IOV comme ID PCI de la fonction virtuelle (VF0).

      Pour déterminer l’ID PCI :

      1. Utilisez la ip link commande pour obtenir les noms d’interface pour lesquels vous créez des VF liés à l’instance vMX.

      2. Utilisez l’utilitaire ethtool -i interface-name pour déterminer les informations du bus PCI.

      3. Utilisez la virsh nodedev-list commande pour obtenir l’ID PCI VF.

    • -n— Spécifie le nom de la VM vMX.

    • --disk— Spécifie le chemin d’accès au qcow2 fichier (vmx-nested-release.qcow2).

Par exemple, cette commande lance une instance vMX en mode performance avec deux interfaces virtio connectées aux ponts vnet0 et vnet1 :

Par exemple, cette commande lance une instance vMX en mode performance avec deux interfaces SR-IOV :

Connexion au port de console VFP

Après avoir lancé l’instance vMX avec la virt-install commande, vous pouvez vous connecter au port de console du VFP à partir de l’hôte avec la telnet localhost serial-port commande, où serial-port est le port que vous avez spécifié comme avec host le -serial paramètre.

Par exemple :

Connectez-vous à l’aide du nom d’utilisateur jnpr et du mot de passe jnpr123par défaut . Devenez root à l’aide de la sudo -i commande.

L’interface br-ext tente de récupérer une adresse IP à l’aide de DHCP. Utilisez la ifconfig br-ext commande pour afficher l’adresse IP attribuée. Si le protocole DHCP n’est pas disponible ou si vous préférez une adresse IP statique, attribuez une adresse IP à br-ext. Vous pouvez désormais vous connecter au VFP à l’aide du protocole SSH et de cette adresse IP attribuée.

Connexion au VCP

Lorsque la VM VCP est lancée, vous pouvez vous connecter au port de console VCP au port TCP 8601 à partir de la VM VFP en utilisant cette commande :

Depuis le port de console, vous pouvez vous connecter avec un nom d’utilisateur root et aucun mot de passe.

Au minimum, vous devez effectuer ces tâches de configuration initiales de Junos OS après vous être connecté au VCP :

  1. Démarrez l’interface CLI.
  2. Entrez le mode de configuration.
  3. Configurez le mot de passe racine.
  4. Configurez l’adresse IP et la longueur de préfixe de l’interface de gestion Ethernet du routeur.
  5. Validez la configuration.