Les modules du noyau du routeur logique de l'hôte assurent le routage entre les réseaux VXLAN, et entre les réseaux virtuels et physiques. Un dispositif NSX Edge fournit une possibilité de routage dynamique si nécessaire. Les routeurs logiques peuvent être créés sur les instances principales et secondaires de NSX Manager dans un environnement cross-vCenter NSX, mais les routeurs logiques universels peuvent uniquement être créés sur l'instance principale de NSX Manager.

La liste suivante décrit la prise en charge de fonctionnalités par type d'interface (liaison montante et interne) sur le routeur logique :

  • Les protocoles de routage dynamique (BGP et OSPF) sont pris en charge uniquement par des interfaces de liaison montante.

  • Les règles de pare-feu s'appliquent uniquement aux interfaces de liaison montante et sont limitées au trafic de contrôle et de gestion destiné au dispositif virtuel Edge.

  • Pour plus d'informations sur l'interface de gestion du DLR, consultez l'article de la base de connaissances Considerations for Management Interface of Distributed Logical Router Control VM (Considérations sur l'interface de gestion de la VM de contrôle du routeur logique distribué), http://kb.vmware.com/kb/2122060.

Conditions préalables

  • Le rôle Administrateur d'entreprise ou Administrateur NSX doit vous avoir été attribué.

  • Vous devez disposer d'un cluster de contrôleurs opérationnel dans votre environnement pour pouvoir installer un routeur logique.

  • Vous devez créer un pool local d'ID de segments, même si vous ne prévoyez pas de créer des commutateurs logiques NSX.

  • Un routeur logique ne peut pas distribuer les informations de routage aux hôtes sans l'aide des instances de NSX Controller. Un routeur logique s'appuie sur les instances de NSX Controller pour fonctionner, au contraire des passerelles ESG (Edge Services Gateway). Avant de créer ou de modifier une configuration de routeur logique, vérifiez que le cluster de contrôleurs est actif et disponible.

  • Si un routeur logique doit être connecté à des dvportGroups VLAN, vérifiez que tous les hôtes hyperviseurs avec un dispositif de routeur logique installé peuvent communiquer entre eux sur le port UDP 6999 pour que le proxy ARP basé sur VLMN du routeur logique fonctionne.

  • Les interfaces de routeur logique et les interfaces de pontage ne peuvent pas être connectées à un dvPortgroup avec l'ID de VLAN définie sur 0.

  • Une instance de routeur logique donnée ne peut pas être connectée aux commutateurs logiques se trouvant dans des zones de transport distinctes. Cela permet de s'assurer que tous les commutateurs logiques et instances de routeur logique sont alignés.

  • Un routeur logique ne peut pas être connecté à des groupes de ports sauvegardés sur VLAN s'il est connecté à des commutateurs logiques liés à plusieurs vSphere Distributed Switches (VDS). Cela permet de s'assurer que les instances de routeur logiques sont alignées sur les dvPortgroups de commutateur logique entre les hôtes.

  • Les interfaces de routeur logique ne doivent pas être créées sur deux groupes de ports distribués distincts (dvPortgroups) portant le même ID de VLAN si ces deux réseaux se trouvent dans le même commutateur distribué vSphere.

  • Les interfaces de routeur logique ne doivent pas être créées sur deux dvPortgroups distincts portant le même ID de VLAN si ces deux réseaux se trouvent dans différents vSphere Distributed Switches partageant les mêmes hôtes. Autrement dit, les interfaces de routeur logique peuvent être créées sur deux réseaux distincts avec le même ID de VLAN si les deux dvPortgroups sont dans deux vSphere Distributed Switches distincts, tant que ceux-ci ne partagent pas d'hôte.

  • Contrairement aux versions 6.0 et 6.1 de NSX, la version 6.2 permet aux interfaces logiques routées par un routeur logique d'être connectées à un VXLAN relié à un VLAN.

  • Lorsque vous sélectionnez le placement d'un dispositif virtuel de routeur logique, évitez de le choisir sur le même hôte qu'un ou plusieurs de ses ESG en amont si vous utilisez celles-ci dans une configuration ECMP. Vous pouvez utiliser les règles anti-affinité de DRS pour le mettre en application, ce qui permet de limiter l'impact d'une défaillance de l'hôte sur le transfert du routeur logique. Cette directive ne s'applique pas si vous avez une seule ESG en amont ou en mode HA. Pour plus d'informations, reportez-vous au Guide de conception de virtualisation réseau de VMware NSX for vSphere à l'adresse https://communities.vmware.com/docs/DOC-27683.

