PSEFABRIC - ein neuer Ansatz für Netzwerkmanagement und -automatisierung. Schritt zum Ideal

Bevor Sie anfangen


  • Alles, was hier besprochen wird, ist für Rechenzentren und Büronetzwerke relevanter
  • Es geht um das Projekt https://github.com/nihole/PSEFABRIC
  • siehe auch den Artikel, der die Grundprinzipien von PSEFABRIC beschreibt.

Das ideale Netzwerkmanagementsystem


Ich wage zu sagen, dass PSEFABRIC aus Sicht des Managements und der Automatisierung jetzt näher als jede andere Lösung an einem sogenannten „idealen Netzwerkmanager“ ist.

Wenn Sie ein gutes Auto haben, wissen Sie, was ein gutes Steuerungssystem ist. Als Benutzer müssen Sie nur wissen, wie Sie die Geschwindigkeit und Bewegungsrichtung ändern können, und dies und nur dies bietet Ihnen im Großen und Ganzen eine Schnittstelle. Gleichzeitig können Autos von verschiedenen Herstellern mit unterschiedlichen technischen Lösungen unterschiedlich sein - die Schnittstelle ist immer noch dieselbe: Bremse, Gas und Lenkrad (vorausgesetzt, Sie haben ein Automatikgetriebe).

Kann dieser Ansatz auf das Netzwerk übertragen werden, und wenn ja, welches Steuerungssystem wäre für das Netzwerk ideal?

Um diese Fragen zu beantworten, beantworten wir zunächst die Frage, und wer ist der Fahrer?

Netzwerke, die kein „kugelförmiges Pferd im luftleeren Raum“ sind, existieren nicht um ihrer selbst willen, sondern nur für einen einzigen Zweck - die Datenübertragung. Und die Benutzer dieses Dienstes sind Anwendungen. Die Anwendung benötigt lediglich Raster und die Konnektivität zwischen ihnen. Der Konfigurationspunkt sollte idealerweise für das gesamte Netzwerk (und nicht für hundert verschiedene Netzwerkgeräte) gleich sein, und die Schnittstelle sollte einfach und einheitlich sein.

Und ... natürlich ist dies eine unmögliche Aufgabe, denn aus Sicht des Netzwerks ist alles kompliziert: Hunderte von Protokollen, Gerätetypen, Anbietern, Designs - dies ist ein Ozean aller Arten von Optionen. Wie erstelle ich ein Produkt mit einer einfachen, einheitlichen Oberfläche, die all diese Vielfalt berücksichtigt? Es ist klar, dass das Problem in dieser Form nicht gelöst werden kann.

Und doch können wir jetzt schon sagen, dass es eine Lösung gibt und PSEFABRIC zeigt dies. Die Aufgabe muss natürlich leicht modifiziert werden, aber zum Glück ist diese Änderung nicht signifikant.

Erklärung des Problems


Es gibt zwei gute Nachrichten.

Das erste ist, dass nach Abschluss des Aufbaus und der Inbetriebnahme Ihres Netzwerks der Aufgabenbereich, den Sie im Netzwerk ausführen, von diesem Moment an stark eingeschränkt ist.
In der Regel lauten die operativen Aufgaben wie folgt:

  • Erstellung / Löschung einer Konfiguration im Zusammenhang mit der Einstellung von L2 / L3-Protokollen zum Verbinden von Geräten (Netzwerke, Wilans, Subschnittstellen, ...).
    Ich werde es Netzwerkerstellung / -löschung nennen.
  • Zugang öffnen / schließen
  • Erstellung / Entfernung von virtuellen Servern zum Ausgleich des Datenverkehrs

Dies gibt uns die Möglichkeit, die ursprüngliche Anforderung zu ändern. Wir werden nicht alle Vorgänge im Netzwerk verwalten. Wir unterscheiden mehrere miteinander verbundene Operationen, nämlich

  • Zugriffserstellung
  • Vernetzung (im oben beschriebenen Sinne)
  • Erstellung von virtuellen Servern für den Ausgleich
  • ...

Die zweite gute Nachricht ist die Schnittstelle.

Das Cisco ConfD-Produkt bietet uns alles, was wir brauchen. Mit der YANG-Sprache können wir praktisch jede notwendige Logik unserer Schnittstelle beschreiben (und damit erstellen). Wir werden auch alles haben, was wir so sehr lieben. Hier sind einige davon:

  • Konfiguration speichern
  • Kandidaten- und laufende Konfigurationsversionen (Festschreibungsfunktion)
  • Überprüfung der Syntax und Logik von Änderungen
  • Rollbacks
  • AAA
  • Konfigurierbarkeit über cli, http, rest, netconf, snmp

