Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Exemple : Configurer la base de données de configuration éphémère à l’aide de NETCONF

La base de données éphémère est une base de données de configuration alternative qui permet aux applications clientes de charger et de valider simultanément les modifications de configuration sur les équipements Junos, et ce, avec un débit nettement supérieur à celui de la validation des données dans la base de données de configuration candidate. Cet exemple montre comment activer une instance de la base de données de configuration éphémère et effectuer des mises à jour sur cette instance dans une session NETCONF.

Exigences

Cet exemple utilise les composants logiciels suivants :

  • Périphérique prenant en charge la configuration de la base de données éphémère et exécutant Junos OS version 16.2R2 ou ultérieure ou Junos OS Evolved version 22.1R1 ou ultérieure.

Avant de commencer :

  • Activez le service NETCONF-over-SSH sur le périphérique Junos.

Aperçu

Plusieurs applications clientes de protocole NETCONF et Junos XML peuvent charger et valider simultanément les modifications de configuration sur un équipement Junos à l’aide d’instances de base de données éphémères. Cet exemple active l’instance de base de données éphémère, puis configure l’instance eph1 par le biais d’une session NETCONF.

Une application cliente doit ouvrir une instance de la base de données de configuration éphémère afin de la visualiser ou de la modifier. Après avoir établi une session NETCONF, le client ouvre l’instance éphémère à l’aide de l’opération de protocole <open-configuration> XML Junos, qui inclut la <ephemeral-instance> balise enfant et le nom de l’instance. L’ouverture de l’instance éphémère acquiert automatiquement un verrou exclusif sur celle-ci.

Le client charge ensuite les données de configuration au format texte dans l’instance eph1 éphémère. Étant donné que les données de configuration sont au format texte, l’opération doit inclure l’attribut et les données de configuration doivent être incluses dans l’élément <load-configuration> format="text" <configuration-text> .

Cet exemple valide les modifications de configuration dans l’instance éphémère en émettant l’opération de protocole <commit-configuration> XML Junos. L’attribut <load-configuration> action="merge" détermine uniquement la façon dont les données de configuration sont fusionnées dans cette instance de la base de données éphémère. Une fois que vous avez validé les modifications dans l’instance éphémère, l’appareil fusionne les données de configuration dans la configuration active selon les règles de hiérarchisation. S’il existe des données contradictoires dans les différentes bases de données de configuration, les instructions de l’instance ont une priorité plus élevée que celles de l’instance eph1 éphémère par défaut ou de la base de données de configuration statique. S’il existe d’autres instances éphémères définies par l’utilisateur, la priorité est déterminée par l’ordre dans lequel les instances sont répertoriées dans la configuration au niveau de la [edit system configuration-database ephemeral] hiérarchie.

L’opération <close-configuration/> ferme l’instance éphémère ouverte et libère le verrou exclusif. Les données éphémères validées sont conservées jusqu’au redémarrage de l’appareil, auquel cas l’appareil supprime les données de configuration de l’instance eph1 éphémère ainsi que les données de toutes les autres instances éphémères.

Configuration

Activer l’instance de base de données éphémère

Procédure étape par étape

Pour activer l’instance de base de données éphémère :

  1. Configurez le nom de l’instance.

  2. Validez la configuration.

Résultats

À partir du mode configuration, confirmez votre configuration en entrant la show system configuration-database commande. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.

Configurer l’instance de base de données éphémère

Procédure étape par étape

Pour configurer l’instance de base de données éphémère et valider les modifications à partir d’une session NETCONF, les applications clientes effectuent les opérations suivantes :

  1. Ouvrez l’instance de base de données éphémère.

  2. Chargez les données de configuration dans l’instance éphémère ouverte et incluez les balises et attributs appropriés pour ces données.

  3. Si l’opération <load-configuration> ne génère aucune erreur, validez la configuration.

  4. Fermez l’instance de base de données éphémère.

Résultats

S’il n’y a pas d’erreur lors de l’ouverture ou de la fermeture de la base de données, le serveur NETCONF renvoie un élément vide <rpc-reply> en réponse aux requêtes. Le serveur NETCONF indique une opération réussie <load-configuration> en renvoyant une balise vide <ok/> contenue dans les <load-configuration-results> éléments and <rpc-reply> . De même, le serveur NETCONF indique une opération réussie <commit-configuration> en renvoyant une balise vide <ok/> enfermée dans un <rpc-reply> élément.

