Exemple : configuration d’une passerelle VXLAN de couche 2 et de connexions OVSDB dans un environnement VMware NSX (interfaces trunk prenant en charge les paquets balisés)
Dans un réseau physique, un équipement Juniper Networks qui prend en charge le VXLAN (Virtual Extensible LAN) peut fonctionner comme un point de terminaison de tunnel virtuel matériel (VTEP). Dans ce rôle, l’équipement Juniper Networks encapsule des trames Ethernet de couche 2 reçues des applications logicielles qui s’exécutent directement sur un serveur physique dans des paquets VXLAN. Les paquets VXLAN sont tunnelisés sur un réseau de transport de couche 3. Dès réception des paquets VXLAN, les VTEP logiciels du réseau virtuel les désencapsulent et les transmettent aux machines virtuelles (VM).
Dans cet environnement VXLAN, vous pouvez également inclure des contrôleurs VMware NSX et implémenter le protocole de gestion Open vSwitch Database (OVSDB) sur le périphérique Juniper Networks qui fonctionne comme un VTEP matériel. L’implémentation Junos OS d’OVSDB permet aux contrôleurs VMware NSX et aux équipements Juniper Networks d’échanger les adresses MAC des entités des réseaux physiques et virtuels. Cet échange d’adresses MAC permet au périphérique Juniper Networks qui fonctionne comme un VTEP matériel de transférer le trafic vers des VTEP logiciels dans le réseau virtuel et aux VTEP logiciels dans le réseau virtuel de transférer le trafic vers le périphérique Junipet Networks dans le réseau physique.
Cet exemple explique comment configurer un équipement Juniper Networks prenant en charge VXLAN en tant que VTEP matériel. (Le VTEP sert de passerelle de couche 2.) Cet exemple explique également comment configurer ce périphérique avec une connexion OVSDB à un contrôleur NSX.
À partir de Junos OS version 14.1X53-D15 pour les commutateurs QFX5100, 15.1X53-D10 pour les commutateurs QFX10002, 15.1X53-D30 pour les commutateurs QFX10008, 15.1X53-D60 pour les commutateurs QFX10016, 15.1X53-D210 pour les commutateurs QFX5110 et QFX5200 et 18.1R1 pour les commutateurs QFX5210, la configuration dynamique des interfaces trunk et leur association avec un VXLAN géré par l’OVSDB sont prises en charge. Dans cet exemple, une application s’exécutant directement sur un serveur physique doit communiquer avec une machine virtuelle dans un VXLAN, tandis qu’une autre application sur le serveur physique doit communiquer avec des machines virtuelles dans un autre VXLAN. Par conséquent, les paquets échangés entre les applications s’exécutant sur le serveur physique et les machines virtuelles respectives avec lesquelles elles doivent communiquer sont balisés. Une interface trunk est donc utilisée pour la connexion entre le serveur physique et l’équipement Juniper Networks.
Exigences
Cet exemple comprend les composants matériels et logiciels suivants :
Serveur physique sur lequel les applications logicielles s’exécutent directement.
Commutateur Juniper Networks prenant en charge VXLAN et OVSDB. Il peut s’agir d’un commutateur QFX5100 exécutant Junos OS version 14.1X53-D15 ou ultérieure.
Sur le commutateur Juniper Networks, l’interface physique ge-1/0/0 établit une connexion au serveur physique 1.
Cluster de cinq contrôleurs NSX. (Dans cet exemple, vous configurez explicitement une connexion avec un contrôleur NSX.)
NSX Manager.
Nœud de service qui gère la réplication et le transfert du trafic de diffusion de couche 2, unicast inconnu et multicast (BUM) au sein des VXLAN.
Deux hôtes qui incluent des machines virtuelles. Chaque hôte est géré par un hyperviseur, et chaque hyperviseur inclut un VTEP logiciel.
Avant de commencer la configuration, vous devez effectuer les tâches suivantes :
Créez une clé privée et un certificat SSL et installez-les dans le répertoire /var/db/certs du commutateur Juniper Networks. Reportez-vous à la section Création et installation d’une clé et d’un certificat SSL sur un équipement Juniper Networks pour connaître la connexion aux contrôleurs SDN.
À l’aide de NSX Manager, spécifiez l’adresse IP du nœud de service.
Pour plus d’informations sur l’utilisation de NSX Manager, reportez-vous à la documentation qui accompagne NSX Manager.
Vue d’ensemble et topologie
La figure 1 montre une topologie dans laquelle une application logicielle s’exécutant directement sur le serveur physique 1 du réseau physique doit communiquer avec la machine virtuelle VM 1 dans VXLAN 1 et vice versa, et une autre application logicielle sur le serveur physique 1 doit communiquer avec les machines virtuelles VM 3 et VM 4 dans VXLAN 2 et vice versa.
Pour établir la communication entre les applications logicielles sur le serveur physique 1 et les machines virtuelles dans les VXLAN 1 et 2, certaines entités de la topologie VXLAN-OVSDB doivent être configurées à la fois dans NSX Manager et sur le commutateur Juniper Networks. Le Tableau 1 récapitule les entités qui doivent être configurées et les endroits où elles doivent être configurées.
Le terme utilisé pour une entité configurée dans NSX Manager peut différer de celui utilisé pour la même entité configurée sur le commutateur Junos Network. Pour éviter toute confusion, le Tableau 1 présente les entités NSX Manager et Junos OS côte à côte.
Entités |
Ce qui doit être configuré dans NSX Manager |
Ce qui doit être configuré sur le commutateur Juniper Networks |
|---|---|---|
VXLAN 1 VXLAN 2 |
Commutateur logique pour VXLAN 1 Commutateur logique pour VXLAN 2 |
VXLAN 1 VXLAN 2
Note:
Le commutateur Juniper Networks configure dynamiquement ces VXLAN. |
Interface (ge-1/0/0) entre le serveur physique 1 et le commutateur Juniper Networks |
Un service de passerelle. Pour Type de service de passerelle, sélectionnez Service de passerelle VTEP L2. |
Gestion de l’OVSDB. Spécifiez que l’interface ge-1/0/0 est gérée par OVSDB. |
Une interface logique associée à VXLAN 1 Une interface logique associée à VXLAN 2 |
Un port de commutation logique pour VXLAN 1. Pour ce port, spécifiez le numéro de VLAN 10. Un port de commutation logique pour VXLAN 2. Pour ce port, spécifiez le numéro de VLAN 20.
Note:
Un numéro VLAN de 1 à travers 4000 indique qu’il s’agit d’un port trunk. |
Une interface logique (ge-1/0/0.10) pour VXLAN 1 Une interface logique (ge-1/0/0.20) pour VXLAN 2
Note:
Le commutateur Juniper Networks configure dynamiquement ces interfaces logiques. |
Commutateur Juniper Networks (matériel VTEP 1) |
Passerelle |
– |
En fonction de la configuration des entités dans NSX Manager décrite dans le Tableau 1, le commutateur Juniper Networks crée dynamiquement les VXLAN 1 et 2 et leurs interfaces logiques associées. Le Tableau 2 présente la configuration de NSX Manager pertinente, ainsi que les VXLAN correspondants et les interfaces logiques associées que le commutateur Juniper Networks configure dynamiquement.
Configuration de NSX Manager : commutateur logique et port de commutateur logique |
VXLAN et interfaces logiques associées configurés dynamiquement par le commutateur Juniper Networks |
|---|---|
Configuration du commutateur logique : UUID : 28805c1d-0122-495d-85df-19abd647d772 VNI : 100 Configuration des ports du commutateur logique : ID VLAN : 10 |
Pour le VXLAN 1 : set vlans 28805c1d-0122-495d-85df-19abd647d772 vxlan vni 100 Pour l’interface logique associée ge-1/0/0.10 : set interfaces ge-1/0/0 flexible-vlan-tagging set interfaces ge-1/0/0 encapsulation extended-vlan-bridge set interfaces ge-1/0/0 unit 10 vlan-id 10 set vlans 28805c1d-0122-495d-85df-19abd647d772 interfaces ge-1/0/0.10 |
Configuration du commutateur logique : UUID : 9acc24b3-7b0a-4c2e-b572-3370c3e1acff VNI : 200 Configuration des ports du commutateur logique : ID VLAN : 20 |
Pour VXLAN 2 : set vlans 9acc24b3-7b0a-4c2e-b572-3370c3e1acff vxlan vni 200 Pour l’interface logique associée ge-1/0/0.20 : set interfaces ge-1/0/0 flexible-vlan-tagging set interfaces ge-1/0/0 encapsulation extended-vlan-bridge set interfaces ge-1/0/0 unit 20 vlan-id 20 set vlans 9acc24b3-7b0a-4c2e-b572-3370c3e1acff interfaces ge-1/0/0.20 |
Pour les VXLAN 1 et 2, le commutateur Juniper Networks utilise les valeurs UUID et VNI fournies pour les commutateurs logiques correspondants.
Dans les configurations de port de commutateur logique de NSX Manager, les valeurs d’ID de VLAN 10 et 20 et les mappages de commutateur logique sont spécifiés. Par conséquent, le commutateur Juniper Networks crée les interfaces logiques ge-1/0/0.10 et ge-1/0/0.20, respectivement. Ces deux interfaces logiques fonctionnent comme des interfaces trunk. Le commutateur Juniper Networks mappe également les interfaces logiques ge-1/0/0.10 et ge-1/0/0.20 à leurs VXLAN respectifs.
Selon les configurations générées par le commutateur Juniper Networks, l’interface ge-1/0/0.10 accepte les paquets avec une balise VLAN 10 à partir de VXLAN 1 et l’interface ge-1/0/0.20 accepte les paquets avec une balise VLAN 20. Lors de la réception de paquets de VXLAN 1, une balise VLAN de 100 est ajoutée aux paquets, et une balise VLAN de 200 est ajoutée aux paquets de VXLAN 2. Ces balises sont ajoutées aux flux de paquets respectifs pour mapper l’ID de VXLAN d’un VXLAN particulier au VNI correspondant.
Le Tableau 3 récapitule les composants configurés sur le commutateur Juniper Networks. Sauf indication contraire, toutes les configurations sont effectuées manuellement dans l’interface de ligne de commande de Junos OS.
Topologie
Composants |
Paramètres |
|---|---|
Contrôleur NSX |
Adresse IP : 10.94.184.1 |
Interface gérée par OVSDB |
Nom de l’interface : ge-1/0/0 |
VXLAN 1 et interface logique associée |
Note:
Le commutateur Juniper Networks configure dynamiquement le VXLAN et l’interface logique associée, qui sont basés sur les configurations de port du commutateur logique et du commutateur logique dans NSX Manager. Aucune configuration manuelle n’est donc nécessaire. Nom VXLAN : 28805c1d-0122-495d-85df-19abd647d772 VNI : 100 Nom de l’interface logique : ge-1/0/0.10 ID VLAN : 10 Type d’interface : trunk |
VXLAN 2 et interface logique associée |
Note:
Le commutateur Juniper Networks configure dynamiquement VXLAN et l’interface associée, basés sur les configurations des ports du commutateur logique et du commutateur logique dans NSX Manager. Aucune configuration manuelle n’est donc nécessaire. Nom VXLAN : VXLAN 9acc24b3-7b0a-4c2e-b572-3370c3e1acff VNI : 200 Nom de l’interface logique : ge-1/0/0.20 ID VLAN : 20 Type d’interface : trunk |
Opérations de traçage OVSDB |
Nom du fichier : /var/log/ovsdb Taille du fichier : 10 MB Drapeau : Tous |
Identificateur de source VTEP matériel |
Interface source : loopback (lo0.0) Adresse IP source : 10.17.17.17/32 |
Gestion du trafic BUM de couche 2 au sein de VXLAN 28805c1d-0122-495d-85df-19abd647d772 et au sein de VXLAN 9acc24b3-7b0a-4c2e-b572-3370c3e1acff |
Nœud de service
Note:
Par défaut, un ou plusieurs nuds de service gèrent le trafic BUM de couche 2 dans un VXLAN. Aucune configuration n’est donc requise. |
Configuration non-OVSDB et non-VXLAN
Configuration rapide de l’interface de ligne de commande
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration, copiez et collez les commandes dans l’interface de ligne de commande au niveau de la hiérarchie [edit], puis passez commit en mode de configuration.
set interfaces ge-1/0/9 unit 0 family inet address 10.40.40.1/24 set routing-options static route 10.19.19.19/32 next-hop 10.40.40.2 set routing-options router-id 10.17.17.17 set protocols ospf area 0.0.0.0 interface lo0.0 set protocols ospf area 0.0.0.0 interface ge-1/0/9.0
Procédure
Procédure étape par étape
Pour configurer le réseau de couche 3 sur lequel les paquets échangés entre le serveur physique 1 et VM1 sont tunnelisés :
Configurez l’interface de couche 3.
[edit interfaces] user@switch# set ge-1/0/9 unit 0 family inet address 10.40.40.1/24
Définissez les options de routage.
[edit routing-options] user@switch# set static route 10.19.19.19/32 next-hop 10.40.40.2 user@switch# set router-id 10.17.17.17
Configurez le protocole de routage.
[edit protocols] user@switch# set ospf area 0.0.0.0 interface lo0.0 user@switch# set ospf area 0.0.0.0 interface ge-1/0/9.0
Configuration OVSDB et VXLAN
Configuration rapide de l’interface de ligne de commande
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration, copiez et collez les commandes dans l’interface de ligne de commande au niveau de la hiérarchie [edit], puis passez commit en mode de configuration.
set switch-options ovsdb-managed set protocols ovsdb controller 10.94.184.1 set protocols ovsdb interfaces ge-1/0/0 set protocols ovsdb traceoptions file ovsdb set protocols ovsdb traceoptions file size 10m set protocols ovsdb traceoptions flag all set interfaces lo0 unit 0 family inet address 10.17.17.17/32 primary set interfaces lo0 unit 0 family inet address 10.17.17.17/32 preferred set switch-options vtep-source-interface lo0.0
Procédure
Procédure étape par étape
Pour configurer le commutateur Juniper Networks en tant que VTEP 1 matériel avec une connexion OVSDB à un contrôleur NSX :
Activez le commutateur Juniper Networks pour configurer dynamiquement les VXLAN gérés par OVSDB et les interfaces associées.
[edit switch-options] user@switch# set ovsdb-managed
Configurez explicitement une connexion avec un contrôleur NSX.
[edit protocols] user@switch# set ovsdb controller 10.94.184.1
Spécifiez que l’interface ge-1/0/0 est gérée par OVSDB.
[edit protocols] user@switch# set ovsdb interfaces ge-1/0/0
Configurez les opérations de suivi OVSDB.
[edit protocols] user@switch# set ovsdb traceoptions file ovsdb user@switch# set ovsdb traceoptions file size 10m user@switch# set ovsdb traceoptions flag all
Spécifiez une adresse IP pour l’interface de bouclage. Cette adresse IP sert d’adresse IP source dans l’en-tête externe de tout paquet encapsulé par VXLAN.
[edit interfaces] user@switch# set lo0 unit 0 family inet address 10.17.17.17/32 primary user@switch# set lo0 unit 0 family inet address 10.17.17.17/32 preferred
-
Définissez l’interface de bouclage comme interface qui identifie le VTEP 1 matériel.
[edit switch-options] user@switch# set vtep-source-interface lo0.0
Dans NSX Manager, configurez un commutateur logique pour VXLAN 1 et un commutateur logique pour VXLAN 2. Reportez-vous à la documentation qui accompagne NSX Manager.
Dans NSX Manager, configurez une passerelle pour le commutateur Juniper Networks, un service de passerelle pour l’interface gérée par OVSDB ge-1/0/0, un port de commutateur logique pour l’interface logique ge-1/0/0.10, associée à VXLAN 1, et un port de commutateur logique pour l’interface logique ge-1/0/0.20, associée à VXLAN 2.
Reportez-vous à la section Configuration VMware NSX pour les équipements Juniper Networks fonctionnant comme points de terminaison Virtual Tunnel.
Vérification
Vérifiez que la configuration fonctionne correctement.
- Vérification de la configuration du commutateur logique
- Vérification des adresses MAC des machines virtuelles 1, 3 et 4
- Vérification de la connexion NSX Controller
- Vérification de l’interface gérée par OVSDB
Vérification de la configuration du commutateur logique
But
Vérifiez que la configuration des commutateurs logiques avec les UUID de 28805c1d-0122-495d-85df-19abd647d772 et 9acc24b3-7b0a-4c2e-b572-3370c3e1acff est présente dans le schéma OVSDB pour les périphériques physiques et que le champ Flags de la show ovsdb logical-switch sortie est créé par les deux.
Action
À partir du mode opérationnel, entrez la show ovsdb logical-switch commande.
user@switch> show ovsdb logical-switch Logical switch information: Logical Switch Name: 28805c1d-0122-495d-85df-19abd647d772 Flags: Created by both VNI: 100 Num of Remote MAC: 1 Num of Local MAC: 0 Logical Switch Name: 9acc24b3-7b0a-4c2e-b572-3370c3e1acff Flags: Created by both VNI: 200 Num of Remote MAC: 2 Num of Local MAC: 0
Signification
La sortie vérifie que la configuration des commutateurs logiques est présente. L’état Created by both indique que les commutateurs logiques ont été configurés dans NSX Manager et que le commutateur Juniper Networks a configuré dynamiquement les VXLAN correspondants. Dans cet état, les commutateurs logiques et les VXLAN sont opérationnels.
Si l’état des commutateurs logiques est différent de Created by both, reportez-vous à la section Dépannage d’un commutateur logique non opérationnel et d’un VXLAN géré par OVSDB Junos OS correspondant.
Vérification des adresses MAC des machines virtuelles 1, 3 et 4
But
Vérifiez que les adresses MAC des machines virtuelles 1, 3 et 4 sont présentes dans le schéma OVSDB.
Action
À partir du mode opérationnel, entrez la show ovsdb mac remote commande.
user@switch> show ovsdb mac remote Logical Switch Name: 28805c1d-0122-495d-85df-19abd647d772 Mac IP Encapsulation Vtep Address Address Address a8:59:5e:f6:38:90 0.0.0.0 Vxlan over Ipv4 10.17.17.17 Logical Switch Name: 9acc24b3-7b0a-4c2e-b572-3370c3e1acff Mac IP Encapsulation Vtep Address Address Address 00:23:9c:5e:a7:f0 0.0.0.0 Vxlan over Ipv4 10.17.17.17 00:23:9c:5e:a7:f0 0.0.0.0 Vxlan over Ipv4 10.17.17.17
Signification
La sortie montre que les adresses MAC des machines virtuelles 1, 3 et 4 sont présentes et associées à leurs commutateurs logiques respectifs. Étant donné que les adresses MAC sont présentes, les VM 1, VM 3 et VM 4 sont accessibles via le commutateur Juniper Networks, qui fonctionne comme un VTEP matériel.
Vérification de la connexion NSX Controller
But
Vérifiez que la connexion avec le contrôleur NSX est établie.
Action
En mode opérationnel, entrez la show ovsdb controller commande pour vérifier que l’état de connexion du contrôleur est up.
user@switch> show ovsdb controller VTEP controller information: Controller IP address: 10.94.184.1 Controller protocol: ssl Controller port: 6632 Controller connection: up Controller seconds-since-connect: 542325 Controller seconds-since-disconnect: 542346 Controller connection status: active
Signification
La sortie indique que l’état de connexion du contrôleur NSX est up, en plus d’autres informations sur le contrôleur. Grâce à cette connexion, OVSDB est activé sur le commutateur Juniper Networks.
Vérification de l’interface gérée par OVSDB
But
Vérifiez que l’interface ge-1/0/0 est gérée par OVSDB.
Action
En mode opérationnel, entrez la commande et vérifiez que les show ovsdb interface interfaces logiques ge-1/0/0.10 et ge-1/0/0.20 sont gérées par OVSDB.
user@switch> show ovsdb interface Interface VLAN ID Bridge-domain ge-1/0/0 10 28805c1d-0122-495d-85df-19abd647d772 ge-1/0/0 20 9acc24b3-7b0a-4c2e-b572-3370c3e1acff
Signification
La sortie montre que les interfaces ge-1/0/0.10 logiques et ge-1/0/0.20 sont gérées par OVSDB. Il indique également que l’interface ge-1/0/0.10 est associée à VXLAN 28805c1d-0122-495d-85df-19abd647d772 et que l’interface ge-1/0/0.20 est associée à VXLAN 9acc24b3-7b0a-4c2e-b572-3370c3e1acff.
Tableau de l’historique des modifications
La prise en charge des fonctionnalités est déterminée par la plate-forme et la version que vous utilisez. Utilisez l’Explorateur de fonctionnalités pour déterminer si une fonctionnalité est prise en charge sur votre plateforme.