Cisco 9800-CL – Déploiement d’un cluster de contrôleurs Wi-Fi en HA

Voici un article qui détaille le déploiement d’un cluster de deux contrôleurs Wi-Fi Cisco Catalyst 9800-CL en HA-SSO. Il est constitué de 4 parties distinctes:

  1. Préparation: vérification des prérequis d’installation de la solution, préparation des paramètres de configuration (nommage, adressage IP, etc.), téléchargement de l’ova
  2. Déploiement du contrôleur primaire
  3. Déploiement du contrôleur secondaire
  4. Vérification du statut du HA: vérification de la bonne communication entre les deux contrôleurs

01 – Préparation

Comme pour tous nouveaux déploiements, il est important de s’informer des prérequis et éventuelles contraintes liés au déploiement de la solution. Ici nous allons déployer deux contrôleurs Wi-Fi Cisco Catalyst 9800 en mode HA-SSO, afin d’avoir une solution redondante. C’est le mode de fonctionnement le plus déployé en production.

Les contrôleurs seront déployés sur une infra VMware ESXi 6.7, mais même si vous déployez des contrôleurs physiques, une fois la partie raccordement physique réalisée, vous pourrez suivre la procédure décrite ici.

Première étape, prendre connaissance du document d’installation constructeur qui détaille les prérequis à respecter et les étapes du déploiement. Nous ne déploierons pas ici la dernière version disponible du contrôleur, mais la version IOS-XE 17.1.1s. Cela nous permettra, dans un prochain article, de nous pencher sur la mise à jour de la solution 🙂

Nous sommes plutôt bien servi du coté documentation avec Cisco, qui propose généralement des documents complets et à jour. C’est encore une fois le cas ici avec ce « High Availability SSO Deployment for Cisco Catalyst 9800 Series Wireless Controllers, Cisco IOS XE Amsterdam 17.1 » !

Prérequis matériel

Commençons par regarder les options de déploiement et les ressources nécessaires associées.

C9800-CL – Mode de déploiement et ressources associées

Nous déploierons ici la version Small qui peut accueillir jusqu’à 1000 bornes Wi-Fi et 10000 clients sans-fils. On observe que les ressources nécessaires sont assez limitées avec 4 vCPU, 8 Go de RAM et 8 Go d’espace disque. Trois cartes réseaux seront utilisés dans notre cas puisque nous ferons de la haute disponibilité via deux contrôleurs.

Prérequis Réseaux

Arrêtons nous quelques instants pour décrire les interfaces réseaux de ces nouveaux Catalyst 9800:

C9800 – Interfaces réseaux

Nous utiliserons les trois interfaces dans notre déploiement. Le Catalyst 9800 étant un switch, il est important de ne pas connecter les interfaces sur un même niveau 2 (même VLAN)… sinon gare aux boucles ! Voici comment j’ai configuré la partie réseau sur l’ESXi:

VMware – Configuration réseau pour accueillir les Catalyst 9800

Ne pas oublier de modifier les paramètres de sécurité pour l’interface de « Prod » des contrôleurs. Si ce n’est pas fait, ils ne pourront pas faire commuter les flux des clients sans-fils. Maintenant la partie réseau prête, préparons les autres prérequis:

  • Contrôleur actif
    • Nom: C9800-01
    • Interface admin OoB (Gi 1): 192.168.100.205/24, passerelle en 192.168.100.1
    • Interface PROD (Gi 2): 192.168.10.205/24, passerelle en 192.168.10.1/24
    • Interface RMI* (Gi 2): 192.168.10.207/24 passerelle en 192.168.10.1
    • Interface HA (Gi 3): 169.254.10.207/24
  • Contrôleur passif
    • Nom: C9800-02
    • Interface admin OoB (Gi 1): 192.168.100.206/24, passerelle en 192.168.100.1
    • Interface PROD (Gi 2): 192.168.10.206/24, passerelle en 192.168.10.1/24
    • Interface RMI* (Gi 2): 192.168.10.208/24 passerelle en 192.168.10.1
    • Interface HA (Gi 3): 169.254.10.208/24

*l’interface RMI (Redundancy Management Interface) est utilisée entre les deux membres du cluster pour s’envoyer des Keepalives à travers le réseau.

