Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1

Heute erzähle ich Ihnen, wie die Idee, ein neues internes Netzwerk für unser Unternehmen zu schaffen, entstand und umgesetzt wurde. Die Position des Managements ist, dass Sie für sich selbst das gleiche umfassende Projekt durchführen müssen wie für den Kunden. Wenn wir es für uns selbst gut machen, können wir den Kunden einladen und zeigen, wie gut das, was wir ihm anbieten, funktioniert und funktioniert. Deshalb haben wir die Entwicklung des Konzepts eines neuen Netzwerks für das Moskauer Büro sehr gründlich angegangen und dabei den gesamten Produktionszyklus genutzt: Analyse der Abteilungsbedürfnisse → Auswahl einer technischen Lösung → Design → Implementierung → Tests. Also fangen wir an.

Auswahl einer technischen Lösung: Mutant Sanctuary

Das Verfahren zum Arbeiten an einem komplexen automatisierten System wird derzeit am besten in GOST 34.601-90 „Automatisierte Systeme“ beschrieben. „Stufen der Schöpfung“, also haben wir danach gearbeitet. Und schon bei der Anforderungsbildung und Konzeptentwicklung stießen wir auf erste Schwierigkeiten. Organisationen unterschiedlicher Profile – Banken, Versicherungen, Softwareentwickler etc. – benötigen für ihre Aufgaben und Standards bestimmte Arten von Netzwerken, deren Besonderheiten klar und standardisiert sind. Allerdings wird das bei uns nicht funktionieren.

Warum?

Jet Infosystems ist ein großes, diversifiziertes IT-Unternehmen. Gleichzeitig ist unsere interne Supportabteilung klein (aber stolz), sie stellt die Funktionalität grundlegender Dienste und Systeme sicher. Das Unternehmen besteht aus vielen Abteilungen, die unterschiedliche Funktionen erfüllen: Dies sind mehrere leistungsstarke Outsourcing-Teams, interne Entwickler von Geschäftssystemen und Informationssicherheit sowie Architekten von Computersystemen – im Allgemeinen, wer auch immer es ist. Dementsprechend unterschiedlich sind auch ihre Aufgaben, Systeme und Sicherheitsrichtlinien. Was erwartungsgemäß zu Schwierigkeiten im Prozess der Bedarfsanalyse und Standardisierung führte.

Hier ist zum Beispiel die Entwicklungsabteilung: Ihre Mitarbeiter schreiben und testen Code für eine Vielzahl von Kunden. Oft besteht die Notwendigkeit, Testumgebungen schnell zu organisieren, und ehrlich gesagt ist es nicht immer möglich, Anforderungen für jedes Projekt zu formulieren, Ressourcen anzufordern und eine separate Testumgebung gemäß allen internen Vorschriften aufzubauen. Dies führt zu merkwürdigen Situationen: Eines Tages schaute Ihr bescheidener Diener in den Entwicklerraum und fand unter dem Tisch einen ordnungsgemäß funktionierenden Hadoop-Cluster aus 20 Desktops, der unerklärlicherweise mit einem gemeinsamen Netzwerk verbunden war. Ich halte es nicht für sinnvoll, klarzustellen, dass die IT-Abteilung des Unternehmens nichts von seiner Existenz wusste. Dieser Umstand war, wie viele andere auch, dafür verantwortlich, dass während der Entwicklung des Projekts der Begriff „Mutantenreserve“ entstand, der den Zustand der leidgeprüften Büroinfrastruktur beschreibt.

Oder hier ist ein anderes Beispiel. In regelmäßigen Abständen wird innerhalb einer Abteilung ein Prüfstand aufgebaut. Dies war bei Jira und Confluence der Fall, die vom Software Development Center in einigen Projekten in begrenztem Umfang eingesetzt wurden. Nach einiger Zeit erfuhren auch andere Abteilungen von diesen nützlichen Ressourcen, bewerteten sie und Ende 2018 wechselten Jira und Confluence vom Status „lokales Programmiererspielzeug“ zum Status „Unternehmensressourcen“. Nun muss diesen Systemen ein Besitzer zugewiesen werden, SLAs, Zugriffs-/Informationssicherheitsrichtlinien, Backup-Richtlinien, Überwachung, Regeln für die Weiterleitung von Anfragen zur Behebung von Problemen müssen definiert werden – generell müssen alle Attribute eines vollwertigen Informationssystems vorhanden sein .
Jeder unserer Geschäftsbereiche ist auch ein Inkubator, der seine eigenen Produkte anbaut. Einige von ihnen sterben in der Entwicklungsphase, andere verwenden wir bei der Arbeit an Projekten, während andere Wurzeln schlagen und zu replizierten Lösungen werden, die wir selbst zu verwenden und an Kunden zu verkaufen beginnen. Für jedes dieser Systeme ist es wünschenswert, über eine eigene Netzwerkumgebung zu verfügen, in der es sich ohne Beeinträchtigung anderer Systeme entwickelt und irgendwann in die Infrastruktur des Unternehmens integriert werden kann.