Procédure

  1. Dans vSphere Web Client, accédez à Accueil > Networking & Security > Dispositifs NSX Edge (Home > Networking & Security > NSX Edges).
  2. Cliquez sur l'icône Ajouter (Add) (ajouter).
  3. Sélectionnez Routeur (distribué) logique (Logical (Distributed) Router) et tapez le nom du périphérique.

    Ce nom apparaît dans l'inventaire vCenter. Ce nom doit être unique au sein de tous les routeurs logiques d'un même locataire.

    Sinon, vous pouvez entrer également un nom d'hôte (en option). Ce nom apparaît dans l'interface de ligne de commande. Si vous ne spécifiez pas le nom d'hôte, l'ID du dispositif Edge, créé automatiquement, s'affiche dans l'interface de ligne de commande.

    Sinon, vous pouvez entrer une description et un locataire (en option).

    Par exemple :

  4. (Facultatif) Déployez un dispositif Edge.

    Déployer un dispositif Edge est coché par défaut. Un dispositif Edge (également appelé dispositif virtuel de routeur logique) est requis pour le routage dynamique et le pare-feu du dispositif de routeur logique qui s'applique aux pings du routeur logique, à l'accès SSH et au trafic de routage dynamique.

    Vous pouvez décocher l'option du dispositif Edge si vous avez besoin d'itinéraires statiques uniquement et que vous ne souhaitez pas déployer de dispositif Edge. Une fois le routeur logique créé, vous ne pouvez pas y ajouter de dispositif Edge.

  5. (Facultatif) Activez la haute disponibilité.

    Activer la haute disponibilité n'est pas coché par défaut. Cochez la case Activer la haute disponibilité pour activer et configurer la haute disponibilité. La haute disponibilité est requise si vous prévoyez d'effectuer du routage dynamique.

  6. Composez et confirmez un mot de passe pour le routeur logique.

    Le mot de passe doit se composer de 12 à 255 caractères et doit contenir ce qui suit :

    • Au moins une lettre en majuscule

    • Au moins une lettre en minuscule

    • Au moins un chiffre

    • Au moins un caractère spécial

  7. (Facultatif) Activer l'accès SSH et définir le niveau de journal.

    Par défaut, l'accès SSH est désactivé. Si vous n'activez pas l'accès SSH, vous pouvez toujours accéder au routeur logique en ouvrant la console du dispositif virtuel. Si vous activez l'accès SSH, cela entraîne l'exécution du processus SSH sur le dispositif virtuel du routeur logique, mais vous devez aussi effectuer la configuration manuelle du pare-feu du routeur pour autoriser l'accès SSH à l'adresse du protocole du routeur logique. L'adresse du protocole est configurée au moment de la configuration du routage dynamique sur le routeur logique.

    Par défaut, le niveau de journal est le niveau d'urgence.

    Par exemple :

  8. Configurez le déploiement.
    • Vous n'avez pas sélectionné Déployer le dispositif NSX Edge (Deploy NSX Edge), l'icône Ajouter (Add) (Ajouter) est grisée. Cliquez sur Suivant (Next) pour poursuivre la configuration.

    • Si vous avez sélectionné Déployer le dispositif NSX Edge (Deploy NSX Edge), entrez les paramètres du dispositif virtuel de routeur logique qui sera ajouté à votre inventaire vCenter.

    Par exemple :

  9. Configurez des interfaces.

    sur les routeurs logiques, seul l'adressage IPv4 est pris en charge.

    Dans la Configuration de l'interface HA, si vous avez coché Déployer le dispositif NSX Edge (Deploy NSX Edge), vous devez connecter l'interface à un groupe de ports distribué. Il est recommandé d'utiliser un commutateur logique VXLAN pour l'interface HA. Une adresse IP pour chacun des deux dispositifs NSX Edge est choisie parmi l'espace d'adresse locale de lien, 169.250.0.0/16. Aucune configuration supplémentaire n'est nécessaire pour configurer le service HA.

    Note:

    Dans les versions précédentes de NSX, l'interface HA était appelée l'interface de gestion. L'interface HA n'est pas prise en charge pour accéder à distance au routeur logique. Vous ne pouvez pas utiliser l'accès SSH pour vous connecter à l'interface HA si vous ne vous trouvez pas sur le même sous-réseau IP que l'interface. Vous ne pouvez pas configurer d'itinéraire statique pointant vers l'interface HA, ce qui signifie que RPF refusera le trafic entrant. En théorie, vous pouvez désactiver RPF, mais cela serait contre-productif pour la haute disponibilité. Pour SSH, utilisez l'adresse de protocole du routeur logique qui est configurée ultérieurement lors de la configuration du routage dynamique.

    Dans NSX 6.2, l'interface HA d'un routeur logique est automatiquement exclue de la redistribution d'itinéraire.

    Dans Configurer les interfaces de ce dispositif NSX Edge (Configure interfaces of this NSX Edge), les interfaces internes sont conçues pour les connexions aux commutateurs autorisant la communication de machine virtuelle à machine virtuelle (parfois appelée communication horizontale). Les interfaces internes sont créées en tant que pseudo vNIC sur le dispositif virtuel de routeur logique. Les interfaces de liaison montante concernent les communications verticales. Une interface de liaison montante de routeur logique peut se connecter à une passerelle NSX Edge Services Gateway, à une machine virtuelle de routeur tierce ou à un dvPortgroup reposant sur VLAN pour établir une connexion directe entre le routeur logique et un routeur physique. Pour que le routage dynamique fonctionne, vous devez disposer d'au moins une interface de liaison montante . Les interfaces de liaison montante sont créées en tant que vNIC sur le dispositif virtuel de routeur logique.

    La configuration de l'interface que vous entrez ici peut être modifiée ultérieurement. Vous pouvez ajouter, supprimer et modifier les interfaces une fois qu'un routeur logique est déployé.

    L'exemple suivant présente une interface HA connectée au groupe de port distribué de gestion. Il présente également deux interfaces internes (application et Web) et une interface de liaison montante (vers ESG).

  10. Configurez une passerelle par défaut.

    Par exemple :

  11. Vérifiez que les passerelles par défaut des machines virtuelles associées aux commutateurs logiques sont définies correctement sur les adresses IP de l'interface du routeur logique.

