Netops avec Emacs et Org mode
Vincent Bernat
Org mode[1] est un paquet pour Emacs permettant de « prendre des notes, maintenir une liste des tâches, planifier des projets et écrire des documents ». Il peut exécuter des extraits de code et en capturer la sortie (via Babel[2]). C’est un outil inestimable pour documenter son infrastructure et ses opérations[3].
Voici trois (relativement) courtes vidéos démontrant l’utilisation de Org mode dans le cadre des opérations réseau sur du matériel Juniper. J’y utilise junos-mode[4] qui propose les fonctionnalités suivantes :
- coloration syntaxique pour les fichiers de configuration ;
- application de fragments de configuration sur des équipements distants ;
- exécution de commandes arbitraires.
Certains équipements Junos peuvent être particulièrement lents. Aussi, l’application de configuration et l’exécution de commandes se fait de manière asynchrone1 à l’aide d’un programme compagnon en Python.
Dans la première vidéo, je prends des notes sur la configuration de BGP add-path (RFC 7911[6]). La plupart des fonctionnalités de junos-mode[4] y sont présentées.
Dans la seconde vidéo, j’exécute une opération planifiée pour activer cette fonctionnalité en production. Le document est un mode opératoire et contient la configuration à appliquer ainsi que les commandes à utiliser pour vérifier le bon fonctionnement. À la fin, on obtient un compte-rendu détaillé de l’opération.
Dans la troisième vidéo, une recette a été utilisée pour exécuter un changement. Je fournis quelques variables en entrée, j’exécute la recette puis je vérifie le résultat.