Eine Lingua franca für offene Netzwerksysteme
Von Gerhard Abeska, Dell Networking
Durch Trends wie Cloud Computing und Software-definierte Ansätze entsteht sowohl im Campus als auch im Rechenzentrum eine sich dynamisch verändernde IT-Landschaft. Dazu werden modulare, offene Netzwerkbetriebssysteme benötigt, die den Aufbau sehr flexibler, ausbaufähiger und effizienter IT-Infrastrukturen ermöglichen.
Unabhängigkeit von proprietären Lösungen
Die Entkopplung von Hardware und Software mithilfe von Virtualisierungstechnologien hat nach den Servern und Storage-Systemen auch das Netzwerk erreicht. Lösungsansätze wie SDN (Software-defined Networking), NFV (Network Functions Virtualization) und Open Networking (Brite-Box Switching) sind dabei, proprietäre Komponenten auch in diesem Marktsegment abzulösen. Der nächste Schritt sind modulare Netzwerkbetriebssysteme auf Basis eines offenen, nicht modifizierten Linux, das eine gemeinsame Grundlage für die Verbindung zwischen Netzwerk-, Speicher- und Serverkapazitäten bereitstellt.
Ein nicht modifiziertes Linux, beispielsweise in Form der Open Edition des Netzwerkbetriebssystems OS10 von Dell, ermöglicht es Cloud-Providern, Internet-Firmen und Unternehmen, ihre Betriebssystemumgebung im Bereich der Netzwerkkomponenten und Server zu standardisieren und von den Vorteilen der Linux-Community zu profitieren. Sie machen sich damit unabhängig von den Linux-Varianten eines einzelnen Anbieters.
Um die Offenheit im Sinne des Open-Source-Ansatzes sicherzustellen, fließen weite Teile des Source Codes der Open Edition in einem beiderseitigen Austausch in das SONiC-Projekt, einen Teil des Open Compute Project (OCP), ein. SONiC (Software for Open Networking in the Cloud) ist eine Zusammenstellung von Softwarepaketen und Modulen, die Anwender unter Linux auf einem Switch installieren können.
Unterstützung durch die Open-Source-Community
Das Fundament für SONiC stellt das Switch Abstraction Interface (SAI) des Open-Compute-Projekts bereit. OCP wurde ursprünglich von Facebook initiiert und fand rasch Unterstützung durch eine Vielzahl von Unternehmen aus der Computerindustrie. Deren gemeinsames Ziel ist es, unter dem Motto „Open Source plus Hardware ist gleich Open Hardware“ eine neue Generation von Rechenzentrumsarchitekturen zu entwickeln.
Das SAI entstand im Frühjahr 2015 und sorgt für eine Interoperabilität zwischen herstellerspezifischen Netzwerkbetriebssystemen und der auf dem Switch verbauten Hardware. Dabei fungiert das SAI als eine gemeinsame Sprache zwischen dem Netzwerkbetriebssystem und dem Netzwerkprozessor auf dem physikalischen Switch. SAI ist damit ein bedeutender Katalysator der Open-Networking-Initiative. Ein wichtiges Merkmal einer solchen offenen Lösung ist, dass die grundlegende Systemsoftware von den Layer-2- und Layer-3-Protokoll-Stacks und -Services entkoppelt ist.
Die Anpassungsfähigkeit und Programmierbarkeit spielt bei einem Open-Source-Netzwerkbetriebssystem eine wichtige Rolle. Deshalb ist hier die Unterstützung von Control Plane Services (CPS), APIs, die das Switch Abstraction Interface ergänzen, gefordert. Mit den CPS lässt sich die Konfiguration der Switching-Logik programmieren.
Linux als Basis der Netzwerkarchitektur
Von einem nicht modifizierten Linux als Herzstück einer offenen Architektur profitieren Unternehmen, die in ihrem Rechenzentrum Netzwerkkomponenten, Storagesysteme sowie Server und die darauf laufenden Applikationen als Einheit und nicht als separate Inseln steuern und verwalten wollen. Damit stehen auch weitverbreitete Open-Source-Management-Tools wie Chef, Nagios, Puppet und Red Hat Ansible Tower zur Verfügung. Ansible Tower etwa bietet vielfältige Kontroll- und Sicherheitsfunktionen und unterstützt Administratoren und Entwickler bei der Systemverwaltung, dem Konfigurationsmanagement und der Optimierung von Deployments. Durch die Unterstützung des Orchestrierungs-Frameworks Kubernetes lassen sich auch problemlos Anwendungsszenarien mit Netzwerkcontainern realisieren.
Offene Kollaboration
Vorteile bringt ein Open-Source-basiertes Netzwerkbetriebssystem nicht nur für die Programmierbarkeit und Verwaltung der Infrastruktur. Auch DevOps-Communities, bei denen der Schwerpunkt erwartungsgemäß auf einer konsistenten und gemeinsamen Entwicklungsumgebung für Netzwerkelemente, Speichersysteme und Servern liegt, profitieren davon. Für die Unternehmen bedeutet das letztlich, dass sich ihre Produktivität und Leistungsfähigkeit deutlich erhöht.