Configuration d’un chassis virtuel sous Junos

Configuration d’un chassis virtuel sous Junos
Jérémie Kassianoff
15 décembre 2014
6 min de lecture

Découvrez la technologie virtual chassis de Juniper Network. Prendre en main la solution avec des EX4200 et 3300!

CertifiéJunos Associé (JNCIA-Junos)

Cas d'usage concret

Vous voulez mutualiser deux commutateurs Juniper en un seul équipement logique : découvrez la configuration d'un virtual chassis sous Junos.

La technologie virtual chassis de Juniper network :

La technologie virtual chassis permet d’interconnecter des équipements et de les gérer comme un seul équipement logique. Le plan de contrôle (junOS) distribue la même information à tous les autres commutateurs. Ainsi l’entité logique appeléeVirtual chassis dispose de la même information *«*comme si c’était une seule entité physique unique“ (source : SILICON.FR).

Plus d’informations sur le châssis virtuel de Juniper à l’adresse suivante : comprendre le chassis virtuel.

Les pré-requis matériels :

Nous allons procéder à la configuration de deux chassis, dans mon cas j’ai à ma disposition le matériel physique :

Pour la création d’un virtual chassis EX4200

  • Trois câbles VCPs dedicated (pour la connexion entre les switchs EX4200).
  • Un switch : EX4200-24px.
  • Deux Switchs : EX4200-24t.

Pour la création d’un virtual chassis EX3300

Dans le cas présent, nous avons deux cas d’interconnexion différents pour nos virtual chassis :

  • La connexion via les câbles dedicated (VCPs) .
  • La connexion via les ports SFP+ en façade.

La méthode de câblage et la configuration des châssis virtuels

Virtual chassis de 3x EX4200 (master/backup/linecard)

 A l’arrière des panneaux des switchs (SW0/SW1/SW2) vous avez deux ports VCPs : 0 et 1 et nous allons les relier entre eux :

  1. SW0 port vcp 0 vers le port vcp 1 du SW1.
  2. SW0 Port vcp 1 vers le port vcp 0 du SW2.
  3. SW1 Port vcp 0 vers le port vcp 1 du SW2.

Chaque switch est relié au sous adjacent tandis que le 1er et le dernier forment une boucle.

Affichons désormais notre configuration du virtual-chassis dans JunOS :

bash
show virtual-chassis vc-port 

fpc0:
--------------------------------------------------------------------------
Interface   Type              Trunk  Status       Speed        Neighbor
or                             ID                 (mbps)       ID  Interface
PIC / Port
vcp-0       Dedicated           2    Up           32000        1   vcp-1  
vcp-1       Dedicated           1    Up           32000        2   vcp-0  

fpc1:
--------------------------------------------------------------------------
Interface   Type              Trunk  Status       Speed        Neighbor
or                             ID                 (mbps)       ID  Interface
PIC / Port
vcp-0       Dedicated           2    Up           32000        2   vcp-1  
vcp-1       Dedicated           1    Up           32000        0   vcp-0  

fpc2:
--------------------------------------------------------------------------
Interface   Type              Trunk  Status       Speed        Neighbor
or                             ID                 (mbps)       ID  Interface
PIC / Port
vcp-0       Dedicated           2    Up           32000        0   vcp-1  
vcp-1       Dedicated           1    Up           32000        1   vcp-0

Pour une meilleure compréhension du résultat rendez-vous sur : show virtual chassis vcp port puis pour une configuration en master/backup uniquement se référer à l’article suivant : EX4200 (master/backup).

Vous pouvez retrouver d’autres exemples ici : virtual chassis câblage exemple (EX4200).

Virtual chassis de 2x EX3300 (master/backup)

Sur l’avant du panneau de chacun des switchs, nous utiliserons le câble DAC SFP+, sachez que les ports seront ensuite nommés de XE-0/1/0 à 0/3/0. Sachez que les ports 2 et 3 sont par défaut configurés dans le VCP sur les EX3300.

Informations complémentaires  : virtual chassis EX3300.

Pour nous assurer que c’est bien le cas :

bash
show virtual-chassis vc-port    

fpc0:
--------------------------------------------------------------------------
Interface   Type              Trunk  Status       Speed        Neighbor
or                             ID                 (mbps)       ID  Interface
PIC / Port
1/2         Configured         -1    Up           10000        1   vcp-255/1/2
1/3         Configured               Absent  