Neben der Entwicklung verfügen wir über eine sehr große Service-Center mit mehr als 500 Mitarbeitern, die für jeden Kunden in Teams zusammengestellt werden. Sie sind an der Wartung von Netzwerken und anderen Systemen, der Fernüberwachung, der Schadensregulierung usw. beteiligt. Das heißt, die Infrastruktur des SC ist tatsächlich die Infrastruktur des Kunden, mit dem er gerade zusammenarbeitet. Die Besonderheit bei der Arbeit mit diesem Teil des Netzwerks besteht darin, dass ihre Arbeitsplätze für unser Unternehmen teils extern, teils intern sind. Daher haben wir für das SC den folgenden Ansatz umgesetzt: Das Unternehmen stellt der entsprechenden Abteilung Netzwerk- und andere Ressourcen zur Verfügung und betrachtet die Arbeitsplätze dieser Abteilungen als externe Verbindungen (analog zu Zweigstellen und Remote-Benutzern).

Autobahnplanung: Wir sind der Betreiber (Überraschung)

Nachdem wir alle Fallstricke geprüft hatten, stellten wir fest, dass wir das Netzwerk eines Telekommunikationsbetreibers in einem Büro untergebracht hatten, und begannen, entsprechend zu handeln.

Wir haben ein Kernnetzwerk geschaffen, mit dessen Hilfe jeder interne und künftig auch externe Verbraucher mit dem erforderlichen Dienst versorgt wird: L2 VPN, L3 VPN oder reguläres L3-Routing. Einige Abteilungen benötigen einen sicheren Internetzugang, während andere einen sauberen Zugriff ohne Firewalls benötigen, gleichzeitig aber unsere Unternehmensressourcen und unser Kernnetzwerk vor ihrem Datenverkehr schützen müssen.

Wir haben mit jeder Abteilung informell „ein SLA abgeschlossen“. Danach müssen alle auftretenden Vorfälle innerhalb einer bestimmten, vorher vereinbarten Frist beseitigt werden. Die Anforderungen des Unternehmens an sein Netzwerk erwiesen sich als streng. Die maximale Reaktionszeit auf einen Vorfall bei Telefon- und E-Mail-Ausfällen betrug 5 Minuten. Die Wiederherstellung der Netzwerkfunktionalität dauert bei typischen Ausfällen nicht länger als eine Minute.

Da wir über ein Carrier-Grade-Netzwerk verfügen, können Sie sich nur unter strikter Einhaltung der Regeln darauf anmelden. Serviceeinheiten legen Richtlinien fest und stellen Dienste bereit. Sie benötigen nicht einmal Informationen über die Verbindungen bestimmter Server, virtueller Maschinen und Workstations. Gleichzeitig sind jedoch Schutzmechanismen erforderlich, da keine einzige Verbindung das Netzwerk lahmlegen darf. Wenn versehentlich eine Schleife entsteht, sollte dies für andere Benutzer nicht merkbar sein, d. h. es ist eine angemessene Reaktion des Netzwerks erforderlich. Jeder Telekommunikationsbetreiber löst ständig ähnliche, scheinbar komplexe Probleme in seinem Kernnetz. Es bietet Dienstleistungen für viele Kunden mit unterschiedlichen Bedürfnissen und unterschiedlichem Verkehr. Gleichzeitig sollten verschiedene Abonnenten keine Unannehmlichkeiten durch den Datenverkehr anderer erfahren.
Zu Hause haben wir dieses Problem folgendermaßen gelöst: Wir haben mithilfe des IS-IS-Protokolls ein Backbone-L3-Netzwerk mit vollständiger Redundanz aufgebaut. Basierend auf der Technologie wurde ein Overlay-Netzwerk auf dem Kern aufgebaut EVPN/VXLAN, unter Verwendung eines Routing-Protokolls MP-BGP. Um die Konvergenz von Routing-Protokollen zu beschleunigen, wurde die BFD-Technologie verwendet.

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Netzwerkstruktur

