Si vous souhaitez utiliser KVM en tant que nœud de transport ou en tant qu'hôte pour les machines virtuelles invitées NSX Manager et NSX Controller, mais que vous n'avez pas encore configuré KVM, vous pouvez utiliser la procédure ci-dessous.

Note:

Le protocole d'encapsulation Geneve utilise le port UDP 6081. Vous devez autoriser cet accès de port dans le pare-feu sur l'hôte KVM.

Procédure

  1. (Red Hat uniquement) Ouvrez le fichier /etc/yum.conf.
  2. Recherchez la ligne exclude.
  3. Ajoutez la ligne "kernel* redhat-release*" pour configurer yum afin d'éviter les mises à niveau RHEL non prises en charge.

    exclude=[existing list] kernel* redhat-release*

    Si vous prévoyez d'exécuter NSX-T Container Plug-in, qui a des exigences de compatibilité spécifiques, excluez les modules associés aux conteneurs.

    exclude=[existing list] kernel* redhat-release* kubelet-* kubeadm-* kubectl-* docker-*

    La version prise en charge est RHEL 7.4.

  4. Installez KVM et les utilitaires de pont.

    Distribution Linux

    Commandes

    Ubuntu

    apt-get install -y qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils virtinst virt-manager virt-viewer libguestfs-tools

    RHEL

    yum groupinstall "Virtualization Hypervisor"
    yum groupinstall "Virtualization Client"
    yum groupinstall "Virtualization Platform"
    yum groupinstall "Virtualization Tools"
  5. Vérifiez la capacité de virtualisation matérielle.
    cat /proc/cpuinfo | egrep "vmx|svm"

    La sortie doit contenir vmx.

  6. Vérifiez que le module KVM est installé.

    Distribution Linux

    Commandes

    Ubuntu

    kvm-ok
    
    INFO: /dev/kvm exists
    KVM acceleration can be used

    RHEL

    lsmod | grep kvm
    
    kvm_intel              53484  6
    kvm                   316506  1 kvm_intel
  7. Pour que KVM soit utilisé en tant qu'hôte pour NSX Manager ou NSX Controller, préparez le réseau de pont, l'interface de gestion et les interfaces de carte réseau.

    Dans l'exemple suivant, la première interface Ethernet (eth0 ou ens32) est utilisée pour la connectivité vers la machine Linux elle-même. Selon votre environnement de déploiement, cette interface peut utiliser des paramètres DHCP ou IP statiques. Avant d'attribuer des interfaces de liaison montante aux hôtes NSX-T, assurez-vous que les scripts d'interface utilisés par ces liaisons montantes sont déjà configurés. Sans ces fichiers d'interface sur le système, vous ne pouvez pas réussir à créer un nœud de transport hôte.

    Note:

    Les noms d'interface peuvent varier selon les environnements.

    Distribution Linux

    Configuration réseau

    Ubuntu

    Modifiez /etc/network/interfaces :

    auto lo
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet manual
    
    auto br0
    iface br0 inet static
        address 192.168.110.51
        netmask 255.255.255.0
        network 192.168.110.0
        broadcast 192.168.110.255
        gateway 192.168.110.1
        dns-nameservers 192.168.3.45
        dns-search example.com
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0
    
    

    Créez un fichier xml de définition de réseau pour le pont. Par exemple, créez /tmp/bridge.xml avec les lignes suivantes :

    <network>
      <name>bridge</name>
      <forward mode='bridge'/>
      <bridge name='br0'/>
    </network>
    
    

    Définissez et démarrez le réseau de pont avec les commandes suivantes :

    virsh net-define 
    bridge.xml
    virsh net-start bridge
    virsh net-autostart bridge
    
    

    Vous pouvez vérifier l'état du réseau de pont avec la commande suivante :

    virsh net-list --all
    
    Name                 State      Autostart     Persistent
    ----------------------------------------------------------
    bridge               active     yes           yes
    default              active     yes           yes

    RHEL

    Modifiez /etc/sysconfig/network-scripts/ifcfg-management_interface :

      DEVICE="ens32"
      TYPE="Ethernet"
      NAME="ens32"
      UUID="<UUID>"
      BOOTPROTO="none"
      HWADDR="<HWADDR>"
      ONBOOT="yes"
      NM_CONTROLLED="no"
      BRIDGE="br0"
    
    

    Modifiez /etc/sysconfig/network-scripts/ifcfg-eth1 :

      DEVICE="eth1"
      TYPE="Ethernet"
      NAME="eth1"
      UUID="<UUID>"
      BOOTPROTO="none"
      HWADDR="<HWADDR>"
      ONBOOT="yes"
      NM_CONTROLLED="no"
    

    Modifiez /etc/sysconfig/network-scripts/ifcfg-eth2 :

      DEVICE="eth2"
      TYPE="Ethernet"
      NAME="eth2"
      UUID="<UUID>"
      BOOTPROTO="none"
      HWADDR="<HWADDR>"
      ONBOOT="yes"
      NM_CONTROLLED="no"
    

    Modifiez /etc/sysconfig/network-scripts/ifcfg-br0 :

       DEVICE="br0"
       BOOTPROTO="dhcp"
       NM_CONTROLLED="no"
       ONBOOT="yes"
       TYPE="Bridge"
  8. Pour utiliser KVM en tant que nœud de transport, préparez le pont réseau.

    Dans l'exemple suivant, la première interface Ethernet (eth0 ou ens32) est utilisée pour la connectivité vers la machine Linux elle-même. Selon votre environnement de déploiement, cette interface peut utiliser des paramètres DHCP ou IP statiques.

    Note:

    Les noms d'interface peuvent varier selon les environnements.

    Distribution Linux

    Configuration réseau

    Ubuntu

    Modifiez /etc/network/interfaces :

    auto lo
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet manual
    
    auto eth1
    iface eth1 inet manual
    
    auto br0
    iface br0 inet dhcp
      bridge_ports eth0
    

    RHEL

    Modifiez /etc/sysconfig/network-scripts/ifcfg-ens32 :

    DEVICE="ens32"
      TYPE="Ethernet"
      NAME="ens32"
      UUID="<something>"
      BOOTPROTO="none"
      HWADDR="<something>"
      ONBOOT="yes"
      NM_CONTROLLED="no"
      BRIDGE="br0"
    
    

    Modifiez /etc/sysconfig/network-scripts/ifcfg-ens33 :

    DEVICE="ens33"
      TYPE="Ethernet"
      NAME="ens33"
      UUID="<something>"
      BOOTPROTO="none"
      HWADDR="<something>"
      ONBOOT="yes"
      NM_CONTROLLED="no"
    
    

    Modifiez /etc/sysconfig/network-scripts/ifcfg-br0 :

    DEVICE="br0"
       BOOTPROTO="dhcp"
       NM_CONTROLLED="no"
       ONBOOT="yes"
       TYPE="Bridge"
    Important:

    Pour Ubuntu, toutes les configurations réseau doivent figurer dans /etc/network/interfaces. Ne créez pas de fichiers de configuration réseau individuels, tels que /etc/network/ifcfg-eth1, car cela pourrait entraîner l'échec de la création du nœud de transport.

    Après cette étape, une fois que l'hôte KVM est configuré comme nœud de transport, l'interface de pont « nsx-vtep0.0 » est créée. Dans Ubuntu, /etc/network/interfaces possède des entrées similaires à celles-ci :

    iface nsx-vtep0.0 inet static
    pre-up ip addr flush dev nsx-vtep0.0
    address <IP_pool_address>
    netmask <subnet_mask>
    mtu 1600
    down ifconfig nsx-vtep0.0 down
    up ifconfig nsx-vtep0.0 up

    Dans RHEL, l'agent NSX hôte (nsxa) crée un fichier de configuration appelé ifcfg-nsx-vtep0.0, qui contient des entrées similaires à celles-ci :

    DEVICE=nsx-vtep0.0
    BOOTPROTO=static
    NETMASK=<IP address>
    IPADDR=<subnet mask>
    MTU=1600
    ONBOOT=yes
    USERCTL=no
    NM_CONTROLLED=no
    
  9. Pour que les modifications réseau prennent effet, redémarrez le service de mise en réseau systemctl restart network ou redémarrez le serveur Linux.