Introduction
Ce document décrit le cas d'utilisation spécifique d'une migration d'un contrôleur LAN sans fil (WLC) AireOS vers un WLC Catalyst 9800 basé sur Cisco IOS® XE.
Conditions préalables
Exigences
Ce document suppose que vous avez un WLC AireOS et un WLC 9800 déjà configurés et prêts pour la migration. Il suppose également que vous avez configuré un serveur TFTP/SFTP sur votre réseau accessible par les points d'accès.
Il s'agit d'une migration où l'administrateur réseau cherche à minimiser autant que possible les temps d'arrêt des clients sans fil. Cet article ne couvre pas la migration de la configuration entre les deux modèles de contrôleurs et se concentre uniquement sur l'automatisation du prétéléchargement AP de sorte que les points d'accès (AP) ne redémarrent qu'une seule fois lors du changement de contrôleur.
Composants utilisés
Cet article a été écrit sur la base d'un scénario 9800-L et 3504, exécutant 8.10 et 17.4.1, mais il doit s'appliquer de la même manière à toutes les versions de logiciels ainsi qu'à 9800-CL,9800-40,9800-80, 5520,8540, vWLC et 8510.
Il nécessite WLANPoller version 3.1.
9800 version 17.9 nécessite un chemin de mise à niveau via 17.3.7 s'il provient d'une version antérieure et s'il provient du logiciel AireOS 8.x. Il n'est pas possible d'avoir une transition en douceur entre un WLC 8.5 et un 17.9 9800 en utilisant cet article pour obtenir un seul pré-téléchargement, vous devez utiliser cet article pour effectuer un pré-téléchargement vers 17.3.7 et ensuite laisser les AP télécharger 17.9 à partir du WLC en utilisant le processus habituel après cela.
Si un AP télécharge le code 17.9 alors qu'il exécute une version antérieure à 17.3.5/17.3.6/17.3.7, il se plaint de ne pas avoir assez d'espace pour installer l'image 17.9. Ce chemin de mise à niveau n'est pas requis si vous utilisez une version 9800 antérieure à la version 17.9 (consultez les notes de version 9800 pour voir s'il existe un chemin de mise à niveau. Considérez venir d'AireOS est comme venant d'un 16.12 9800).
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Problème
Pour minimiser les temps d'arrêt pendant une mise à niveau, l'administrateur réseau s'appuie généralement sur le prétéléchargement du point d'accès. Cette fonctionnalité permet, lorsque le contrôleur a déjà téléchargé un nouveau code mais n'a pas encore redémarré sur ce nouveau code, aux AP de télécharger le nouveau code déjà tout en continuant à servir les clients. Cela signifie que lorsque le WLC redémarre sur le nouveau code, les AP redémarrent seulement une fois afin de démarrer sur ce nouveau code.
Sans pré-téléchargement d'AP, les AP doivent attendre que le WLC se reconnecte sur le nouveau code afin d'essayer de le joindre et de réaliser seulement alors qu'ils ont besoin de télécharger un nouveau code, de le télécharger tout en même temps, puis de redémarrer et d'essayer de se joindre à nouveau.
Le pré-téléchargement des points d'accès, en plus de réduire les temps d'arrêt des clients, est également utile dans les situations où les filiales ont une petite connexion WAN ou la latence sur la connexion WAN signifie un temps long pour télécharger le nouveau code pour ces points d'accès. Le téléchargement se produit alors que le point d'accès traite toujours les clients lors de l'utilisation du pré-téléchargement du point d'accès.
Cependant, le problème dans le cas d'une migration est que vous avez affaire à deux contrôleurs séparés (un exécutant AireOS et un exécutant Cisco IOS XE) et il n'y a aucun moyen intégré d'utiliser le pré-téléchargement AP dans cette situation pour que l'AP pré-télécharge un code à partir d'un autre contrôleur. La solution réside dans la programmabilité et l'automatisation.
Solution
Concept de workflow
Cet article explique l'automatisation (à l'aide de l'outil WLAN Poller disponible publiquement, voir Version Enterprise WLAN-Poller) d'un processus simple :
- Connectez-vous à tous les points d'accès ou à un sous-ensemble d'AP connectés au WLC AireOS via SSH.
- Lancez le prétéléchargement de l'image AP de Cisco IOS XE à l'aide de la commande
archive download-sw
. Le point d'accès télécharge ensuite l'image sur sa partition de sauvegarde tout en continuant à servir les clients et à fonctionner normalement.
- Lorsque vous êtes prêt à migrer le point d'accès, configurez le WLC 9800 en tant que WLC principal pour les points d'accès et redémarrez-les.
- Les points d'accès redémarrent immédiatement sur le nouveau code (compatible avec Cisco IOS XE) et rejoignent le WLC 9800 sans aucun autre redémarrage, ce qui limite le temps d'arrêt à un cycle de redémarrage.
L'avantage réside dans le découplage du téléchargement de code de la migration/redémarrage réelle et la limitation à un cycle de redémarrage.
Préparer le serveur de fichiers avec les images AP
Le moyen le plus simple est de télécharger le fichier de bundle AP contenant toutes les images AP pour une version donnée. Accédez à la section de téléchargement cisco.com et téléchargez le fichier du contrôleur sans fil intégré 9120 pour la version de votre choix. Il s'agit d'un fichier .tar contenant l'image CAPWAP AP AP pour chaque modèle AP. Il vous suffit d'extraire tout le contenu .tar sur votre serveur TFTP/SFTP et vous avez terminé.
Configuration des fichiers du contrôleur WLAN pour l'opération de téléchargement du code
Après avoir téléchargé WLAN Poller pour Mac ou Windows, il y a quelques fichiers à modifier pour l'adapter à votre réseau et à la configuration.
Le WLANPoller, une fois exécuté, se connecte au WLC, vérifiez les AP joints et SSH à tous. Il exécute ensuite une liste spécifique de commandes sur le WLC et sur les AP.
CMDlist_wlc.txt
Ce fichier contient la liste des commandes que WLAN Poller exécute sur le WLC AireOS chaque fois qu'il est exécuté. Nous n'avons pas besoin de toutes les commandes qui sont dans ce fichier par défaut, donc réduisez le contenu de ce fichier à seulement ces 2:
show time
show ap summary
Ceci liste les AP joints au WLC et l'heure, juste pour le suivi et la journalisation.
Cmdlist_cos.txt / Cmdlist_cos_bcm.txt / Cmdlist_cos_qca.txt
Ce fichier contient la liste des commandes qui sont envoyées aux AP de la série x800 (1800, 2800, 3800).
Supprimez le jeu de commandes existant et remplacez-le par les commandes suivantes :
show clock
archive download-sw /no-reload tftp://192.168.1.12/%apimage%
Remplacez l'adresse IP de l'exemple précédent par l'adresse IP de votre serveur TFTP ou SFTP.
Cette étape dépend de plusieurs niveaux des modèles AP que vous ciblez.
Le fichier cmdlist_cos_qca exécute uniquement les commandes sur les points d'accès 9117 et 9130. Le fichier cmdlist_cos_bcm exécute uniquement les commandes sur les points d'accès 9115 et 9120.
le fichier cmdlist_cos exécute les commandes sur les AP 1800s/2800/3800/1540/1560.
Remarque :
À partir de la version 3.2 du WLAN Poller, les points d'accès 9105 s'exécutent avec cmdlist_cos même s'ils devraient idéalement s'exécuter avec cmdlist_cos_bcm. Cela peut changer dans les prochaines versions.
Cela signifie que vous devez écrire vos commandes dans un ou plusieurs de ces fichiers selon les AP que vous avez.
La deuxième astuce est que vous devez spécifier la bonne image AP pour le bon modèle AP. L'exemple donné juste avant a été exécuté sur un AP 1815 qui exécute le fichierap1g5
image. Le mot-clé %apimage% (caractères de pourcentage inclus) est un mot-clé spécial que WLANPoller doit remplacer par le nom de fichier de l'image ap réelle.
Pour plus de commodité, voici un tableau des modèles AP et l'image qu'ils exécutent :
1815/1540/1840 |
ap1g5 |
1810/1830/1850 |
ap1g4 |
2800/3800/4800/1560 |
ap3g3 |
1700/2700/3700 |
ap3g2 (ou c3700 pour le 3700AP dans la version 8.10) |
9105 |
ap1g8 |
9115/9120 |
ap1g7 |
9117 |
ap1g6 |
9130 |
ap1g6a |
Config.ini
Le fichier config.ini est le fichier de configuration principal et doit être modifié pour certains champs. Cette section couvre uniquement les champs qui doivent être modifiés par rapport à la valeur par défaut :
wlc_user: <enter the username of the AireOS WLC>
wlc_pasw: <enter the password of the AireOS WLC>
wlc_enable: <re-enter the username of the AireOS WLC>
ap_user: <enter the username for the AP SSH connection>
ap_pasw: <enter the password for the AP SSH connection>
ap_enable: <enter the enable password for the AP SSH connection>
ipaddr: <enter the IP address of the AireOS WLC>
Sélectionner les points d'accès affectés
Par défaut, si vous avez juste suivi les instructions jusqu'à présent, TOUS les AP actuellement joints au WLC AireOS sont affectés par le script.
Si vous voulez le faire par lot d'AP à la fois, il y a plusieurs façons.
Dans le fichier config.ini, vous pouvez supprimer les commentaires du ap_name_filter =
champ et taper un préfixe de nom d'AP.
Exemple :
ap_name_filter = Branch1-
Ce filtre se connecte à tous les AP joints au WLC dont le nom commence par "Branch1-".
Si vous voulez être plus précis, vous pouvez utiliser le aplist:
champ du fichier config.ini.
Un exemple de fichier CSV est fourni avec wlanpoller, vous pouvez entrer la liste des noms d'AP et des IP auxquels le script doit se connecter.
Exécuter l'opération de prétéléchargement du code AP et vérifier
Exécutez le scriptwlanpoller
. Il affiche ensuite les détails de connexion et vous donne la quantité d'AP qu'il a vu sur le WLC et a pu SSH dans. Toute erreur peut être affichée dans la section Erreur à la fin.
Enterprise-WlanPoller-Mac-3.0-Bundle % ./wlanpoller
* Detected local address : 192.168.1.63
* Logging to syslog server : 192.168.1.63
* Logging to console enabled : False
* Logging to file : ./logs/20210125_wlanpoller.log
* Using TFTP address : 192.168.1.63
* Using TFTP IPv6 address : self
* Using FTP address : 192.168.1.63
* WLC Type AirOS[1] 9800[2] : 1
* Transfer mode : tftp
* Poller enable : True
* Event enable : False
* DFS trace enable : False
* WLC config backup : False
* WLC AP crash upload : False
* WLC Support Bundle upload : False
============================================================
Summary
============================================================
Total APs : 1
Processed APs : 1
Failed APs : 0
============================================================
Errors
============================================================
En cas de problèmes lors de l'exécution
Pour vérifier si le script s'est exécuté correctement jusqu'à présent, vous pouvez vérifier pour chaque point d'accès si l'image de sauvegarde est votre code cible Cisco IOS XE.
Un messageshow version
sur l'interface de ligne de commande de l'AP s'affiche par exemple à ce stade si tout a réussi :
AP Running Image : 8.10.142.0
Primary Boot Image : 8.10.142.0
Backup Boot Image : 17.4.1.6
Dans le dossier /logs de WLANpoller, vous trouverez le fichier journal horodaté du script WLANpoller lui-même si quelque chose ne fonctionne pas correctement.
Le script s'est peut-être exécuté correctement, mais le transfert a peut-être échoué. Dans le dossier /data à l'intérieur du WLAN Poller, vous trouvez le résultat des sessions SSH établies par le WLAN Poller vers le WLC et les AP et pouvez identifier tout problème. Voici un exemple où le serveur TFTP n'était pas en ligne :
username % pwd
/Users/username/Downloads/Enterprise-WlanPoller-Mac-3.0-Bundle/data/2021/01/25
username % ls
cos_1815AP.log wlc_WLCNico.log
username % cat cos_1815AP.log
<run timestamp='2021-01-25T14:37:30.888559' device='cos' hostname='1815AP' model='AIR-AP1815I-E-K9' version='8.10.142.0'>
<cmd string='show clock'>
show clock
*13:38:02 UTC Mon Jan 25 2021
1815AP#
</cmd>
<cmd string='archive download-sw /no-reload tftp://192.168.1.12/ap1g5'>
archive download-sw /no-reload tftp://192.168.1.12/ap1g5
Starting download AP image tftp://192.168.1.12/ap1g5 ...
It may take a few minutes. If longer, please abort command, check network and try again.
-=O=- # # # #
curl: (28) Error
%Error opening tftp://192.168.1.12/ap1g5 (Error 28: Operation timeout)
Image transfer failed
1815AP#
</cmd>
</run>
username %
Configuration des fichiers du contrôleur WLAN pour l'opération de migration AP
Si vous déplacez maintenant les AP vers le 9800, ils essaient de le joindre avec leur partition actuelle, remarquez que le code est différent mais qu'ils ont la bonne version de code dans leur partition de sauvegarde, puis redémarrez.
Vous pourriez gagner quelques secondes (en enregistrant la première tentative de jointure) en ajoutant une commande « config boot path 2 », puis « %confirm% reload » à ce fichier texte. Cela définirait alors la partition de sauvegarde comme étant la nouvelle partition active et redémarrerait immédiatement (sans donner le temps d'essayer de joindre le WLC 9800). Le point d'accès redémarre immédiatement, puis rejoint le 9800 avec la bonne version de code.
Le mot%confirm%
-clé est requis lorsque la commande qui suit le mot-clé nécessite une invite « [confirm] », comme le fait la commande reload. Cette commande accepte automatiquement l'invite.
Cmdlist_cos.txt
show clock
capwap ap secondary-base dummy 192.168.2.1
capwap ap primary-base <9800 name> <9800 IP>
Informations connexes