Unterstützung für Cisco Model Driven Telemetry
Der NorthStar-Controller unterstützt Cisco Model Driven Telemetry (MDT) als Alternative zur SNMP-Erfassung von Schnittstellen- und LSP-Datenverkehrsdaten für Cisco-Geräte. Die SNMP-Erfassung ist relativ langsam (Abfrageintervalle von mehr als fünf Minuten) und kostspielig. Der MDT Collector von NorthStar führt die Netzwerküberwachung durch, indem er kontinuierlich Telemetriedatenströme von den Cisco-Geräten im Netzwerk verarbeitet.
Die SNMP-Erfassung im NorthStar-Controller wird durch Erstellen einer SNMP-Erfassungsaufgabe im Taskplaner (Administration > Task Scheduler) aktiviert. Wenn Sie MDT für die Datenerfassung auf den Cisco Geräten im Netzwerk und die SNMP-Erfassung für andere Geräte im Netzwerk verwenden möchten, können Sie eine SNMP-Erfassungsaufgabe erstellen, die ausgewählte Geräte oder Gerätegruppen für die Aufnahme angibt und die Auswahl derjenigen aufhebt, die MDT unterstützen. Weitere Informationen zu SNMP-Erfassungsaufgaben finden Sie unter Datenerfassung mit SNMP .
Sie sollten nicht sowohl die SNMP-Sammlung als auch MDT für dieselben Geräte aktiviert haben.
Der NorthStar MDT Collector wird in den folgenden Abschnitten beschrieben:
So funktioniert's
Der MDT-Collector wird als Teil des NorthStar Analytics RPM-Pakets bereitgestellt und befindet sich auf dem Analytics-Knoten. Supervisord verwaltet den MDT-Collector-Prozess als Teil der Gruppe Analytics Supervisord.
Pipeline wird als Komponente eines Drittanbieters in /opt/northstar/thirdparty/pipeline installiert. Die Protokolldatei der Pipeline befindet sich im Verzeichnis /opt/northstar/logs/pipeline.msg.
Abbildung 1 veranschaulicht den allgemeinen Datenfluss bei der Verwendung von MDT.
des NorthStar MDT Collector
Hier ist ein Überblick über den Prozess:
Der MDT Collector besteht aus der bigmuddy-network-telemetry-pipeline (Open Source) und dem Output-Plugin von NorthStar. Die Konfigurationsdatei (pipeline.yml) der Pipeline befindet sich unter / opt/northstar/data/pipeline/config.
Das Streaming der MDT-Daten wird vom Router initiiert.
Der Umfang und der Zeitplan der Streams richten sich nach der Konfiguration auf den Geräten.
Hinweis:Auf IOS-XR-Geräten muss Version XR 6.1.1 oder höher ausgeführt werden.
NorthStar MDT unterstützt UDP- und TCP-Transportprotokolle. Für die Codierung werden GPB, selbstbeschreibendes GPB (KV-GPB) und JSON unterstützt.
Wenn die Pipeline die Telemetriedaten über UDP oder TCP empfängt, dekodiert sie die Daten und überträgt sie zur Verarbeitung an das NorthStar-Ausgabe-Plug-In. Dies geschieht innerhalb des MDT-Kollektors.
Das NorthStar-Plugin konvertiert die Daten in das JTI-Format, kodiert sie als JSON-Dokument und pusht sie per UDP aus dem MDT Collector nach Logstash.
Logstash verarbeitet das JSON-Dokument und überträgt die Informationen dann an Elasticsearch und RabbitMQ, damit sie vom NorthStar-Controller verwendet werden können.
Die NorthStar-Komponenten rufen die Datenverkehrsdaten mithilfe der NorthStar-REST-API ab.
MDT in NorthStar konfigurieren
Der einzige MDT-Parameter, der direkt in NorthStar konfiguriert werden kann, hat mit der Startprotokollebene zu tun. Standardmäßig startet NorthStar die MDT-Komponente auf "info"-Protokollebene. Sie können die Ebene auf "debug" ändern, wenn Sie möchten, indem Sie auf die cMGD-CLI zugreifen, wie unter Konfigurieren der NorthStar-Einstellungen mit der NorthStar-CLI beschrieben. Verwenden Sie den Befehl cMGD set northstar analytics model-driven-telemetry log-destination destination-name level log-level
Die Debug-Protokolle werden in die Datei / opt/northstar/logs/pipeline.log geschrieben, es sei denn, Sie konfigurieren einen anderen Zielnamen.
Wenn Sie die Protokollebene ändern, müssen Sie die Pipeline neu starten:
supervisorctl restart analytics:pipeline
Konfigurieren von MDT auf IOS-XR-Geräten
MDT muss auf den IOS-XR-Geräten konfiguriert sein, für die Sie Daten erfassen möchten. Eine Beispielkonfiguration wird hier gezeigt, aber betrachten Sie Ihre Cisco-Dokumentation als die endgültige Quelle für IOS-XR-Konfigurationsinformationen.
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 ! !
Einige Hinweise zu dieser Konfiguration:
Die Collector-Address-Variable bezieht sich auf das System (Analytics-Knoten), auf dem der MDT-Collector ausgeführt wird.
Die Codierungsauswahl (gpb oder self-describing-gpb) wirkt sich nicht auf die Einstellung "encap" innerhalb des tcp_northstar Abschnitts "oder" udp_northstar aus.
Wenn Sie TCP als Protokoll konfigurieren, muss der Portwert in der IOS-XR MDT-Konfiguration mit der Porteinstellung in der Pipelinekonfiguration übereinstimmen. Suchen Sie nach dem listen Parameter im tcp_northstar Abschnitt in /opt/northstar/data/pipeline/config/pipeline.yml. Wenn Sie UDP als Protokoll konfigurieren, muss der Portwert mit dem im udp_northstar Abschnitt übereinstimmen.
Die sample-interval Einstellung (Millisekunden) gibt an, wie häufig Telemetriedatenströme gesendet werden.
Die Anweisung sensor-path Cisco-IOS-XR-mpls-te-oper:mpls-te/signalling-counters/head-signalling-counters/head-signalling-counter weist das Gerät an, die Tunnel- und Signalnamen zu erfassen und an den MDT-Collector zu melden.
Mithilfe der sensor-path Konfiguration können Sie nach bestimmten Kriterien filtern. So melden Sie beispielsweise die Statistiken für Tunnel-te-Schnittstellen (die für Sprachdienstleister erstellt wurden):
sensor-path Cisco-IOS-XR-infra-statsd-oper:infra-statistics/interfaces/interface [interface-name='tunnel-te*']/latest/generic-counters