Créer des scripts de traduction pour les modèles de configuration YANG
Vous pouvez charger des modules YANG sur les équipements Junos pour ajouter des modèles de données qui ne sont pas pris en charge nativement par le système d’exploitation mais peuvent être pris en charge par la traduction. Lorsque vous étendez la hiérarchie de configuration avec des modèles de données YANG non-atifs, vous devez également fournir un ou plusieurs scripts de traduction qui fournissent la logique permettant de mapper la syntaxe de configuration non-ative à la syntaxe Junos OS correspondante.
Les scripts de traduction convertissent les données de configuration correspondant aux modèles de données YANG non-atifs en syntaxe Junos OS et ajoutent les données de configuration traduites comme une modification transitoire de la configuration de caisse pendant l’opération de validation. Les scripts de traduction peuvent être écrits en Python ou SLAX et sont similaires aux scripts de validation dans la structure. Pour plus d’informations sur la création de scripts SLAX et Python qui génèrent des modifications transitoires dans la configuration, consultez le Guide de l’utilisateur des scripts d’automatisation.
Vous utilisez les request system yang add
commandes ou request system yang update
pour ajouter des modules YANG et leurs scripts de traduction associés à un package YANG nouveau ou existant sur l’équipement. Après avoir ajouté les modules et les scripts de traduction à l’équipement, vous pouvez configurer les déclarations et les hiérarchies dans le modèle de données ajouté par ces modules. Lorsque vous chargez et validez les données de configuration, l’équipement appelle le script pour effectuer la traduction et générer le changement de configuration transitoire.
Cette rubrique traite de la structure générale des scripts de traduction. La logique de traduction spécifique requise dans le script réel dépend des hiérarchies personnalisées ajoutées au schéma et dépasse le champ d’application de cette rubrique.
Pour créer le framework pour les scripts de traduction utilisés sur les équipements Junos :
Sur l’équipement, effectuez les tâches suivantes avant d’ajouter le script de traduction à un package YANG :
-
Si le script de traduction est écrit en Python, autorisez l’équipement à exécuter des scripts Python non signés en configurant l’instruction
language python
oulanguage python3
, selon le cas pour la version Junos OS.[edit] user@host# set system scripts language (python | python3)
Note:À partir de Junos OS version 20.2R1 et Junos OS Evolved version 22.3R1, l’équipement utilise Python 3 pour exécuter des actions YANG et des scripts de traduction. Dans les versions précédentes, Junos OS utilise uniquement Python 2.7 pour exécuter ces scripts, et Junos OS Evolved utilise Python 2.7 par défaut pour exécuter les scripts.
-
Téléchargez le script sur l’équipement et validez éventuellement la syntaxe.
user@host> request system yang validate translation-script script
Avant de pouvoir utiliser des scripts de traduction sur un équipement, vous devez ajouter les scripts et les modules associés à un package YANG nouveau ou existant en émettant la request system yang add
commande ou request system yang update
. Une fois les modules et les scripts ajoutés, les scripts de traduction sont automatiquement appelés lorsque vous validez les données de configuration dans les modèles de données correspondants.
Lorsque vous configurez des instructions qui correspondent à des modèles de données YANG tiers, par exemple OpenConfig ou des modèles de données YANG personnalisés, les fonctionnalités suivantes ne sont pas prises en charge :
-
Utilisation
configure batch
ouconfigure private
mode -
Configuration des instructions dans la
[edit groups]
hiérarchie
Les configurations actives et candidates contiennent les données de configuration des modèles de données YANG non-atifs dans la syntaxe définie par ces modèles. Toutefois, étant donné que les données de configuration traduites sont validées comme une modification transitoire, les configurations actives et candidates n’affichent pas explicitement les données traduites dans la syntaxe Junos OS lorsque vous émettez des show
show configuration
commandes. Pour appliquer des scripts de traduction YANG lorsque vous affichez la configuration, utilisez le | display translation-scripts
filtre.
Pour afficher la configuration post-héritage complète avec les données traduites (modifications transitoires) explicitement incluses, ajoutez le | display translation-scripts
filtre à la show configuration
commande en mode opérationnel ou à la show
commande en mode configuration. Pour afficher uniquement les données de configuration non-atives après la traduction, utilisez le | display translation-scripts translated-config
filtre.
En mode configuration, pour afficher uniquement les modifications apportées aux données de configuration correspondant aux modèles de données YANG non-atifs avant ou après l’application des scripts de traduction, ajoutez le ou translated-delta
le configured-delta
mot-clé, respectivement, à la show | display translation-scripts
commande. Dans les deux cas, la sortie XML affiche les données de configuration supprimées, puis les nouvelles données de configuration.
Pour plus d’informations sur le | display translation-scripts
filtre, consultez validation et affichage des données de configuration pour les modules YANG non-atifs.