Prise en charge de la télémétrie pilotée par les modèles Cisco
Le contrôleur NorthStar prend en charge la télémétrie pilotée par un modèle Cisco (MDT) comme alternative à la collecte SNMP des données de trafic d’interface et LSP pour les appareils Cisco. La collecte SNMP est relativement lente (intervalles d’interrogation supérieurs à cinq minutes) et coûteuse. Le collecteur MDT de NorthStar effectue la surveillance du réseau en traitant en continu les flux de télémétrie des appareils Cisco présents dans le réseau.
La collecte SNMP dans Contrôleur NorthStar est activée en créant une tâche de collecte SNMP dans le planificateur de tâches (Administration > Task Scheduler). Si vous souhaitez utiliser MDT pour la collecte de données sur les périphériques Cisco du réseau et la collecte SNMP pour d’autres périphériques du réseau, vous pouvez créer une tâche de collecte SNMP qui spécifie les périphériques ou groupes de périphériques sélectionnés à inclure et désélectionne ceux qui prennent en charge MDT. Voir Collecte de données à l’aide de SNMP pour plus d’informations sur les tâches de collecte SNMP.
La collecte SNMP et MDT ne doivent pas être activées pour les mêmes périphériques.
Le collecteur MDT NorthStar est décrit dans les sections suivantes :
Comment ça marche
Le collecteur MDT est fourni dans le cadre du bundle RPM NorthStar Analytics et réside sur le nœud Analytics. Supervisord gère le processus MDT Collector dans le cadre du groupe Analytics Supervisord.
Pipeline, en tant que composant tiers, est installé dans /opt/northstar/thirdparty/pipeline. Le fichier journal du pipeline se trouve dans /opt/northstar/logs/pipeline.msg.
La figure 1 illustre le flux de données général lors de l’utilisation de MDT.
Voici un aperçu du processus :
-
Le collecteur MDT se compose du pipeline de télémétrie de réseau bigmuddy (open source) et du plugin de sortie de NorthStar. Le fichier de configuration du pipeline (pipeline.yml) se trouve dans /opt/northstar/data/pipeline/config.
-
La diffusion en continu des données MDT est lancée par le routeur.
-
La portée et le calendrier des flux sont en accord avec la configuration sur les appareils.
Remarque :Les appareils IOS-XR doivent exécuter la version XR 6.1.1 ou supérieure.
-
NorthStar MDT prend en charge les protocoles de transport UDP et TCP. Pour l’encodage, il prend en charge GPB, GPB AUTO-DÉCRIT (KV-GPB) et JSON.
-
Lorsque le pipeline reçoit les données de télémétrie via UDP ou TCP, il décode les données et les envoie au plug-in de sortie NorthStar pour traitement. Cela se passe à l’intérieur du collecteur MDT.
-
Le plugin NorthStar convertit les données au format JTI, les encode en tant que document JSON et les pousse du collecteur MDT vers Logstash via UDP.
-
Logstash traite le document JSON, puis transmet les informations à Elasticsearch et RabbitMQ pour utilisation par le contrôleur NorthStar.
-
Les composants NorthStar récupèrent les données de trafic en tirant parti de l’API REST NorthStar.
Configuration de MDT dans NorthStar
Le seul paramètre MDT à configurer directement dans NorthStar concerne le niveau de journal de départ. Par défaut, NorthStar démarre le composant MDT au niveau du journal « info ». Vous pouvez modifier le niveau en « déboguer » si vous préférez en accédant à la CLI cMGD comme décrit dans Configuration des paramètres NorthStar à l’aide de la CLI NorthStar. Utilisez la commande set northstar analytics model-driven-telemetry log-destination destination-name level log-level cMGD
Les journaux de débogage sont écrits dans le fichier /opt/northstar/logs/pipeline.log sauf si vous configurez un nom de destination différent.
Lorsque vous modifiez le niveau de journalisation, vous devez redémarrer le pipeline :
supervisorctl restart analytics:pipeline
Configuration de MDT sur les appareils IOS-XR
MDT doit être configuré sur les équipements IOS-XR pour lesquels vous avez l’intention de collecter des données. Un exemple de configuration est présenté ici, mais considérez votre documentation Cisco comme la source définitive des informations de configuration IOS-XR.
telemetry model-driven destination-group Northstar address-family ipv4 collector-address port port encoding gpb | self-describing-gpb protocol tcp | udp ! ! sensor-group mdt sensor-path Cisco-IOS-XR-infra-statsd-oper:infra-statistics/interfaces/interface/latest/generic-counters sensor-path Cisco-IOS-XR-mpls-te-oper:mpls-te/signalling-counters/head-signalling-counters/head-signalling-counter subscription mdt sensor-group-id mdt sample-interval 60000 destination-id Northstar ! !
Quelques remarques sur cette configuration :
-
La variable d’adresse du collecteur fait référence au système (nœud d’analyse) sur lequel le collecteur MDT est exécuté.
-
Le choix d’encodage (gpb ou self-descripting-gpb) n’affecte pas le paramètre « encap » dans la tcp_northstar section ou udp_northstar .
-
Si vous configurez TCP comme protocole, la valeur du port dans la configuration IOS-XR MDT doit correspondre au paramètre de port dans la configuration du pipeline. Recherchez le listen paramètre dans la tcp_northstar section /opt/northstar/data/pipeline/config/pipeline.yml. Si vous configurez UDP en tant que protocole, la valeur du port doit correspondre à celle de la udp_northstar section.
-
Le sample-interval paramètre (millisecondes) spécifie la fréquence à laquelle les flux de télémétrie sont envoyés.
-
L’instruction sensor-path Cisco-IOS-XR-mpls-te-oper :mpls-te/signalling-counters/head-signalling-counters/head-signalling-counter indique à l’appareil de collecter et de signaler les noms de tunnel et de signal au collecteur MDT.
-
À l’aide de la sensor-path configuration, vous pouvez filtrer en fonction de critères spécifiés. Par exemple, pour rapporter les statistiques des interfaces tunnel-te (créées pour les LSP) :
sensor-path Cisco-IOS-XR-infra-statsd-oper:infra-statistics/interfaces/interface [interface-name='tunnel-te*']/latest/generic-counters