
Mise à niveau de SONiC NOS : Guide pratique d'un CCIE pour un processus sans faille
TL/DR : Les mises à jour NOS peuvent être un peu difficiles, si vous voulez un moyen facile de mettre à jour automatiquement les appareils SONiC, Verity met à jour les appareils pour vous en fonction de vos besoins spécifiques en quelques clics.
En tant qu'ingénieur réseau titulaire d'une CCIE et fort de plusieurs années d'expérience pratique avec des systèmes d'exploitation réseau propriétaires et open-source, j'ai pu constater de visu à quel point SONiC (Software for Open Networking in the Cloud) a changé le monde de l'infrastructure réseau. Basé sur Linux et conçu pour les centres de données à grande échelle, SONiC offre une flexibilité et un contrôle inégalés par les fournisseurs traditionnels. Mais cette puissance s'accompagne d'une courbe d'apprentissage, en particulier lorsqu'il s'agit d'une opération aussi cruciale que la mise à niveau du NOS.
Voici une description étape par étape de la manière de mettre à niveau le SONiC NOS en toute sécurité et de manière efficace.
1. Comprendre votre environnement
Avant de procéder à une mise à niveau, faites un inventaire précis de votre environnement actuel :
- Quelle version de SONiC utilisez-vous ?
- Quelle plate-forme matérielle utilisez-vous (Broadcom, Nvidia/Mellanox, Marvell, etc.) ?
- Utilisez-vous une architecture à double ToR (actif-standby) ou à ToR unique ?
- Quel est le chemin de mise à jour à partir de votre version actuelle ? (SONiC ne prend pas toujours en charge les mises à jour directes entre toutes les versions.
afficher la version
etshow platform summary
pour documenter votre ligne de base.
2. Préparation de la mise à niveau
La préparation est la phase la plus critique. Sauvegardez vos configurations en utilisant :
sudo config save -y
Exporter la configuration pour un stockage externe :
sudo config save /host/config_db.json
Ensuite, validez la syntaxe de votre configuration avec :
sudo config validate /host/config_db.json
Enfin, copiez l'image SONiC cible sur votre appareil :
sudo wget
Pour les versions officielles, utilisez le GitHub de SONiC ou le portail de votre fournisseur.
3. Installer la nouvelle image
Pour installer la nouvelle image SONiC, utilisez la commande sonic-installer
et de l'utilitaire. Il prend en charge le retour en arrière et préserve votre configuration existante (à moins qu'il ne vous soit explicitement demandé de ne pas le faire).
sudo sonic-installer install --skip-mount
Pour conserver la configuration actuelle pendant la mise à niveau :
sudo sonic-installer install --skip-mount --preserve
Si vous testez, vous pouvez également la définir comme la prochaine image de démarrage sans l'installer immédiatement :
sudo sonic-installer set-next-boot
4. Redémarrer et vérifier
Après l'installation :
sudo reboot
Après le redémarrage, vérifiez l'état du système :
afficher la version
services d'exposition
docker ps -a
Vous devez également vérifier que les voisins BGP sont activés, que les interfaces sont actives et que les services personnalisés sont en cours d'exécution.
5. Plan de reconduction
Même la meilleure des mises à jour peut échouer. Si nécessaire, revenez en arrière en utilisant :
sudo sonic-installer list
sudo sonic-installer install --skip-mount --preserve
Conservez toujours au moins une image de bonne qualité sur votre commutateur pour permettre le retour en arrière.
Réflexions finales
SONiC offre des capacités puissantes, mais contrairement aux solutions traditionnelles des fournisseurs, vous maîtrisez l'ensemble du cycle de vie de la mise à niveau. La nature modulaire de SONiC, qui utilise des conteneurs pour les services critiques tels que BGP, LLDP et DHCP, signifie que les mises à niveau peuvent parfois avoir un impact sur des services isolés sans mettre à mal l'ensemble de la pile. Testez minutieusement dans un laboratoire, automatisez dans la mesure du possible et ne sous-estimez pas la puissance d'un snapshot de pré-mise à niveau.
Si vous voulez un moyen facile de faire des mises à jour SONiC, Verity dispose d'une fonction de mise à niveau NOS qui peut être automatisé, programmé et qui gère même la mise à niveau des appareils en masse en fonction de vos besoins.

Josh Saul
Vice-président du marketing produit
Josh Saul est un pionnier des solutions de réseau open source depuis plus de 25 ans. En tant qu'architecte, il a construit des réseaux centraux pour GE, Pfizer et NBC Universal. En tant qu'ingénieur chez Cisco, Josh a conseillé des clients dans le secteur financier du Fortune 100 et a évangélisé les nouvelles technologies auprès des clients. Plus récemment, Josh a dirigé des équipes de marketing et de produits chez VMware (racheté par Broadcom), Cumulus Networks (racheté par Nvidia) et Apstra (racheté par Juniper).