In Tests hat sich dieses Schema als ausgezeichnet erwiesen: Wenn ein Kanal oder Switch getrennt wird, beträgt die Konvergenzzeit nicht mehr als 0.1 bis 0.2 s, ein Minimum an Paketen geht verloren (oft keine), TCP-Sitzungen werden nicht unterbrochen, Telefongespräche werden nicht unterbrochen.

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Unterlageschicht – Routing

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Overlay-Ebene – Routing

Als Verteilungsswitches kamen Huawei CE6870 Switches mit VXLAN-Lizenzen zum Einsatz. Dieses Gerät verfügt über ein optimales Preis-Leistungs-Verhältnis und ermöglicht den Anschluss von Teilnehmern mit einer Geschwindigkeit von 10 Gbit/s und die Verbindung zum Backbone mit Geschwindigkeiten von 40–100 Gbit/s, abhängig von den verwendeten Transceivern.

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Huawei CE6870 Schalter

Als Core-Switches kamen Huawei CE8850 Switches zum Einsatz. Ziel ist es, den Verkehr schnell und zuverlässig zu übertragen. An sie sind keine Geräte außer Distributions-Switches angeschlossen, sie wissen nichts über VXLAN, daher wurde ein Modell mit 32 40/100-Gbit/s-Ports ausgewählt, mit einer Basislizenz, die L3-Routing und Unterstützung für IS-IS und MP-BGP bietet Protokolle.

Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Der unterste ist der Huawei CE8850 Core Switch

Bereits in der Entwurfsphase entbrannte im Team eine Diskussion über Technologien, mit denen eine fehlertolerante Verbindung zu Kernnetzknoten realisiert werden könnte. Unser Moskauer Büro befindet sich in drei Gebäuden, wir verfügen über 7 Verteilerräume, in denen jeweils zwei Huawei CE6870 Verteilerschalter installiert wurden (in mehreren Verteilerräumen wurden nur Zugangsschalter installiert). Bei der Entwicklung des Netzwerkkonzepts wurden zwei Redundanzoptionen berücksichtigt:

  • Konsolidierung der Verteilungsschalter zu einem fehlertoleranten Stapel in jedem Querverbindungsraum. Vorteile: Einfachheit und einfache Einrichtung. Nachteile: Bei Fehlern in der Firmware von Netzwerkgeräten („Memory Leaks“ und dergleichen) besteht eine höhere Wahrscheinlichkeit für einen Ausfall des gesamten Stacks.
  • Wenden Sie M-LAG- und Anycast-Gateway-Technologien an, um Geräte mit Verteilungs-Switches zu verbinden.

Am Ende haben wir uns für die zweite Option entschieden. Es ist etwas schwieriger zu konfigurieren, hat aber in der Praxis seine Leistungsfähigkeit und hohe Zuverlässigkeit unter Beweis gestellt.
Betrachten wir zunächst den Anschluss von Endgeräten an Verteilerschalter:
Wie wir im Moskauer Büro ein neues Netzwerk auf Huawei entworfen und implementiert haben, Teil 1
Kreuzen

Ein Zugriffs-Switch, Server oder ein anderes Gerät, das eine fehlertolerante Verbindung erfordert, ist in zwei Verteilungs-Switches enthalten. Die M-LAG-Technologie bietet Redundanz auf Datenverbindungsebene. Es wird davon ausgegangen, dass zwei Verteilerschalter für die angeschlossenen Geräte als ein Gerät erscheinen. Redundanz und Lastausgleich erfolgen über das LACP-Protokoll.

Die Anycast-Gateway-Technologie sorgt für Redundanz auf Netzwerkebene. Auf jedem der Verteilungsswitches ist eine relativ große Anzahl von VRFs konfiguriert (jeder VRF ist für seine eigenen Zwecke gedacht – separat für „normale“ Benutzer, separat für Telefonie, separat für verschiedene Test- und Entwicklungsumgebungen usw.) und in jedem Für VRF sind mehrere VLANs konfiguriert. In unserem Netzwerk sind Distribution Switches die Standard-Gateways für alle mit ihnen verbundenen Geräte. Die den VLAN-Schnittstellen entsprechenden IP-Adressen sind für beide Distribution Switches gleich. Der Verkehr wird über den nächstgelegenen Switch geleitet.

