Comprendre Salt pour Junos OS
RÉSUMÉ Vous pouvez utiliser Salt pour gérer les équipements exécutant Junos OS, définir et appliquer l’état d’un système, exécuter des commandes et surveiller, dépanner et résoudre les problèmes en temps réel.
Présentation de Salt pour Junos OS
Salt, ou la plate-forme SaltStack, est un outil d’exécution et de gestion de la configuration à distance basé sur Python et open source. Salt vous permet de définir l’état d’un système et de l’appliquer sur les nœuds gérés. Vous pouvez également utiliser Salt pour exécuter des commandes ad hoc sur un équipement. La conception distribuée et les sessions persistantes le rendent rapide, flexible et hautement évolutif, avec des déploiements capables de gérer des milliers d’équipements sur plusieurs fournisseurs. L’installation salt comprend des modules qui vous permettent d’utiliser Salt Open ou SaltStack Enterprise pour gérer les équipements exécutant Junos OS.
Salt se distingue des autres outils de gestion de configuration en ce qu’il est basé sur des événements. L’architecture Salt est centrée sur un bus d’événements, qui utilise ZeroMQ comme mécanisme de transport de messages et d’événements par défaut pour la communication entre les composants. Les composants communiquent en envoyant des messages par le bus, et des événements externes peuvent être injectés dans le bus. Cela vous permet de créer une infrastructure basée sur les événements (EDI) qui répond automatiquement à des événements spécifiques.
L’architecture salt générale est un modèle serveur/client dans lequel le maître Salt gère un ou plusieurs minions Salt. Salt utilise généralement une architecture basée sur des agents, qui nécessite que les nœuds gérés exécutent le processus salt-minion, comme le montre la figure 1. Le maître Salt donne des commandes aux sbires, et les minions exécutent les commandes et renvoient les résultats au maître de Salt.

Cependant, les configurations Salt sont flexibles et permettent une option masterless, une option sans agent et l’utilisation de minions proxy. Un minion proxy vous permet de gérer un équipement qui n’exécute pas directement un minion Salt, mais qui peut être géré via un autre protocole, par exemple netconf (Network Configuration Protocol). Un maître Salt peut gérer les équipements exécutant Junos OS via un minion proxy Salt.
L’installation salt comprend le module proxy Junos , qui traduit les opérations Salt en instructions spécifiques à Junos OS et permet au système Salt d’utiliser un minion proxy pour se connecter et gérer les équipements exécutant Junos OS. Le proxy Junos se connecte au maître Salt à l’aide du bus d’événements ZeroMQ et utilise la bibliothèque Juniper Junos PyEZ pour établir une session NETCONF sur SSH avec l’équipement exécutant Junos OS. Le processus de minion proxy peut s’exécuter sur le maître Salt comme illustré en figure 2 ou sur un ou plusieurs serveurs distincts comme illustré en figure 3.


L’installation Salt comprend également les modules d’exécution et d’état Junos (pour Salt). Ces modules définissent des fonctions qui vous permettent d’exécuter des commandes ad hoc ou de définir et d’appliquer des états particuliers sur les équipements exécutant Junos OS. Vous pouvez utiliser ces fonctions pour automatiser les tâches opérationnelles et de configuration clés de votre réseau. Par exemple, vous pouvez :
Gérer et provisionner les configurations, y compris la génération, le chargement et la validation, et la sauvegarde des configurations
Récupérer et analyser des informations opérationnelles ou des données de configuration
Exécuter les commandes CLI et les RPC de Junos OS
Effectuer des installations logicielles
Audit et validation des états opérationnels
Le système d’événements Salt utilise un modèle publish-subscribe (pub/sub). Les événements sont publiés sur le bus d’événements, et les abonnés écoutent les événements publiés et réagissent comme indiqué. Salt fournit des méthodes pour publier des événements externes sur le bus et réagir aux événements. Vous pouvez ainsi utiliser Salt pour surveiller et répondre aux événements en temps réel.
L’installation Salt comprend le moteur syslog Junos (pour Salt), qui écoute les messages de journalisation du système Junos OS provenant des équipements gérés et les publie sur le bus d’événements Salt. Vous pouvez utiliser le moteur syslog Junos, en conjonction avec les réacteurs Salt, pour gérer l’état en fonction des événements des équipements exécutant Junos OS. Les réacteurs Salt vous permettent d’agir en réponse à des événements sur le bus d’événements Salt. Lorsque vous activez le système Salt Reactor, il surveille le bus d’événements Salt et déclenche des actions pour les événements correspondants en fonction de vos règles configurées. En activant le moteur syslog Junos et en configurant des réacteurs personnalisés, vous pouvez automatiquement dépanner et corriger les problèmes de réseau courants.
Avantages de Salt and Salt pour Junos OS
Fournissez une solution efficace et évolutive pour gérer un grand nombre d’équipements.
Activez l’application automatique de l’état correct d’un équipement.
Réduisez le temps de dépannage et accélérez le temps de résolution des problèmes réseau en automatisant les tâches de dépannage.
Améliorez la fiabilité du réseau et optimisez la disponibilité du réseau en répondant automatiquement à des événements système spécifiques.
Activez l’automatisation personnalisée basée sur les événements des équipements exécutant Junos OS. Vous pouvez définir les événements à suivre et écrire des réacteurs personnalisés pour répondre à ces événements.
Ressources supplémentaires
Cette documentation part du principe que le lecteur connaît bien la plate-forme SaltStack. Pour plus d’informations sur Salt, notamment sur les systèmes d’exploitation pris en charge et les instructions d’installation, consultez le site Web SaltStack à l’adresse https://www.saltstack.com.
Le tableau 1 décrit un certain nombre de ressources Salt et Salt pour Junos OS.
Ressource |
Description |
URL |
---|---|---|
Day One : Automatiser Junos avec Salt |
Livre Day One qui comprend des concepts fondamentaux et des tutoriels de travail pour vous permettre d’utiliser Salt pour automatiser vos équipements réseau exécutant Junos OS. |
https://www.juniper.net/documentation/en_US/day-one-books/DO_Automating_SALT.pdf |
Documentation |
Documentation contenant des informations détaillées sur l’installation et l’utilisation de Salt pour effectuer des tâches opérationnelles et de configuration sur les équipements exécutant Junos OS. |
https://www.juniper.net/documentation/product/en_US/salt-for-junos-os |
Exemples |
Référentiel GitHub et Wiki avec des informations et des exemples supplémentaires pour automatiser les équipements exécutant Junos OS et effectuer une automatisation basée sur les événements avec Salt. |
https://github.com/ksator/junos-automation-with-saltstack/wiki |
Dépôts GitHub |
Référentiel public pour la plate-forme SaltStack. |
|
Documentation sur les modules d’exécution et d’état Junos |
Documentation de référence pour les modules d’exécution et d’état Junos. |
https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.junos.html https://docs.saltstack.com/en/latest/ref/states/all/salt.states.junos.html |
Tutoriels vidéo |
Tutoriels courts pour vous aider à commencer à utiliser Salt pour gérer les équipements exécutant Junos OS. |
SaltStack Partie 1 : Bases et installation |