Modifier l’état d’activation d’un élément de configuration à l’aide du protocole Junos XML
Lorsqu’un élément de configuration (niveau hiérarchique ou objet de configuration) est désactivé et que la configuration est validée, l’élément désactivé reste dans la configuration, mais l’élément n’affecte pas le fonctionnement de l’appareil. La désactivation d’éléments de configuration est utile lorsque vous souhaitez résoudre des problèmes en supprimant le comportement d’un élément de configuration sans le supprimer de la configuration. En outre, vous pouvez configurer et désactiver de nouveaux éléments de configuration pour préparer la configuration afin d’accueillir du nouveau matériel avant qu’il ne soit disponible.
Dans une session de protocole NETCONF ou Junos XML avec un équipement Junos, une application cliente peut désactiver un élément existant ou créer et désactiver simultanément un nouvel élément. Une application cliente peut également activer un élément désactivé de sorte que lorsque la configuration est validée, l’élément a à nouveau un effet sur le fonctionnement de l’appareil. Les sections suivantes expliquent comment créer et désactiver de nouveaux éléments de configuration et comment activer ou désactiver des éléments existants :
Désactivation d’un élément nouvellement créé
Pour créer un élément et le désactiver immédiatement, une application cliente doit d’abord inclure les éléments de balise de base ou les instructions de configuration du nouvel élément et de tous les éléments enfants, comme décrit dans Création, modification ou suppression d’éléments de configuration à l’aide du protocole Junos XML.
XML
Lors de l’utilisation d’éléments de balise XML Junos pour créer et désactiver un nouvel élément, l’application inclut l’attribut inactive="inactive"
dans la balise d’ouverture du nouvel élément. Dans l’exemple suivant, l’élément de balise d’identification est appelé <name>
:
<configuration> <!-- opening tag for each parent of the element --> <element inactive="inactive"> <name>identifier</name> <!-- if element has an identifier --> <!-- tag elements for each child of the element --> </element> <!-- closing tag for each parent of the element --> </configuration>
Dans une session NETCONF conforme à YANG, vous pouvez activer ou désactiver un élément de configuration dans les données XML en incluant les xmlns:jcmd="http://yang.juniper.net/junos/jcmd"
attributs and jcmd:active="(true | false)"
dans l’élément tag. Pour plus d’informations, reportez-vous à la section Annotations de métadonnées YANG pour les équipements Junos.
Texte
Lorsque vous utilisez du texte ASCII formaté pour créer et désactiver un nouvel élément, l’application fait précéder le nouvel élément de l’opérateur inactive:
.
<configuration-text> /* statements for parent levels */ /* For an object with an identifier */ inactive: object identifier { /* Child configuration statements */ } /* For a hierarchy level or object without an identifier */ inactive: element { /* Child configuration statements */ } /* closing braces for parent levels */ </configuration-text>
Commandes du mode de configuration (définir)
Lorsque vous utilisez des commandes en mode configuration pour créer un élément inactif, l’application crée d’abord l’élément à l’aide de la set
commande, puis le désactive à l’aide de la deactivate
commande.
<configuration-set> set statement-path-to-object object identifier deactivate statement-path-to-object object identifier </configuration-set>
JSON
Lorsque vous utilisez des données de configuration JSON pour créer et désactiver un nouvel élément, l’application cliente inclut l’attribut dans la liste d’attributs "inactive" : true
de cet élément. La configuration JSON générique suivante indique l’emplacement de l’attribut pour la désactivation d’une hiérarchie ou d’un objet conteneur, d’un objet doté d’un identificateur et d’une instruction leaf.
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "level-or-container" : { "@" : { "comment" : "/* deactivate a hierarchy */", "inactive" : true }, "object" : [ { "@" : { "comment" : "/* deactivate an object with an identifier */", "inactive" : true }, "name" : "identifier", "statement-name" : "statement-value", "@statement-name" : { "comment" : "/* deactivate a statement */", "inactive" : true }, /* additional data and child objects */ # if any } ] } /* closing braces for parent levels */ } } </configuration-json>
Dans une session NETCONF compatible YANG, vous pouvez activer ou désactiver un objet de configuration dans les données JSON en incluant l’annotation dans l’objet "junos-configuration-metadata:active" : (true | false)
metdata de l’instruction. Pour plus d’informations, reportez-vous à la section Annotations de métadonnées YANG pour les équipements Junos.
Désactivation ou réactivation d’un élément existant
Pour désactiver un élément existant ou activer un élément précédemment désactivé, une application cliente inclut les éléments de balise de base ou les instructions de configuration de ses niveaux parents, comme décrit dans Création, modification ou suppression d’éléments de configuration à l’aide du protocole XML Junos.
XML
Lorsque vous utilisez des éléments de balise XML Junos pour représenter un objet de configuration doté d’un identificateur, l’application inclut l’attribut inactive="inactive"
ou active="active"
dans la balise conteneur d’ouverture de l’objet et émet également l’élément et la valeur de balise identificateur. Dans l’exemple suivant, l’élément de balise d’identification est appelé <name>
. Pour représenter un niveau hiérarchique ou un objet conteneur qui a des enfants mais n’a pas d’identificateur, l’application utilise une balise vide :
<configuration> <!-- opening tag for each parent of the element --> <!- - For an object with an identifier --> <object ( inactive="inactive" | active="active" ) > <name>identifier</name> </object> <!-- For a hierarchy level or object without an identifier --> <level-or-container ( inactive="inactive" | active="active" ) /> <!-- closing tag for each parent of the element --> </configuration>
Dans une session NETCONF conforme à YANG, vous pouvez activer ou désactiver un élément de configuration dans les données XML en incluant les xmlns:jcmd="http://yang.juniper.net/junos/jcmd"
attributs and jcmd:active="(true | false)"
dans l’élément tag. Pour plus d’informations, reportez-vous à la section Annotations de métadonnées YANG pour les équipements Junos.
Texte
Lorsque vous utilisez du texte ASCII formaté pour représenter l’élément, l’application fait précéder l’élément de l’opérateur inactive:
ou active:
. Le nom d’un niveau hiérarchique ou d’un objet conteneur est suivi d’un point-virgule (même si dans la configuration existante, il est suivi d’accolades qui entourent ses instructions enfants) :
<configuration-text> /* statements for parent levels */ /* For an object with an identifier */ (inactive | active): object identifier; /* For a hierarchy level or object without an identifier */ (inactive | active): object-or-level; /* closing braces for parent levels */ </configuration-text>
Commandes du mode de configuration (définir)
Lors de l’utilisation de commandes en mode de configuration pour activer ou désactiver un objet, l’application spécifie la activate
commande ou deactivate
équivalente à la commande de mode de configuration CLI.
<configuration-set> /* For an object with an identifier */ activate statement-path-to-object object identifier deactivate statement-path-to-object object identifier /* For a hierarchy level or object without an identifier */ activate statement-path-to-object-or-level object-or-level deactivate statement-path-to-object-or-level object-or-level </configuration-set>
JSON
Lors de l’utilisation de JSON pour représenter l’élément, l’application cliente active ou désactive l’élément en incluant respectivement l’attribut "active" : true
ou "inactive" : true
dans la liste d’attributs de cet élément. La configuration JSON générique suivante indique l’emplacement de l’attribut permettant d’activer ou de désactiver des hiérarchies ou des objets conteneur existants, des objets dotés d’un identificateur et des instructions leaf.
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "level-or-container" : { "@" : { "comment" : "/* activate or deactivate a hierarchy */", "(active | inactive)" : true }, "object" : [ { "@" : { "comment" : "/* activate or deactivate an object with an identifier */", "(active | inactive)" : true }, "name" : "identifier", "@statement-name" : { "comment" : "/* activate or deactivate a statement */", "(active | inactive)" : true } } ] } /* closing braces for parent levels */ } } </configuration-json>
Dans une session NETCONF compatible YANG, vous pouvez activer ou désactiver un objet de configuration dans les données JSON en incluant l’annotation dans l’objet "junos-configuration-metadata:active" : (true | false)
de métadonnées de l’instruction. Pour plus d’informations, reportez-vous à la section Annotations de métadonnées YANG pour les équipements Junos.
L’exemple suivant montre comment désactiver le isis
niveau hiérarchique au niveau hiérarchique [edit protocols]
dans la configuration candidate à l’aide d’éléments de balise XML Junos.

L’exemple suivant montre comment désactiver le isis
niveau hiérarchique au niveau hiérarchique [edit protocols]
dans la configuration candidate à l’aide de JSON.
<rpc> <load-configuration format="json"> <configuration-json> { "configuration" : { "protocols" : { "isis" : { "@" : { "inactive" : true } } } } } </configuration-json> </load-configuration> </rpc>