Ce billet se donne pour objectif d’apporter un éclairage sur les différents mécanismes à disposition sur les modèles des gammes Catalyst 3000 et Catalyst 9300 en rapport avec la haute disponibilité (HA : High Availability) en particulier s’agissant de l’upgrade de l’IOS du stack.
L’upgrade d’un stack de Catalyst 3000 ou Catalyst 9000 consistant à monter la version de chacun des membres du stack, le temps total pour réaliser l’upgrade du stack et d’autant plus long qu’il y a de membres dans le stack : maximum 9 pour les Catalyst 3750 (ne se vendent plus), Catalyst 3650 et Catalyst 3850 et maximum 8 pour les Catalyst 9300.
Commençons par clarifier un premier point: ISSU (In Service Software Upgrade) n’est pas supporté par les Catalyst 3750, Catalyst 3650, Catalyst 3850 et Catalyst 9300. ISSU est supporté à partir des Catalyst 4500-X et Catalyst 4500-E. ISSU désigne l’absence de perte de trame Ethernet et paquet IP. ISSU est rendu possible sur les Catalyst 4500-X et Catalyst 4500-E grâce au VSS (Virtual Switching System).
Les Catalyst 3750 supportent le RSU (Rolling Stack Upgrade) qui permet de minimiser l’interruption de service pour autant que le stack dispose de liens d’uplinks redundants répartis sur différents membres du stack. Les membres du stack sont ainsi mis à jour l’un après l’autre. RSU n’est pas supporté par les Catalyst 3650, Catalyst 3850 et Catalyst 9300 et ce n’est pas prévu à ce stade qu’ils le supportent un jour.
La direction actuelle du développement est moins de développer ou transposer sur les modèles de Catalyst récents des mécanismes d’optimisation de l’upgrade du stack (comme le RSU) que de réduire ou supprimer le temps d’upgrade individuel de chaque membre du stack, ce qui tend au même résultat tout un apportant également lors d’un upgrade, une réduction du temps d’indisponibilité des Catalyst qui ne sont pas membres d’un stack.
C’est ainsi qu’est apparu FSU (Fast Software Upgrade), disponible depuis IOS-XE 16.6.1 et qui est à ce jour supporté par le modèle Catalyst 3850 48 ports UPoE et par tous les modèles de Catalyst 9300 depuis IOS-XE 16.8.1 (Network Essentials et Network Advantage), aussi bien en stack qu’en « stand alone ». FSU autorise une mise à jour en une minute, voire moins.
Le gros progrès récent vient de la réduction du temps de boot/reload des Catalyst 3650, Catalyst 3850 et Catalyst 9300 depuis les versions IOS-XE 16.5 et IOS-XE 16.6, à désormais 5 et 3 minutes respectivement (temps pour un seul switch, plus long pour un stack). Dans les versions antérieures, l’ordre de grandeur de temps de boot/reload était proche de 7 minutes, voire 8 pour un stack de 8 membres. Ce temps dépend cependant de la configuration du switch, donc des fonctionnalités activées.
Enfin, plus récent encore est apparu le patching. Le patching consiste, au lieu de remplacer la totalité du binaire, à remplacer seulement un sous-ensemble, un « bout » du code. Ce bout de code est développé pour corriger un ou plusieurs bugs.
Il faut différencier le « cold patching » du « hot patching ». Le « cold patching » nécessite un reload et ne permet pas d’éviter la perte de service associée. Le bénéfice du « cold patching » réside dans le fait qu’un patch est par définition plus rapide à développer et donc que l’attente du correctif est potentiellement plus courte. Le « hot patching » quant à lui permet d’être appliqué sans redémarrer le switch, il n’y a donc pas d’interruption de service. Réduire le temps de reload suite à un upgrade est un bénéfice certain, ne pas avoir à faire de reload pour corriger un bug est encore plus séduisant.
Le patching porte aussi le nom de Software Maintenance Upgrade (SMU). Le « cold patching » est supporté en CLI par les Catalyst 9000 en Network Advantage depuis IOS-XE 16.6.1 (sorti en juillet 2017) eainsi que par les Catalyst 3650 et Catalyst 3850 en IP Base minimum depuis IOS-XE 16.6.3 (sorti en mars 2018). Le support en GUI par DNA Center nécessite DNA Advantage. Les Catalyst 3650 et Catalyst 3850 supportent 4 SMUs tandis que les Catalyst 9000 ne souffrent d’aucune limitation en nombre de SMU, si ce n’est la taille de l’espace disque. Il n’est pas prévu que les Catalyst 3650 et Catalyst 3850 supportent un jour le « hot patching ». Les Catalyst 9300 quant à eux supportent le « hot patching » depuis IOS-XE 16.9.1 (sorti en juillet 2018)
Dans un prochain billet, nous traiterons des mécanismes de haute disponibilité en rapport avec la perte du master du stack.