Téléchargement du fichier OVA

Comme toujours pour le téléchargement d’image Cisco, on se rend sur le portail Software Download via ce lien. Dans le champs de recherche, on renseigne le nom de la plateforme, ici 9800:

C9800 – Recherche de l’image pour le Catalyst 9800-CL

Nous souhaitons l’image d’installation du contrôleur donc on choisi ensuite IOS XE Software, on sélectionne qui nous interesse (17.1.1s ici) on télécharge le format correspondant à notre environnement. Mon déploiement étant sous VMware ESXi, c’est l’image au format OVA que je sélectionne:

C9800 – Téléchargement de l’image au format OVA

C’est sur cette même page que se trouvent les Release Notes pour la version téléchargée. Toujours utile d’y jeter un œil, surtout dans le cadre d’une mise à jour. Une fois le téléchargement du fichier terminé, valider son intégrité afin d’éviter les mauvaises surprises lors du déploiement.

02 – Déploiement du contrôleur primaire

Maintenant que les prérequis sont validés, passons au déploiement du premier contrôleur. Le déploiement du fichier OVA se fait de manière classique. Le choix du type de déploiement (Small, Medium ou Large) se fait à cette étape, ainsi que l’association des interfaces réseaux de la VM sur les Ports Groups VMware:

C9800 – Choix du type de déploiement et association des interfaces réseaux

Une fois l’OVA déployée, la VM démarre et on prend la main dessus via la console VMware:

C9800 – Premier démarrage

On va appliquer ici une configuration minimale qui permettra de prendre la main sur le contrôleur via son interface graphique en HTTPS:

Would you like to enter the initial configuration dialog? [yes/no]: no

Would you like to terminate autoinstall? [yes]:

WLC>enable
WLC#conf t
WLC(config)#hostname C9800-01
C9800-01(config)#username nicolas privilege 15 secret Cisco123!
C9800-01(config)#interface gi1
C9800-01(config-if)#no switchport
C9800-01(config-if)#ip address 192.168.100.205 255.255.255.0
C9800-01(config-if)#exit
C9800-01(config)#ip route 0.0.0.0 0.0.0.0 192.168.100.1
C9800-01(config)#end
C9800-01#wr

Cette configuration nous permet de prendre la main sur le contrôleur depuis son interface d’administration Out of Band. Dans un contexte ou elle n’est pas utilisée, il suffit de configurer l’interface de PROD (Gi 2) à la place. Nous pouvons maintenant prendre la main sur le contrôleur via un navigateur Web:

C9800 – Ecran de connexion

Le contrôleur n’étant pas configuré, un assistant de configuration apparaît pour finaliser la mise en service du contrôleur 9800. Je vous laisse le découvrir en images ci-dessous:

Le contrôleur redémarre pour finaliser la configuration. Le contrôleur est désormais prêt à prendre du service:

C9800 – Ecran d’accueil

03 – Déploiement du contrôleur secondaire

Il est maintenant tant de passer au deuxième contrôleur ! Le déploiement de l’OVA se déroule de manière identique au premier contrôleur. C’est une fois la VM démarrée que les choses changent. Sur la version 17.1.1s déployée ici, le déploiement du contrôleur passif n’est pas possible via l’assistant de configuration graphique. Nous allons donc réaliser la configuration ne ligne de commande. Commençons par configurer, via la console VMware, de quoi prendre la main sur le contrôleur en SSH. Cela sera plus confortable que la console VMware 🙂

Would you like to enter the initial configuration dialog? [yes/no]: no

Would you like to terminate autoinstall? [yes]:

WLC>enable
WLC#conf t
WLC(config)#hostname C9800-02
C9800-02(config)#username Nicolas privilege 15 secret Cisco123!
C9800-02(config)#interface gi1
C9800-02(config-if)#no switchport
C9800-02(config-if)#ip address 192.168.100.206 255.255.255.0
C9800-02(config-if)#exit
C9800-02(config)#ip route 0.0.0.0 0.0.0.0 192.168.100.1
C9800-02(config)#end
C9800-02#wr

