Zurück

CLI Parsers: Die Grundeinheit der Automatisierung

by 8. Nov 2018

CLI parsers sind spezialisierte Dateien, die Ihrem System im Wesentlichen Folgendes mitteilen:

„Für die CLI-Ausgabe [X] erfahren Sie hier, wie Sie die wichtigen Variablen [Y] und [Z] vom Rest der Informationen unterscheiden und strukturierte Antworten für den Benutzer erstellen.“

Diese sind unverzichtbar, wenn es um die Netzwerkautomatisierung geht, und wie ich später darauf eingehen werde, der Baustein von NetBrain's anpassbare Qapps.

Die Befehlszeilenschnittstelle ist ein leistungsstarkes, komplexes und ziemlich entmutigendes Werkzeug, das jeder Netzwerktechniker lernen muss, um bei seiner Arbeit hervorragende Leistungen zu erbringen. Die CLI-Beherrschung ist seit langem ein Erfolgsmerkmal und wird es auch in Zukunft bleiben. Jedoch, Mit zunehmender Größe des Netzwerks nimmt die Effektivität der CLI ab: Stellen Sie sich vor, ich würde fragen, wie Sie identische Schnittstellenkonfigurationen auf tausend FastEthernet0/1-Schnittstellen auf tausend Geräten überprüfen würden.

Wenn Ihre Antwort ist 'Tausend SSH-Sitzungen öffnen', dann bist du vielleicht eine Weile dabei.

Die CLI gewährt uns wertvolle Einblicke in unsere Netzwerkgeräte und ermöglicht uns eine granulare Kontrolle über ein Gerät. Genauso wie mich das übermäßige Vertrauen in die GUI davon abhalten kann, besser mit der CLI umzugehen, Die CLI selbst wird zu einem Engpass, wenn es um die Prozessautomatisierung geht.

Wenn Sie hundert Geräte anfassen müssen, um ein Problem zu lösen, müssen Sie dafür ein Skript erstellen. Ein großes Problem für Ingenieure besteht darin, dass ihre erforderlichen Fähigkeiten das Erlernen einer Skriptsprache wie Python oder Javascript nicht wirklich erzwingen. Ein größeres Problem ist, dass das CLI dem Benutzer viele unstrukturierte Daten präsentiert, was historisch gesehen nicht so toll für die Programmierung ist und eine zusätzliche Hürde schafft, die der Ingenieur überwinden muss.

Wenn ich unstrukturierte Daten sage, lassen Sie es mich ein wenig aufschlüsseln:

Stellen Sie sich vor, Sie möchten den Namen einer Person wissen. Unstrukturierte Daten sind gleichbedeutend damit, nach ihrer Lizenz zu fragen – Sie müssten sie trotzdem lesen, um zu finden, wonach Sie suchen. EIN parser ist etwas, das ihre Lizenz lesen und identifizieren würde, welcher Bereich ihren Namen für Sie enthält, und ihn auf visuell ansprechende Weise präsentieren würde

Strukturierte vs. unstrukturierte Daten 1

NetBrain erkennt die steile Schwierigkeitsspitze, die auftritt, wenn Leute mit dem Skripting beginnen müssen – es ist beängstigend, verwirrend und zeitaufwändig in all den Arten, wie das Erlernen einer neuen Sprache sein kann. Wenn wir unsere Qapps präsentieren und RunbookAls skriptlose Automatisierung wenden wir im Wesentlichen unsere CLI an parsers auf fortgeschrittene Weise. Unsere CLI parsers

Schauen wir uns zum Beispiel eine einfache eingebaute Qapp an, die sammelt grundlegende Schnittstelleneinstellungen.

Erfassen Sie grundlegende Schnittstellen Runbook Ausführungsablauf

Wie Sie hier sehen können, ist die gesamte Q-App nur eine Ausführung eines Programms namens GetIntfIntfSetting

GetIntfIntfSetting

Der Ablauf dieser Qapp ist wie folgt:

  1. Für jedes Gerät in der Warteschlange
  2. Führen Sie einen Show-Interface-Befehl aus
  3. Sammeln Sie Gerätedaten in einer Tabelle
  4. Konvertieren Sie die Gerätedatentabelle in eine globale Datentabelle
  5. Führen Sie eine zeilenweise Konvertierung in eine Excel-Datei durch.

Die CLI Parser tritt während der Schritte 3 und 4 in Kraft. Es würde eine ganze Weile dauern, auf die Einzelheiten jedes logischen Aspekts des einzugehen parser, also werde ich in dieser Beispielausgabe hier nur die Grundlagen durchgehen:

Beispielausgabe 1

Hier NetBrainintegrierte CLI parsers ermöglichen es dem System, Variablen wie Schnittstellenname [$intf], Status [$status], eingehende Pakete [$pkts_input] usw. leicht zu identifizieren, da wir uns die Zeit genommen haben, zu untersuchen, wie diese Ausgabe von der CLI dieses Anbieters aussieht und die Informationen, die wir untersuchen müssten, manuell identifiziert.

Ausgabevariablen

Sie als Techniker müssen nur die Qapp ausführen und NetBrain meldet sich prozedural bei diesen tausend Geräten an und teilt Ihnen mit, wie die Schnittstellenstatus sind.

Beispiel für eine strukturierte Ausgabe

Sie fragen sich also vielleicht, Was passiert, wenn Sie dasselbe tun müssen, aber mit einem anderen Anbieter? Die Antwort ist einfach. Hier, um NetBrain, haben wir bereits erstellt parsers für die am häufigsten auf einem Gerät ausgeführten Befehle. Ob es…

Cisco Schnittstelle Cisco

 

Wacholder

Schnittstelle Wacholder

 

Kontrollpunkt

Schnittstellen-Checkpoint

 

F5

Schnittstelle F5

Oder wirklich, jeder der langen Liste von Anbietern, die wir unterstützen, wir haben dafür gesorgt, dass Sie identische Datensätze auf jeder dieser Plattformen identifizieren können.

Für den Fall, dass Sie eine komplexere benötigen parser, wir haben auch ein komplettes System zum Bauen Ihres eigenen!

Das ist aber ein Thema für einen anderen Tag.

Fazit – Warum CLI Parsers?

CLI Parsers befassen sich mit der Logik des Zustandswechsels. CLI parsers helfen Ihnen, Ihre Daten richtig zu sequenzieren, um umsetzbare Informationen zu erstellen, während Sie unstrukturierte Daten in ein strukturiertes Format konvertieren. Wie bereits gesagt, jedes Qapp rein NetBrain ist ein erweiterter Ausdruck einer integrierten oder angepassten CLI Parser.

Die Befehlszeile geht nirgendwo hin. Es wird immer der effizienteste Weg sein, auf Daten auf einem einzelnen Gerät zuzugreifen und sie mit Präzision und Granularität zu steuern. Wenn es jedoch um große Netzwerke geht, müssen Sie die grundlegenden Aufgaben automatisieren, damit Sie noch einen Teil Ihres Tages für sinnvolle Arbeit übrig haben.

Bei Interesse an CLI parsers, unbedingt auschecken NetBrain Kostenlose Kurse der Universität zum Erstellen eigener.

 

Verbunden