fpc1:
--------------------------------------------------------------------------
Interface   Type              Trunk  Status       Speed        Neighbor
or                             ID                 (mbps)       ID  Interface
PIC / Port
1/2         Configured         -1    Up           10000        0   vcp-255/1/2
1/3         Configured               Absent

Un exemple pratique, nous souhaitons abandonner les ports 2 et 3, nous allons utiliser le port 1 uniquement. Voici la marche à suivre :

  1. Supprimer la configuration vc-port existante en local :
    sql
    request virtual-chassis vc-port delete pic-slot 1 port 2
    request virtual-chassis vc-port delete pic-slot 1 port 3
    
  2. Supprimer la configuration vc-port existante sur le membre 1 (second switch) :
    sql
    request virtual-chassis vc-port delete pic-slot 1 port 2 member 1
    request virtual-chassis vc-port delete pic-slot 1 port 3 member 1
    
  3. Ajouter notre configuration vc-port sur le port 0 en local :
    bash
    request virtual-chassis vc-port set pic-slot 1 port 0
    
  4. Ajouter notre configuration vc-port sur le port 0 sur le membre 1 (second switch) :
    bash
    request virtual-chassis vc-port set pic-slot 1 port 0 member 1
    
  5. Vérification de notre virtual-chassis :
    bash
    show virtual-chassis vc-port 
    
    fpc0:
    --------------------------------------------------------------------------
    Interface   Type              Trunk  Status       Speed        Neighbor
    or                             ID                 (mbps)       ID  Interface
    PIC / Port
    1/0         Configured         -1    Up           10000        1   vcp-255/1/0
    
    fpc1:
    --------------------------------------------------------------------------
    Interface   Type              Trunk  Status       Speed        Neighbor
    or                             ID                 (mbps)       ID  Interface
    PIC / Port
    1/0         Configured         -1    Up           10000        0   vcp-255/1/0
    

Les rôles et l’organisation des switchs dans un virtual chassis

Les switchs peuvent avoir différents rôle dans un VC tel que :

  1. Master : il est le maître et contient la configuration du virtual chassis.
  2. Backup : il est en état de reprendre le service du maître et sauvegarde la configuration du VC.
  3. LineCard : il joue le rôle de relais en cas de défaut sur le switch backup (un minimum de 3 switchs).

Plus de détails sur le site officiel de Juniper à l’adresse suivante.

Les switchs peuvent être organisés dans deux modes dans un VC  :

  1. Preprovisioned :  assigné d’une façon déterminée avec son numéro de série :
    bash
    set virtual-chassis preprovisioned
    set virtual-chassis member 0 serial-number abc123 role routing-engine
    set virtual-chassis member 1 serial-number def456 role routing-engine
    set virtual-chassis member 2 serial-number ghi789 role line-card
    set virtual-chassis no-split-detection #uniquement entre deux switchs#
    
  2. Non-preprovisioned : assigné par l’algorithme d’élection avec un numéro de priorité :
    bash
    set virtual-chassis member 0 mastership-priority 255
    set virtual-chassis member 1 mastership-priority 255
    set virtual-chassis member 2 mastership-priority 0
    

Sinon les switchs sont élus par un algorithme par défaut pour choisir le rôle de chaque switch dans le VC. Je vous conseille la méthode 1.

Plusieurs exemples :

Le port management dans un Virtual chassis

Chaque switch dispose d’un port de management, et dans un VC nous pouvons ajouter une IP fixe de management au VC. L’interface utilisée se nomme vme, en cas de rupture avec le maître elle se retrouve sur le nouveau maôtre qui est élu et ainsi de suite.

Voici un exemple de configuration :

bash
set interfaces vme unit 0 family inet address 192.168.254.1/29

Pour terminer je vous invite à terminer votre initiation avec les bonnes pratiques du VC Juniper, vous connaissez désormais les bases du Virtual chassis sous JunOS.

Conclusion

Cette mise en place du virtual chassis sur des EX4200 et EX3300 permet de gérer plusieurs commutateurs Juniper comme une seule entité logique, en topologie ring ou master/backup. J'ai détaillé le câblage, la vérification des ports VCP, l'attribution des rôles (master, backup, linecard) ainsi que la configuration de l'interface de management (vme). Cette technologie simplifie grandement l'administration d'une infrastructure réseau composée de plusieurs switchs physiques.