Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit comment configurer la télémétrie pilotée par modèle sur les périphériques Cisco IOS®-XE avec l'utilisation de la suite YANG pour effectuer des exemples d'appels de procédure distante de télémétrie (RPC).
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Ce document peut également être utilisé avec les versions matérielles et logicielles suivantes : périphériques Cisco IOS XE, y compris les commutateurs Cisco Catalyst 9000, les routeurs Cisco ASR 1000, ISR 4000 et CSR 1000.
YANG Suite doit être installé. Pour plus d'informations sur l'installation de YANG Suite, consultez la documentation ou le référentiel Github.
NETCONF-YANG doit être configuré et exécuté sur le périphérique, même si NETCONF n'est pas utilisé. Pour plus d'informations sur la configuration NETCONF, consultez la documentation.
Un profil de périphérique, un référentiel YANG et un ensemble de modules YANG associés au périphérique concerné doivent exister dans YANG Suite. Pour plus d'informations sur la façon de créer un profil de périphérique, un référentiel YANG et un ensemble de modules YANG, consultez la documentation de la suite YANG sous Gestion des profils de périphérique.
La télémétrie est un processus de communication automatisé par lequel des mesures et d'autres données sont collectées en des points distants ou inaccessibles et transmises à l'équipement récepteur pour surveillance. La télémétrie pilotée par un modèle fournit un mécanisme permettant de transmettre des données modélisées YANG à un collecteur de données.
Les applications peuvent s'abonner à des éléments de données spécifiques dont elles ont besoin à l'aide de modèles de données YANG normalisés sur les protocoles NETCONF, RESTCONF ou gRPC Network Management Interface (gNMI). Vous pouvez également créer des abonnements à l'aide de la ligne de commande (CLI).
Les données structurées sont publiées à une cadence définie (périodiquement), ou en cours de modification, en fonction des critères d'abonnement et du type de données.
Dans les systèmes qui utilisent la télémétrie, différents rôles sont impliqués. Dans ce document, ces rôles de télémétrie sont décrits :
Les abonnements sont des éléments qui créent des associations entre des rôles de télémétrie et définissent les données qui sont envoyées entre eux.
Deux types d'abonnement sont utilisés en télémétrie sur les systèmes Cisco IOS XE : abonnements dynamiques et configurés.
Les abonnements dynamiques sont créés par les clients (l'abonné) qui se connectent à l'éditeur. Ils sont considérés comme des abonnements commutés. Les abonnements configurés entraînent l'établissement par l'éditeur de connexions avec les récepteurs et, par conséquent, ils sont considérés comme des appels sortants.
Les abonnements sont identifiés par une valeur entière positive de 32 bits. Les ID des abonnements configurés sont définis par le contrôleur et ceux des abonnements dynamiques par l'éditeur.
Les sources de données télémétriques dans un abonnement sont spécifiées par l'utilisation d'un flux et d'un filtre. Le terme flux fait référence à un ensemble d'événements associés. Le document RFC 5277 définit un flux d'événements comme un ensemble de notifications d'événements correspondant à certains critères de transfert.
Cisco IOS XE prend en charge deux flux : yang-push et yang-notif-native.
Normalement, l'ensemble des événements d'un flux est filtré. Différents types de filtres sont utilisés pour différents types de flux.
Ce document utilise yang-push comme type de flux et exploite les filtres XPath.
Les abonnements dynamiques sont créés par les abonnés qui se connectent à l'éditeur et appellent la création d'abonnement à l'aide d'un mécanisme au sein de cette connexion, généralement un RPC. La durée de vie de l'abonnement est limitée à la durée de vie de la connexion entre l'abonné et l'éditeur, et les données télémétriques sont envoyées uniquement à cet abonné. Ces abonnements ne sont pas conservés si l'éditeur ou l'abonné est redémarré. Vous pouvez créer des abonnements dynamiques à l'aide du RPC <established-subscription> intrabande. Le RPC <established-subscription> est envoyé à partir d'un abonné de télémétrie IETF au périphérique réseau. Les champs stream, xpath-filter et period du RPC sont obligatoires.
Lorsqu'un RPC est envoyé, la réponse RPC d'un éditeur contient un message avec un élément qui contient une chaîne de résultat.
Ce tableau affiche la réponse et la raison de la réponse dans un message <rpc-reply> :
Vous pouvez envoyer un RPC à partir de YANG Suite pour configurer un abonnement périodique.
Pour obtenir le filtre XPath, vous pouvez utiliser YANG Suite une fois que vous avez défini les données que vous devez diffuser. Dans cet exemple, les informations de statistiques de mémoire sont les données à diffuser.
Étape 1. Dans la suite YANG, sous Protocols > NETCONF, sélectionnez l’ensemble YANG associé au périphérique utilisé. Dans cet exemple, l'ensemble YANG est appelé CSR1000V.
Étape 2 : chargement du module YANG contenant les données d’intérêt Dans cet exemple, il s'agit de Cisco-IOS-XE-memory-oper.
Étape 3. Dans l'arborescence YANG, recherchez le noeud pour lequel vous souhaitez obtenir le filtre XPath. Dans cet exemple, il s'agit d'une statistique de mémoire, cliquez dessus avec le bouton droit et sélectionnez Propriétés.
Étape 4. Dans la fenêtre contextuelle qui apparaît, deux propriétés définissent ensemble le filtre XPath. Ces valeurs sont Xpath et Prefix.
Pour créer un abonnement dynamique NETCONF périodique, vous devez utiliser le module YANG IETF-event-notification.
Étape 1. Dans la suite YANG, sous Protocols > NETCONF, sélectionnez l’ensemble YANG associé au périphérique utilisé. Dans cet exemple, l'ensemble YANG est appelé CSR1000V.
Étape 2 : chargement du module YANG IETF-event-notifications
Étape 3. L’opération NETCONF doit être Autre RPC.
Étape 4. Dans le menu déroulant Périphérique, sélectionnez le périphérique concerné, puis cliquez sur Ouvrir la fenêtre du périphérique dans une nouvelle fenêtre ou dans un nouvel onglet.
Étape 5. Dans la fenêtre séparée qui s’ouvre, cliquez sur Start Session afin d’établir une session NETCONF active avec le périphérique. Voici un exemple de fenêtre de session NETCONF établie.
Étape 6. Revenez à la fenêtre précédente. Dans les noeuds sous l'arborescence ietf-event-notification, développez le noeud established-subscription et choisissez input.
Étape 7. Vous devez définir des valeurs de flux, de filtre et de déclencheur de mise à jour.
flux : yang-push.
filtre : xpath-filter
Le filtre XPath doit avoir le format suivant :
/prefix : xpath
Dans cet exemple, à l'aide des paramètres obtenus dans la section Étapes pour obtenir le filtre XPath.
/memory-ios-xe-oper:statistiques-mémoire/statistiques-mémoire
Conseil : Faites attention à la position du "/" dans le filtre XPath
Étape 8. Le déclencheur de mise à jour est une valeur en centisecondes (1/100 de seconde). Une période de 1 000 entraîne l'obtention de mises à jour toutes les 10 secondes.
Étape 9. Une fois que les valeurs de flux, de filtre et de déclencheur de mise à jour ont été fournies, cliquez sur Build RPC et un RPC semblable à celui illustré dans cette image va apparaître.
Étape 10. Vous pouvez maintenant cliquer sur Exécuter RPC et créer un abonnement d'accès par réseau commuté périodique NETCONF.
Étape 11. Les messages RPC apparaissent maintenant dans la fenêtre où la session NETCONF a été établie.
Cette image est un exemple de RPC envoyé et la réponse RPC reçue avec un message OK, ce qui signifie que l'abonnement a réussi.
Cette image est un exemple des données de statistiques de la mémoire reçues toutes les 10 secondes.
Toutes les étapes indiquées dans la section Configurer un abonnement périodique avec la suite YANG s'appliquent à cette section, la seule différence est dans la valeur de déclenchement de mise à jour où vous devez définir une période d'amortissement avec une valeur de 0, aucune autre valeur n'est possible.
Ceci est un exemple d'un RPC pour établir un abonnement en cours de modification pour les données des voisins CDP.
Les abonnements configurés sont créés par des opérations de gestion sur l'éditeur par des contrôleurs et incluent explicitement la spécification du récepteur des données télémétriques définies par un abonnement. Ces abonnements sont conservés lors des redémarrages de l'éditeur, au fur et à mesure qu'ils font partie de la configuration du périphérique.
Les abonnements d'accès à distance configurés sont configurés sur le périphérique avec l'une des méthodes suivantes :
Ce document n'explique pas comment configurer un abonnement d'accès à distance avec l'interface de ligne de commande, mais comment envoyer un message RPC NETCONF à partir de YANG Suite pour configurer un abonnement d'accès à distance.
Pour les abonnements configurés, le protocole gRPC est disponible et ne peut être utilisé qu'avec le flux yang-push. Seul le codage KvGPB (Key-Value Google Protocol Buffers) est pris en charge avec le protocole de transport gRPC.
Vous pouvez utiliser YANG Suite en tant que destinataire pour tester des exemples d'abonnements sortants.
Pour créer un abonnement configuré périodiquement, vous devez utiliser le module YANG Cisco-IOS-XE-mdt-cfg.
Étape 1. Dans YANG Suite, sous Protocols > gRPC Telemetry, entrez l'adresse IP et le port, puis cliquez sur Start telemetry receive for YANG Suite pour commencer à écouter à l'adresse IP et au port indiqués.
Remarque : Si l'option de télémétrie gRPC n'est pas disponible, le plug-in peut être installé via la page Admin > Manage plugins de YANG Suite
Étape 2. Sous Protocols > NETCONF, sélectionnez l’ensemble YANG associé au périphérique utilisé. Dans cet exemple, l'ensemble YANG est appelé CSR1000V.
Étape 3 : chargement du module YANG Cisco-IOS-XE-mdt-cfg
Étape 4. L’opération NETCONF doit être edit-config.
Étape 5. Choisissez le périphérique qui vous intéresse.
Étape 6. Sous l’arborescence Cisco-IOS-XE-mdt-cfg, ces valeurs doivent être définies dans le noeud mdt-subscription : subscription-id, stream, encoding, period et xpath-filter. Et aussi, les informations sur le récepteur : Adresse IP, port et protocole.
Étape 7. Les valeurs suivantes sont utilisées pour cet exemple :
id_abonnement : 100
flux : yang-push
codage : encode-kvgpb
point : 1000
filtre xpath : /memory-ios-xe-oper:statistiques-mémoire/statistiques-mémoire
Les informations relatives au récepteur doivent être définies
adresse : <Adresse IP>
port : <port>
protocole : grpc-tcp
Étape 8. Cliquez sur le bouton Build RPC.
Étape 9. Cliquez sur Exécuter RPC.
Étape 10. Si la requête aboutit, les informations sont maintenant reçues sous Protocoles > Télémétrie gRPC.
Pour configurer un abonnement à la numérotation avec modification, suivez le même processus que celui décrit dans la section Configurer un abonnement configuré périodiquement avec la suite YANG. La seule valeur qui change est le leaf no-sync-on-start qui doit être défini sur false.
Cette image est un exemple de RPC pour un abonnement configuré en cours de modification.
Utilisez cette section pour confirmer que votre configuration fonctionne correctement.
Affichez les informations sur les abonnements de télémétrie sur un Cisco IOS XE avec show telemetry ietf subscription all.
Device#
show telemetry ietf subscription all Telemetry subscription brief ID Type State Filter type -------------------------------------------------------- 100 Configured Valid xpath 2147483651 Dynamic Valid xpath
Répertorier les détails d'un abonnement avec show telemetry ietf <subscriptionID>detail.
Device#show telemetry ietf 100 detail
Telemetry subscription detail:
Subscription ID: 2147483651
Type: Dynamic
State: Valid
Stream: yang-push
Filter:
Filter type: xpath
XPath: /memory-ios-xe-oper:memory-statistics/memory-statistic
Update policy:
Update Trigger: periodic
Period: 10000
Encoding: encode-xml
Source VRF:
Source Address:
Notes:
Receivers:
Address Port Protocol Protocol Profile
-----------------------------------------------------------------------------------------
10.88.246.10 57344 netconf
Vérifiez l'état de la connexion au récepteur à l'aide de la commande show telemetry internal connection.
Device# show telemetry internal connection
Telemetry connection
Peer Address Port VRF Source Address Transport State Profile
--------------- ----- --- --------------- ---------- ------------- -------------
10.88.246.10 57344 0 10.88.246.2 grpc-tcp Active
Cette section fournit des informations que vous pouvez utiliser pour dépanner votre configuration.
Scénario 1. Si l'état de l'abonnement de télémétrie est valide et que vous ne recevez pas de flux dans le récepteur.
Vérifiez l'état de la connexion au récepteur.
Device#show telemetry internal connection
Telemetry connection
Peer Address Port VRF Source Address Transport State Profile
--------------- ----- --- --------------- ---------- ------------- -------------
10.88.246.10 57350 0 10.88.247.86 grpc-tcp Connecting
Si l'état est Connexion, assurez-vous que la connectivité entre l'éditeur et le récepteur est correcte.
Device# ping
Assurez-vous que le port utilisé est ouvert.
Device# telnet
Trying 10.88.246.10, 57350 ...
% Connection refused by remote host
Dans cet exemple, le port n'est pas ouvert/accessible. Vérifiez qu'aucun pare-feu ne peut bloquer le port et assurez-vous que le port spécifié est le bon.
Dans les périphériques qui utilisent des VRF, vous devez spécifier le VRF/l'adresse source dans le RPC pour les abonnements configurés. Cette image montre un RPC où le VRF source est spécifié.
Scénario 2. Si l'état de l'abonnement de télémétrie n'est pas valide.
Device# show telemetry ietf subscription all
Telemetry subscription brief
ID Type State Filter type
--------------------------------------------------------
200 Configured Invalid xpath
Vérifiez les détails de l'abonnement.
Device# show telemetry ietf subscription 200 detail
Telemetry subscription detail:
Subscription ID: 200
Type: Configured
State: Invalid
Stream: yang-push
Filter:
Filter type: xpath
XPath: /memory-ios-xe-oper:/memory-statistics/memory-statistic
Update policy:
Update Trigger: periodic
Period: 1000
Encoding: encode-kvgpb
Source VRF:
Source Address:
Notes: XPath parse error 'Invalid expression: offset(21)' 58.
Receivers:
Address Port Protocol Protocol Profile
-----------------------------------------------------------------------------------------
10.88.247.89 57344 grpc-tcp
Notez la syntaxe du filtre XPath, il a un "/" supplémentaire après le ":", le filtre XPath correct est :
/memory-ios-xe-oper:statistiques-mémoire/statistiques-mémoire
Toute erreur de syntaxe telle que des lettres manquantes ou des caractères supplémentaires dans le filtre XPath peut entraîner un abonnement non valide.
Si vous avez besoin d'aide pour l'outil YANG Suite, contactez l'expéditeur du support ou le forum du support.
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
30-Sep-2021
|
Première publication |