Résultats

Dans l'exemple de topologie suivant, la passerelle par défaut de la machine virtuelle d'application doit être 172.16.20.1. la passerelle par défaut de la machine virtuelle Web doit être 172.16.10.1. Vérifiez que les machines virtuelles peuvent exécuter une commande ping sur leurs passerelles par défaut et entre elles.

Connectez-vous par SSH à l'instance de NSX Manager et exécutez les commandes suivantes :

  • Répertoriez toutes les informations de l'instance de routeur logique.

    nsxmgr-l-01a> show logical-router list all
    Edge-id             Vdr Name                      Vdr id              #Lifs
    edge-1              default+edge-1                0x00001388          3
    

  • Répertoriez les hôtes ayant reçu les informations de routage du routeur logique de la part du cluster de contrôleurs.

    nsxmgr-l-01a> show logical-router list dlr edge-1 host
    ID                   HostName                             
    host-25              192.168.210.52                       
    host-26              192.168.210.53                       
    host-24              192.168.110.53

    La sortie inclut tous les hôtes de tous les clusters d'hôtes configurés en tant que membres de la zone de transport dont fait partie le commutateur logique connecté au routeur logique spécifié (edge-1 dans cet exemple).

  • Répertoriez les informations de la table de routage communiquées aux hôtes par le routeur logique. Les entrées de la table de routage doivent être homogènes dans tous les hôtes.

    nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 route
    
    VDR default+edge-1 Route Table
    Legend: [U: Up], [G: Gateway], [C: Connected], [I: Interface]
    Legend: [H: Host], [F: Soft Flush] [!: Reject] [E: ECMP]
    
    Destination     GenMask          Gateway         Flags   Ref Origin   UpTime    Interface
    -----------     -------          -------         -----   --- ------   ------    ---------
    0.0.0.0         0.0.0.0          192.168.10.1    UG      1   AUTO     4101      138800000002
    172.16.10.0     255.255.255.0    0.0.0.0         UCI     1   MANUAL   10195     13880000000b
    172.16.20.0     255.255.255.0    0.0.0.0         UCI     1   MANUAL   10196     13880000000a
    192.168.10.0    255.255.255.248  0.0.0.0         UCI     1   MANUAL   10196     138800000002
    192.168.100.0   255.255.255.0    192.168.10.1    UG      1   AUTO     3802      138800000002
    

  • Répertoriez les informations sur le routeur du point de vue de l'un des hôtes. Cela permet d'apprendre quel contrôleur communique avec l'hôte.

    nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 verbose
    
    VDR Instance Information :
    ---------------------------
    
    Vdr Name:                   default+edge-1
    Vdr Id:                     0x00001388
    Number of Lifs:             3
    Number of Routes:           5
    State:                      Enabled
    Controller IP:              192.168.110.203
    Control Plane IP:           192.168.210.52
    Control Plane Active:       Yes
    Num unique nexthops:        1
    Generation Number:          0
    Edge Active:                No
    