PSEFABRIC v.010


Neue Version v.010 PSEFABRIC

  • erleichtert das Wechseln zwischen verschiedenen Projektkontexten
  • Es ist leicht an eine Vielzahl von Designs, Geräten und Anforderungen anpassbar . Dies wird durch die folgenden PSEFABRIC-Eigenschaften sichergestellt:
    • Projekt p000 , das eine Vorlage für andere Projekte ist. Der empfohlene Ansatz beim Erstellen eines neuen Projekts besteht darin, die Dateien dieses Projekts mit ihrer nachfolgenden Änderung zu kopieren
    • Eine Reihe von Tools zum Konfigurieren von PSEFABRIC. Keine Codeänderung erforderlich
    • Eine Methodik , die die Abfolge der Schritte beschreibt, die bei der Implementierung dieser Lösung ausgeführt werden müssen

Als dieser Artikel vor einem Jahr im Großen und Ganzen geschrieben wurde, war er die Antwort auf die Frage "Ist das im Prinzip möglich?"

Das damals gegebene Beispiel (jetzt heißt es Projekt p001 ), das unter dem Gesichtspunkt einer Reihe von Geräten (Cisco-Router, L3-Switches, Switches, Cisco ASA, Juniper SRX) interessant ist, ist dennoch etwas künstlich.

Der große Vorteil dieses Projekts (p001) ist das Vorhandensein eines Labors (UNL), in dem Sie mit den Einstellungen von PSEFABRIC und allen oben genannten Geräten „herumspielen“, die Funktionsprinzipien, die Hauptpunkte der Konfiguration verstehen, sich mit den Diagnosewerkzeugen vertraut machen können ...

Die aktuelle Version von PSEFABRIC (v.010) ist bereits ein vollwertiges Produkt. Sie können es in Ihrem Netzwerk oder im Netzwerk Ihres Kunden anwenden. Um die Flexibilität und Stärke dieser Lösung zu demonstrieren, wurde ein weiteres Projekt erstellt (S. 002 ).

Dies ist bereits ein "Kampf" -Design, das Sie bei Ihnen vor Ort oder beim Kunden anwenden können. Dies ist ein beliebter und moderner Ansatz zum Aufbau eines Rechenzentrums, der auf langjährigen Ideen basiert:

  • Verschachtelte logische Segmentierung
    • logische Geräte (ACI-Mandanten, Palo-Alto VSYS, N7k-VDCs, ...)
    • Routing-Segmentierung (VRFs)
  • Verkehrssteuerung zwischen logischen Segmenten auf Firewalls
  • MPLS-Cloud zum Verbinden von Rechenzentren

Ausstattung: Palo-Alto, Cisco ACI.

In diesem halbstündigen Video analysieren wir Beispiel 0 im Detail. In diesem Beispiel konfigurieren wir mithilfe von PSEFABRIC den Zugriff zwischen den verschiedenen Netzwerksegmenten des Projekts p002 und passen die ACI- und PA-Geräte an.

Ein bisschen über Wunder


Um zu verstehen, wie PSEFABRIC das Konzept des Netzwerkmanagements ändert, finden Sie hier einige Beispiele.

