Somboon - stock.adobe.com
Netzwerk-Monitoring-System selbst entwickeln oder kaufen?
Die meisten Unternehmen kaufen Netzwerk-Monitoring-Systeme von der Stange. Bei einer Inhouse-Lösung hingegen sind zahlreiche Schritte für eine leistungsstarke Plattform zu beachten.
Ein Netzwerk-Monitoring-System ist ein Tool oder ein Tool-Set, mit dem Informationen über ein Netzwerk und seine Geräte nachverfolgt werden. Netzwerk-Monitoring-Systeme sammeln netzwerkrelevante Informationen über andere mit dem Netzwerk verbundene Geräte, etwa Server und Laptops.
Für jede Entität, die ein Netzwerk-Monitoring-System überwacht, beobachtet es eine oder mehrere der folgenden Funktionen:
- Netzwerkverhalten: Der Traffic, der durch die Netzwerkgeräte fließt.
- Netzwerk-Performance: Die Effizienz des Traffics, der durch das Netzwerk fließt.
- Gerätekonfigurationen: Die Art und Weise, wie Geräte den Datenfluss verwalten und den Zugriff auf sich selbst regeln.
Netzwerk-Monitoring-Systeme ermöglichen es Netzwerkteams, ein Netzwerk proaktiver zu verwalten und sich realistisch auf die Kapazitätsplanung vorzubereiten. Außerdem können sie auftretende Netzwerkprobleme effektiver und effizienter diagnostizieren und beheben.
Netzwerkteams müssen entscheiden, wie sie ein Netzwerk-Monitoring-System implementieren wollen. Zu diesen Entscheidungen gehört die Wahl zwischen einer On-Premises- und einer Cloud-Bereitstellung sowie die Abwägung zwischen einem imperativen, befehlsbasierten und einem konfigurativen, zustandsbasierten Ansatz. Eine der grundlegendsten Entscheidungen ist jedoch die Frage, ob ein Netzwerk-Monitoring-System selbst entwickelt oder als fertige Lösung gekauft werden sollte.
Unternehmen, die Netzwerk-Monitoring-Systeme in Eigenregie entwickeln, verfolgen damit spezifische Anwendungsfälle und strategische Zielsetzungen. Dieser Artikel analysiert diese Beweggründe und stellt die Eigenentwicklung eines Netzwerk-Monitoring-Systems dem Kauf externer Lösungen gegenüber.
Überlegungen zum Aufbau eines Netzwerk-Monitoring-Systems
Es gibt drei Gründe, die dafürsprechen, ein Netzwerk-Monitoring-Tool inhouse zu entwickeln:
- Kosten: Unternehmen glauben, dass sie mit geringeren Kosten eine Lösung entwickeln können, die ihren Anforderungen gerecht wird.
- Umfang, Anpassung und Kontrolle: Unternehmen entwickeln eigene Tools oft deshalb, um die Plattform stärker auf die von ihnen benötigten Funktionen auszurichten und die Funktionen sicher bereitzustellen.
- Vertrauen und Risiko: Unternehmen möchten ein Netzwerkmanagementsystem mit minimalem zusätzlichem Risiko.
So erstellen Sie ein Netzwerk-Monitoring-System
Ein Unternehmen, das ein sicheres Netzwerk-Monitoring-System entwickeln will, das seine spezifischen Anforderungen erfüllt, sollte dabei schrittweise vorgehen. Der Prozess zur Erstellung eines Netzwerk-Monitoring-Systems gliedert sich folgendermaßen:
- Anforderungen definieren.
- Programmiersprache auswählen.
- KI zur Prozessvereinfachung nutzen.
- Programmierstandards einhalten.
- Bewährte Designprinzipien anwenden.
- Das Netzwerk-Monitoring-System absichern.
1. Anforderungen definieren
Vor dem Aufbau des Netzwerk-Monitoring-Systems muss das Unternehmen die Kernfunktionsbereiche Leistung, Verhalten und Konfiguration definieren, die das Netzwerkmanagementsystem abdecken muss. Ordnen Sie die Liste nach Wichtigkeit, um eine Orientierung für die Struktur des Tools und eine grobe Reihenfolge für die Entwicklung der Funktionen zu erhalten.
Legen Sie die Kernanforderungen für die Objekte fest, die das Netzwerkmanagementsystem überwachen soll. Diese Dokumentation kann alles im Netzwerk oder nur spezifische Gerätegruppen umfassen.
2. Programmiersprache auswählen
Wenn ein Unternehmen ein Netzwerkmanagementsystem ohne vorgefertigten Code aufbaut, muss es eine Programmiersprache auswählen. Um nicht komplett bei Null anfangen zu müssen, empfiehlt sich ein Open-Source-Paket. Diesem können bewährte Codeabschnitte und Lösungsansätze entnommen werden, oder es dient direkt als Basis für die Weiterentwicklung Ihres eigenen Systems. Wenn sich eine Firma für diesen Weg entscheidet, sollte das Netzwerkteam die geltenden Lizenzbedingungen kennen.
Netzwerkteams sollten zudem Materialien zur Erstellung anderer Netzwerkmanagementsysteme heranziehen. Es ist nützlich, sich den Code anderer Open-Source-Systeme anzusehen, auch wenn Sie sich entscheiden, keines davon zu verwenden. Open-Source-Lösungen bieten eine Fülle von Beispielen dafür, wie man ein System aufbaut – beziehungsweise wie man es nicht aufbaut.
Es ist außerdem wichtig, zu gewährleisten, dass alle Mitglieder des Netzwerkteams, die das System nutzen werden, in die Design- und Testzyklen einbezogen werden. Die kontinuierliche Zusammenarbeit mit den Endnutzern trägt dazu bei, dass das Tool ihren Anforderungen gerecht wird.
3. KI zur Prozessvereinfachung nutzen
Sofern im Unternehmen KI-gestützte Entwicklungswerkzeuge verfügbar sind, sollte das Netzwerkteam diese zur Unterstützung bei der Programmierung nutzen. Netzwerkteams können KI verwenden, um das grundlegende Framework für das Monitoring-System zu generieren, das in der Regel Folgendes umfasst:
- Dateien.
- Skelettfunktionen.
- Teilweise spezifizierte Objekte.
- Datenstrukturen.
- Schnittstellen.
Das Unternehmen kann ein KI-Tool verwenden, um diese erforderlichen Komponenten auf Grundlage detaillierter Anweisungen zu Struktur und Funktion zu implementieren. Bevor die KI jedoch mit der Erstellung beauftragt wird, sollten die Entwickler ein klares Verständnis davon haben, was sie erstellen möchten. Darüber hinaus sollten sie die KI mit Codebeispielen der aktuellen Netzwerk-Monitoring-Lösung trainieren, um die gewünschte Vorgehensweise bei der Systemerstellung aufzuzeigen.
Wenn die KI darauf trainiert wurde, potenzielle Sicherheitsbedrohungen zu erkennen, sollte das Netzwerkteam die KI bitten, den Code auf Sicherheitsschwächen zu überprüfen. Viele Probleme treten im Allgemeinen frühzeitig in einer Codebasis auf, und je länger sie bestehen bleiben, desto schwieriger ist es, sie zu beheben.
KI kann Netzwerkteams bei Routineaufgaben während der Programmierung des Netzwerk-Monitoring-Systems entlasten und sich um kritische Aspekte der Anwendungssicherheit kümmern – etwa die Validierung von Eingaben oder die Durchführung von Bounds Checks bei Array-Operationen. Dies kann die Entwicklungszyklen verkürzen und es dem Team ermöglichen, sich auf die wesentlichen funktionalen Anforderungen zu konzentrieren.
4. Programmierstandards einhalten
Das Netzwerkteam sollte sich bei der Erstellung des Netzwerk-Monitoring-Systems an Namenskonventionen und andere Coding-Standards halten. Wenn das Unternehmen bereits über Richtlinien für die interne Anwendungsentwicklung verfügt, sollte das Team sie so weit wie möglich nutzen. Wenn es im Unternehmen keine Standards gibt, ist jetzt ein guter Zeitpunkt, dies nachzuholen. Die Einhaltung von Standards erleichtert die Zusammenarbeit der Teams und hilft Entwicklern, die später hinzustoßen, den Aufbau des Systems zu verstehen.
Ein Codemanagementsystem hilft auch in Bereichen wie Branch-Management und Versionierung. Darüber hinaus sollte das Netzwerkteam Change-Management-Prinzipien auf das Netzwerk-Monitoring-System anwenden, sobald das Team mit dessen Nutzung beginnt.
5. Bewährte Designprinzipien anwenden
Das Netzwerk muss während des gesamten Prozesses bewährten Designprinzipien folgen. Bei einer vollständigen Neuentwicklung eines Netzwerk-Monitoring-Systems sollte man auf ein modulares Cluster setzen: Jedes Modul liefert eine spezifische Funktion– oder mehrere, eng miteinander verwandte Funktionen – und interagiert dabei mit gemeinsam genutzten Datenbanken.
Dies bedeutet, dass das Netzwerkteam APIs für die Komponenten entwerfen muss. Beim Design sollte berücksichtigt werden, dass im Laufe der Zeit zusätzliche Funktionen zum System hinzugefügt werden müssen. Außerdem sollte das Netzwerkteam eine Datenbank wählen, die ausreichend leistungsfähig und skalierbar ist.
6. Das Netzwerk-Monitoring-System absichern
Netzwerkteams sollten bei der Entwicklung des Tools der Sicherheit des Netzwerk-Monitoring-Systems Priorität einräumen. Sobald das Team über Release-Kandidaten für das Monitoring-System verfügt, muss es jede Version der Software vor dem produktiven Einsatz vollständigen Sicherheitsscans und Red-Teaming-Angriffen unterziehen. Das oberste Prinzip sollte lauten: Wenn eine Komponente des Systems nicht sicher funktioniert, dann funktioniert sie überhaupt nicht.
Kaufen als Alternative
Wenn ein Unternehmen beschließt, ein Netzwerk-Monitoring-System nicht inhouse zu entwickeln, kann es Monitoring-Lösungen von Netzwerkanbietern kaufen. Dies ist bei vielen Firmen der Fall, da die meisten keine Netzwerk-Monitoring-Systeme von Grund auf neu entwickeln. Die Hardware-Anbieter kennen ihre Produkte außerdem am besten.
Unternehmen können auch Tools von Anbietern erwerben, die statt Netzwerkgeräten Management-Tools und -Services verkaufen. Diese Firmen sind Experten für die Entwicklung von Management-Tools für eine breite Palette von Geräten. Im Laufe der Zeit setzen die meisten Unternehmen eine Vielzahl von Tools verschiedener Anbieter parallel ein.
Etliche Unternehmen nutzen zudem ein oder mehrere Netzwerk-Monitoring-Tools aus dem Open-Source-Bereich. Dies reduziert den Aufwand und die Kosten für die Entwicklung eigener Lösungen sowie die Ausgaben für den Kauf eines weiteren Tools. Insbesondere für kleinere Firmen bilden Open Source Tools das Herzstück des Monitoring-Betriebs. In größeren Unternehmen werden Open Source Tools jedoch typischerweise für spezifische Aufgabenbereiche genutzt, beispielsweise das grundlegende Uptime Monitoring.
Eigenbau: Die Realität bei einem Netzwerk-Monitoring-System
Unternehmen entwickeln mitunter ein eigenes Netzwerk-Monitoring-Tool, anstatt eine fertige Lösung zu kaufen oder auf Open Source zu setzen, da sie dies für kostengünstiger und sicherer halten. Entscheidet sich ein Unternehmen dazu, in die nötige Arbeitszeit der Entwickler- und Netzwerkteams zu investieren, muss die IT dieselben Standards in der Softwareentwicklung anwenden wie bei einer kundenorientierten Software.
Angesichts einiger schlecht konzipierter Netzwerk-Monitoring-Systeme oder -Tools mag ein Unternehmen durchaus versucht sein zu glauben, man könne selbst eine bessere Lösung entwickeln. Dennoch ist der Aufbau eines eigenen Netzwerk-Monitoring-Systems kein triviales Projekt. Es ist für Unternehmen unerlässlich, Best Practices zu befolgen, um resiliente, leistungsstarke und sichere Netzwerk-Monitoring-Systeme bereitzustellen, die den eigenen Anforderungen und Einsatzzwecken entsprechen.