Schauen wir uns nun an, wie wir Verteilungsschalter mit dem Kernel verbinden:
Fehlertoleranz wird auf Netzwerkebene mithilfe des IS-IS-Protokolls bereitgestellt. Bitte beachten Sie, dass zwischen den Switches eine separate L3-Kommunikationsleitung mit einer Geschwindigkeit von 100G bereitgestellt wird. Physikalisch gesehen handelt es sich bei dieser Kommunikationsleitung um ein Direct Access-Kabel; es ist rechts auf dem Foto der Huawei CE6870-Switches zu sehen.

Eine Alternative wäre die Organisation einer „ehrlichen“ vollständig verbundenen Doppelstern-Topologie, aber wie oben erwähnt haben wir 7 Cross-Connect-Räume in drei Gebäuden. Hätten wir uns also für die „Doppelstern“-Topologie entschieden, hätten wir genau doppelt so viele „Long-Range“-40G-Transceiver benötigt. Die Einsparungen sind hier sehr erheblich.

Ein paar Worte müssen darüber gesagt werden, wie VXLAN- und Anycast-Gateway-Technologien zusammenarbeiten. VXLAN ist, ohne auf Details einzugehen, ein Tunnel zum Transport von Ethernet-Frames innerhalb von UDP-Paketen. Als Ziel-IP-Adresse des VXLAN-Tunnels werden die Loopback-Schnittstellen von Distribution Switches verwendet. Jeder Crossover verfügt über zwei Switches mit denselben Loopback-Schnittstellenadressen, sodass ein Paket an jedem von ihnen ankommen und daraus ein Ethernet-Frame extrahiert werden kann.

Wenn der Switch die Ziel-MAC-Adresse des abgerufenen Frames kennt, wird der Frame korrekt an sein Ziel übermittelt. Um sicherzustellen, dass beide im selben Cross-Connect installierten Distribution Switches über aktuelle Informationen über alle von den Access Switches „ankommenden“ MAC-Adressen verfügen, ist der M-LAG-Mechanismus für die Synchronisierung der MAC-Adresstabellen (sowie ARP) verantwortlich Tabellen) auf beiden Switches M-LAG-Paaren.

Der Verkehrsausgleich wird durch das Vorhandensein mehrerer Routen zu den Loopback-Schnittstellen von Verteilungsswitches im Underlay-Netzwerk erreicht.

Statt einer Schlussfolgerung

Wie oben erwähnt, zeigte das Netzwerk während der Tests und des Betriebs eine hohe Zuverlässigkeit (die Wiederherstellungszeit bei typischen Ausfällen beträgt nicht mehr als Hunderte von Millisekunden) und eine gute Leistung – jeder Cross-Connect ist über zwei 40-Gbit/s-Kanäle mit dem Kern verbunden. Zugangsschalter in unserem Netzwerk sind gestapelt und über LACP/M-LAG mit zwei 10-Gbit/s-Kanälen mit Verteilungsschaltern verbunden. Ein Stack enthält in der Regel 5 Switches mit jeweils 48 Ports und in jedem Cross-Connect sind bis zu 10 Access Stacks an die Verteilung angeschlossen. Somit stellt der Backbone selbst bei maximaler theoretischer Auslastung etwa 30 Mbit/s pro Benutzer bereit, was zum Zeitpunkt des Schreibens für alle unsere praktischen Anwendungen ausreichend ist.

Das Netzwerk ermöglicht Ihnen die nahtlose Organisation der Kopplung aller beliebigen angeschlossenen Geräte über L2 und L3 und sorgt so für eine vollständige Isolierung des Datenverkehrs (was der Informationssicherheitsdienst wünscht) und der Fehlerdomänen (was dem Betriebsteam gefällt).

Im nächsten Teil erzählen wir Ihnen, wie wir auf das neue Netzwerk migriert sind. Bleiben Sie dran!

Maxim Klotschkow
Leitender Berater der Gruppe Netzwerkprüfung und komplexe Projekte
Netzwerklösungszentrum
„Jet-Infosysteme“


Source: habr.com

Kommentar hinzufügen