Vérifiez le champ Adresse IP du contrôleur dans les résultats de la commande show logical-router host host-25 dlr edge-1 verbose.

Connectez-vous via SSH à un contrôleur et exécutez les commandes suivantes pour afficher les informations sur l'état que vous avez apprises sur le contrôleur (VNI, VTEP, MAC et ARP).

  • 192.168.110.202 # show control-cluster logical-switches vni 5000
    VNI      Controller      BUM-Replication ARP-Proxy Connections
    5000     192.168.110.201 Enabled         Enabled   0
    

    Les résultats sur VNI 5000 n'affichent aucune connexion et répertorient le contrôleur 192.168.110.201 comme propriétaire de VNI 5000. Connectez-vous à ce contrôleur pour réunir des informations supplémentaires pour VNI 5000.

    192.168.110.201 # show control-cluster logical-switches vni 5000
    VNI      Controller      BUM-Replication ARP-Proxy Connections
    5000     192.168.110.201 Enabled         Enabled   3
    

    Les résultats sur 192.168.110.201 affichent trois connexions. Vérifiez les VNI supplémentaires.

    192.168.110.201 # show control-cluster logical-switches vni 5001
    VNI      Controller      BUM-Replication ARP-Proxy Connections
    5001     192.168.110.201 Enabled         Enabled   3
    
    192.168.110.201 # show control-cluster logical-switches vni 5002
    VNI      Controller      BUM-Replication ARP-Proxy Connections
    5002     192.168.110.201 Enabled         Enabled   3

    Du fait que 192.168.110.201 possède les trois connexions VNI, nous nous attendons à ce que l'autre contrôleur, 192.168.110.203, n'ait aucune connexion.

    192.168.110.203 # show control-cluster logical-switches vni 5000
    VNI      Controller      BUM-Replication ARP-Proxy Connections
    5000     192.168.110.201 Enabled         Enabled   0
    
  • Avant de vérifier les tables MAC et ARP, commencez à exécuter une commande ping de l'une des machines virtuelles à l'autre.

    De la machine virtuelle d'application à la machine virtuelle Web :

    Vérifiez les tables MAC.

    192.168.110.201 # show control-cluster logical-switches mac-table 5000
    VNI      MAC               VTEP-IP         Connection-ID
    5000     00:50:56:a6:23:ae 192.168.250.52  7

    192.168.110.201 # show control-cluster logical-switches mac-table 5001
    VNI      MAC               VTEP-IP         Connection-ID
    5001     00:50:56:a6:8d:72 192.168.250.51  23

    Vérifiez les tables ARP.

    192.168.110.201 # show control-cluster logical-switches arp-table 5000
    VNI      IP              MAC               Connection-ID
    5000     172.16.20.10    00:50:56:a6:23:ae 7
    192.168.110.201 # show control-cluster logical-switches arp-table 5001
    VNI      IP              MAC               Connection-ID
    5001     172.16.10.10    00:50:56:a6:8d:72 23