Nous pouvons maintenant nous connecter au contrôleur via notre client SSH préféré (SecureCRT ou Putty par exemple). Le Catalyst 9800 fonctionne sous IOX-XE, comme toute la gamme Catalyst 9000. Aussi le fonctionnement du cluster possède des briques communes avec la fonctionnalité Virtual StackWise que l’on retrouve sur les Catalyst 9400, 9500 et 9600 par exemple. La première étape pour que nos deux contrôleurs dialoguent de façon courtoise va donc être de configurer le contrôleur passif en numéro 2:

C9800-02#chassis 1 renumber 2
WARNING: Changing the switch number may result in a configuration change for that switch.  The interface configuration associated with the old switch number will remain as a provisioned configuration. New Switch Number will be effective after next reboot. Do you want to continue?[y/n]? [yes]: yes
C9800-02#reload

[OK]Reload command is being issued on Active unit, this will reload the whole stack
Proceed with reload? [confirm]

Le contrôleur redémarre et nous pouvons reprendre la main dessus, toujours en SSH, pour configurer les interfaces de PROD et de HA.

C9800-02#conf t
C9800-02(config)#vlan 10
C9800-02(config-vlan)#name C9800-PROD
C9800-02(config-vlan)#interface vlan 10
C9800-02(config-if)#ip address 192.168.10.206 255.255.255.0
C9800-02(config-if)#no shutdown
C9800-02(config-if)#interface Gi2
C9800-02(config-if)#switchport mode trunk
C9800-02(config-if)#switchport trunk allowed vlan 10
C9800-02(config-if)#end
C9800-02#chassis redundancy ha-interface gigabitEthernet 3 local-ip 169.254.10.208 /24 remote-ip 169.254.10.207
WARNING: Changing the chassis HA interface IP address may result in a configuration change for that chassis.Also,Do not use any existing Service/Management IP address while configuring HA interface to avoid Duplicate IP.Do you want to continue?[y/n]? [yes]: yes
C9800-02#conf t
C9800-02(config)#redun-management interface vlan10 chassis 1 address 192.168.10.207 chassis 2 address 192.168.10.208
C9800-02(config)#redundancy
C9800-02(config-red)#mode sso
C9800-02(config-red)#end
C9800-02#wr
WARNING: Reload HA Chassis for RMI configuration to take effect

Comme précisé en dernière ligne, il est nécessaire de redémarrer une dernière fois pour que la configuration soit prise en compte. J’ai redémarré les deux contrôleurs afin que le processus d’élection soit réalisé et le cluster formé:

C9800-0x#reload
Reload command is being issued on Active unit, this will reload the whole stack
Proceed with reload? [confirm]

04 – Vérification du statut du HA

Contrôlons que le cluster est bien formé et opérationnel. Commençons par vérifier cela depuis l’interface graphique, depuis le menu Monitoring > General > System:

C9800 – Statut du HA via l’interface graphique

Les onglets Active Statistics et Standby Statistics permettent de contrôler les compteurs d’émission et de réception des messages Keepalive entre les deux contrôleurs. Ce qui peut être utile en cas de diagnostic du HA. Si besoin de plus de détails, dans le cas d’un diagnostic ou par curiosité, la ligne de commande permet de rentrer dans les entrailles du HA !

C9800-01#show redundancy ?
  application       box 2 box application information
  clients           Redundancy Facility (RF) client list
  config-sync       Show Redundancy Config Sync status
  counters          Redundancy Facility (RF) operational counters
  domain            Specify the RF domain
  history           Redundancy Facility (RF) history
  idb-sync-history  Redundancy Facility (RF) IDB sync history
  linecard-group    Line card redundancy group information
  rii               Display the redunduncy interface identifier for Box to Box
  states            Redundancy Facility (RF) states
  switchover        Redundancy Facility (RF) switchover
  trace             Redundancy Facility (RF) trace
  |                 Output modifiers
  <cr>              <cr>

Exemple avec la commande show redundancy qui affiche le statut du HA:

C9800 – Statut du HA en ligne de commande

Opération réussie ! Notre cluster de Catalyst 9800-CL est déployé et fonctionnel 🙂

Dans le prochain article, nous réaliserons des tests de bascule pour observer le comportement des Catalyst 9800 en cas de perte de communication entre les deux contrôleurs ou en cas de panne.

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s