Vérification

Vérifier le commit

But

La réponse du serveur NETCONF à l’opération de validation doit indiquer la réussite ou l’échec de la validation. Vous pouvez également vérifier la réussite de la validation en examinant les événements de validation de la base de données éphémère dans le fichier journal système.

Action

Examinez le fichier journal système et affichez les événements qui correspondent à UI_EPHEMERAL.

Sens

La UI_EPHEMERAL_COMMIT_COMPLETED balise de message indique que l’opération de validation sur l’instance eph1 a réussi.

Vérifier les données de configuration dans l’instance de base de données éphémère

But

Vérifiez que les données de configuration correctes ont été ajoutées à l’instance éphémère.

Action

Dans la session NETCONF, ouvrez l’instance de base de données éphémère et récupérez la configuration.

Pointe:

Vous pouvez afficher les données de configuration validées sur une instance de base de données éphémère à partir de l’interface de ligne de commande en exécutant la commande opérationnelle dans Junos OS version 18.2R1 et versions ultérieures ou en émettant la show ephemeral-configuration instance instance-name show ephemeral-configuration instance-name commande opérationnelle dans les versions antérieures.

Dépannage

Résoudre les problèmes lors de l’ouverture de l’instance éphémère

Problème

Vous tentez d’ouvrir une instance de la base de données éphémère et le serveur ne renvoie qu’une balise d’ouverture <rpc-reply> . Par exemple :

Ce problème peut se produire lorsqu’un autre client a le verrou exclusif sur cette instance.

Solution

Si un autre utilisateur dispose d’un verrou exclusif sur l’instance éphémère, une application cliente peut émettre des appels de procédure à distance (RPC) pour mettre à jour l’instance éphémère, mais les opérations sur cette instance éphémère ne sont pas traitées tant que le verrou n’est pas libéré. Lorsque le verrou est relâché, le serveur doit émettre la balise de fermeture </rpc-reply> et traiter tous les RPC émis pendant que l’instance éphémère était verrouillée.

Une application cliente peut également choisir de mettre à jour une autre instance éphémère, mais avec la mise en garde que différentes instances éphémères ont des niveaux de priorité différents lorsqu’elles résolvent des instructions de configuration conflictuelles.

Résoudre les problèmes opérationnels

Problème

L’appareil n’exécute pas les modifications opérationnelles qui devraient se produire à la suite de la validation de certaines données de configuration dans l’instance de base de données éphémère, même si vous avez vérifié que la validation a réussi et que les données de configuration sont présentes dans la configuration de cette instance éphémère.

Les modifications opérationnelles peuvent ne pas se produire s’il existe une autre instance éphémère définie par l’utilisateur qui a des données de configuration conflictuelles et une priorité plus élevée. S’il existe des données contradictoires dans les instances éphémères, les instructions d’une instance avec une priorité plus élevée remplacent les instructions dans une instance avec une priorité inférieure. Une instance définie par l’utilisateur de la base de données de configuration éphémère a une priorité plus élevée que l’instance de base de données éphémère par défaut, qui a une priorité plus élevée que la base de données de configuration statique. S’il existe plusieurs instances éphémères définies par l’utilisateur, la priorité est déterminée par l’ordre dans lequel les instances sont répertoriées dans la configuration.

Solution

Vous pouvez vérifier les instances éphémères configurées et leur ordre de priorité en émettant la show configuration system configuration-database ephemeral commande opérationnelle sur l’appareil. Les instances sont répertoriées dans l’ordre, de la priorité la plus élevée à la plus faible. S’il existe d’autres instances qui ont une priorité plus élevée, examinez les données de configuration de ces instances pour déterminer s’il existe des instructions contradictoires. Vous pouvez également afficher la vue fusionnée des bases de données de configuration statique et éphémère en exécutant la commande dans Junos OS version 18.2R1 et versions ultérieures ou en exécutant la show ephemeral-configuration merge commande dans les show ephemeral-configuration | display merge versions antérieures.

Si votre instance éphémère a des données de configuration conflictuelles et une priorité inférieure à celle d’une autre instance éphémère définie par l’utilisateur, et que la configuration à ce niveau hiérarchique doit entrer en vigueur sur l’appareil, vous devez soit supprimer les données conflictuelles dans l’autre instance éphémère, soit placer vos données de configuration dans une instance de priorité supérieure.