Vérifiez les informations sur le routeur logique. Chaque instance de routeur logique est desservie par l'un des nœuds de contrôleur.

La sous-commande instance de la commande show control-cluster logical-routers affiche une liste de routeurs logiques connectés à ce contrôleur.

La sous-commande interface-summary affiche les LIF apprises par le contrôleur auprès de l'instance de NSX Manager. Ces informations sont envoyées aux hôtes situés dans les clusters d'hôtes gérés dans la zone de transport.

La sous-commande routes affiche la table de routage envoyée à ce contrôleur par le dispositif virtuel du routeur logique (également appelé machine virtuelle de contrôle). Sachez que contrairement aux hôtes ESXi, la table de routage n'inclut pas les sous-réseaux connectés directement, car ces informations sont fournies par al configuration de LIF. Les informations d'itinéraires sur les hôtes ESXi incluent les sous-réseaux connectés directement, car dans ce cas, il s'agit d'une table de transfert utilisée par le chemin d'accès aux données de l'hôte ESXi.

  • controller # show control-cluster logical-routers instance all
    LR-Id      LR-Name            Universal Service-Controller Egress-Locale
    0x1388     default+edge-1     false     192.168.110.201    local
    

    Prenez note de l'ID du routeur logique et utilisez-le dans la commande suivante.

  • controller # show control-cluster logical-routers interface-summary 0x1388
    Interface                        Type   Id           IP[]
    13880000000b                     vxlan  0x1389       172.16.10.1/24
    13880000000a                     vxlan  0x1388       172.16.20.1/24
    138800000002                     vxlan  0x138a       192.168.10.2/29
    

  • controller # show control-cluster logical-routers routes 0x1388
    Destination        Next-Hop[]      Preference Locale-Id                            Source
    192.168.100.0/24   192.168.10.1    110        00000000-0000-0000-0000-000000000000 CONTROL_VM
    0.0.0.0/0          192.168.10.1    0          00000000-0000-0000-0000-000000000000 CONTROL_VM
    
    [root@comp02a:~] esxcfg-route -l
    VMkernel Routes:
    Network          Netmask          Gateway          Interface
    10.20.20.0       255.255.255.0    Local Subnet     vmk1
    192.168.210.0    255.255.255.0    Local Subnet     vmk0
    default          0.0.0.0          192.168.210.1    vmk0
    
  • Affichez les connexions du contrôleur au VNI spécifique.

    192.168.110.203 # show control-cluster logical-switches connection-table 5000
    Host-IP         Port  ID
    192.168.110.53  26167 4
    192.168.210.52  27645 5
    192.168.210.53  40895 6
    
    192.168.110.202 # show control-cluster logical-switches connection-table 5001
    Host-IP         Port  ID
    192.168.110.53  26167 4
    192.168.210.52  27645 5
    192.168.210.53  40895 6
    

    Les adresses IP d'hôtes sont des interfaces vmk0, pas des VTEP. Les connexions entre hôtes ESXi et contrôleurs sont créées sur le réseau de gestion. Les numéros de port sont des ports TCP éphémères alloués par ma pile d'adresses IP de l'hôte ESXi lorsque l'hôte établit une connexion avec le contrôleur.

  • Sur l'hôte, vous pouvez afficher la connexion réseau du contrôleur associée au numéro de port.

    [root@192.168.110.53:~] #esxcli network ip connection list | grep 26167
    tcp         0       0  192.168.110.53:26167             192.168.110.101:1234  ESTABLISHED     96416  newreno  netcpa-worker
    
  • Affichez les VNI actifs sur l'hôte. Observez les différences de résultat entre les hôtes. Tous les VNI ne sont pas actifs sur tous les hôtes. Un VNI est actif sur un hôte si celui-ci a une machine virtuelle connectée au commutateur logique.

    [root@192.168.210.52:~] # esxcli network vswitch dvs vmware vxlan network list --vds-name Compute_VDS
    VXLAN ID  Multicast IP               Control Plane                        Controller Connection  Port Count  MAC Entry Count  ARP Entry Count  VTEP Count
    --------  -------------------------  -----------------------------------  ---------------------  ----------  ---------------  ---------------  ----------
        5000  N/A (headend replication)  Enabled (multicast proxy,ARP proxy)  192.168.110.203 (up)            1                0                0           0
        5001  N/A (headend replication)  Enabled (multicast proxy,ARP proxy)  192.168.110.202 (up)            1                0                0           0
    
    Note:

    Pour activer l'espace de nom vxlan dans vSphere 6 et version ultérieure, exécutez la commande /etc/init.d/hostd restart.

    Pour les commutateurs logiques en mode hybride ou monodiffusion, la commande esxcli network vswitch dvs vmware vxlan network list --vds-name <vds-name> doit contenir la sortie suivante :

    • Le plan de contrôle est activé.

    • Le proxy de multidiffusion et le proxy ARP sont répertoriés. Le proxy AARP est répertorié, même si vous avez désactivé la découverte d'adresses IP.

    • Une adresse IP de contrôleur valide est répertoriée et la connexion est active.

    • Si un routeur logique est connecté à l'hôte ESXi, le nombre de ports est d'au moins 1, même s'il n'y a aucune machine virtuelle sur l'hôte connecté au commutateur logique. Ce port est me vdrPort, qui est un dvPort spécial connecté au module de noyau du routeur logique sur l'hôte ESXi.

  • Exécutez d'abord la commande ping d'une machine virtuelle à une autre sur un sous-réseau différent, puis affichez la table des adresses MAC. Notez que l'adresse MAC interne correspond à l'entrée de la machine virtuelle, tandis que l'adresse externe renvoie au VTEP.

    ~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5000
    Inner MAC          Outer MAC          Outer IP        Flags
    -----------------  -----------------  --------------  --------
    00:50:56:a6:23:ae  00:50:56:6a:65:c2  192.168.250.52  00000111
    
    ~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5001
    Inner MAC          Outer MAC          Outer IP        Flags
    -----------------  -----------------  --------------  --------
    02:50:56:56:44:52  00:50:56:6a:65:c2  192.168.250.52  00000101
    00:50:56:f0:d7:e4  00:50:56:6a:65:c2  192.168.250.52  00000111
    

Que faire ensuite

Sur les hôtes où les dispositifs NSX Edge sont déployés pour la première fois, NSX permet le démarrage et l'arrêt automatique de machine virtuelle. Si les machines virtuelles du dispositif sont migrées ultérieurement vers d'autres hôtes, il se peut que le démarrage et l'arrêt automatique de machine virtuelle ne soit pas activé sur les nouveaux hôtes. Pour cette raison, VMware vous recommande de vérifier tous les hôtes du cluster afin de vous assurer que le démarrage et l'arrêt de machine virtuelle soit activé. Voir http://pubs.vmware.com/vsphere-60/index.jsp?topic=%2Fcom.vmware.vsphere.vm_admin.doc%2FGUID-5FE08AC7-4486-438E-AF88-80D6C7928810.html.

Une fois le routeur logique déployé, double-cliquez sur l'ID du routeur logique pour configurer des paramètres supplémentaires, comme les interfaces, le routage, le pare-feu, le pontage et le relais DHCP.

Par exemple :