Beginnen wir mit konzeptionellen Dingen.

  • Flexibilität Nach Beantwortung aller Fragen im Fragebogen dauert das Einrichten von PSEFABRIC für ein neues Projekt mehrere Tage bis mehrere Wochen. Viel hängt davon ab, wie schnell Sie alle erforderlichen Vorlagen erstellen können. In jedem Fall erscheinen 3 Monate für die Implementierung (zusammen mit dem Testen) dieses Systems ziemlich realistisch. Das Einrichten von PSEFABRIC für das Projekt p002 dauerte beispielsweise 1 Woche. Ich habe Erfahrung in der Erstellung eines Zugangskontrollsystems für ACI und kann sagen, dass selbst wenn wir diese Zeit für ein komplexes Projekt auf 6 Monate verlängern, dies immer noch ein sehr, sehr guter Indikator bleibt.
  • Notfallwiederherstellung. Sie haben tatsächlich eine "betriebsbereite" Konfiguration des "gesamten Netzwerks" in einer einzigen Datei. Sie können es problemlos auf neue Geräte anwenden. Interessanterweise können Sie sogar den Gerätetyp ersetzen (z. B. Juniper SRX, aber Palo-Alto FW), die PSEFABRIC-Einstellungen ändern (oder ein neues Projekt mit neuen Einstellungen erstellen) und dieselbe Konfiguration anwenden, jedoch auf einen neuen Gerätetyp. Und es sieht wirklich wie ein Wunder aus, oder?
  • Zugriffsprotokollierung. Das übliche Problem. Wenn Sie sich nicht anmelden, wissen Sie sehr bald nicht mehr, wo und was und welche Zugriffe noch benötigt werden und welche bereits veraltet sind, und im Allgemeinen verlieren Sie die Kontrolle über Ihr Netzwerk. Wenn Sie protokollieren, dauert es sehr lange, und Sie sind sich nie sicher, ob die protokollierten Zugriffe wirklich der tatsächlichen Konfiguration entsprechen, und am Ende hören Sie damit auf. Hier haben Sie sowohl Konfiguration als auch Anmeldung in einer Flasche.
  • DevOps. Das Einrichten Ihres Netzwerks ist jetzt eine einfache, leicht zu lesende Textdatei. Dementsprechend können Sie die Best-Practice-Entwicklung auf Änderungen in Ihrem Netzwerk anwenden.
  • NaaS. Haben Sie darüber nachgedacht, wie Sie die Lösung „Network as a Service“ implementieren können? Jetzt haben Sie diese Lösung mit Cli-, Netconf-, REST-, HTTP- und SNMP-Schnittstellen.

Und ein paar technische Beispiele:

  • Haben Sie versucht, Fragen zu beantworten wie "Wo / von wo sind Zugriffe von / zu so und so einem Netzwerk offen?" Wenn Sie über mehrere Rechenzentren verfügen und die Zugriffe auf einem Dutzend verschiedener Geräte gesteuert werden, kann die Antwort auf diese Frage recht schwierig sein. Im Fall von PSEFABRIC ist dies elementar.
  • Einige Anbieter bieten bequeme Lösungen für die Zugriffsverwaltung an, z. B. Tag in Palo-Alto oder TrustSec in Cisco. Unter dem Strich wird automatisch der Zugriff auf Netzwerke mithilfe von Tags bereitgestellt. Bei PSEFABRIC können Sie dies unabhängig vom Hersteller für Ihr gesamtes Netzwerk implementieren. Klingt nach einem Wunder? Meiner Meinung nach ja.
  • Sie möchten den Zugriff von mehreren Netzwerken, in denen sich Verwaltungsressourcen befinden (Überwachungssystem, Sicherungssysteme, ...), auf alle Netzwerkgeräte und Linux-Server öffnen. Dies führt normalerweise dazu, dass Sie auf vielen Geräten viele Zugriffe öffnen müssen. Eine ausführbare, aber nicht sehr angenehme Prozedur, und natürlich kann es viele solcher Beispiele geben. Im Fall von PSEFABRIC kann dies eine Richtlinie sein, und dann bestimmt PSEFABRIC, wo und welche Konfigurationsbefehle angewendet werden sollen.

Häufig gestellte Fragen


Aber wie unterscheidet sich dies von der regulären Orchestrierung, beispielsweise mit Cisco UCSD?
Was ist neu an diesem Ansatz?

Das Neue ist, dass die Orchestrierung normalerweise nichts über die Netzwerkkonfiguration weiß. Wenn Informationen erforderlich sind, sollte die Orchestrierung Anforderungen an echte Geräte stellen.
Wenn Sie beispielsweise einen Vertrag auf einer ACI löschen, muss das Orchestrierungssystem alle EPGs auf der ACI durchgehen, um alle Anbieter und Verbraucher für diesen Vertrag zu finden. Und es können Zehntausende von EPGs sein. Und es geht nicht nur um Leistung (obwohl dies auch), sondern darum, dass dies die Logik erheblich verkompliziert.

Schauen Sie sich einfach das vorherige Kapitel an und beantworten Sie die Frage: Haben Sie all diese Vorteile im Falle einer Orchestrierung?

Interessant?


PSEFABRIC ist Open Source mit der Apache-Lizenz, Version 2.0.

https://github.com/nihole/PSEFABRIC
https://github.com/nihole/PSEFABRIC/wiki
https://github.com/nihole/PSEFABRIC/wiki/Installation

Source: https://habr.com/ru/post/de431910/


All Articles