Freitag Mrz 02, 2007

Eleganter Massentransport (?)

Wenn sie die Wahl zwischen einem Doppeldeckerbus und einem italienischen Sportwagen hätten, würden die wenigsten Leute sich für den Bus entscheiden.

Aber für Menschen, die mit maximaler Effizinz Personentransport betreiben, sind Busse einfach nicht zu schlagen: Ihre Kilometerleistung pro Passagier ist über 20 Mal so hoch wie die des durchschnittlichen Sportwagens. Das liegt, in IT-Terminologie ausgedrückt, daran, dass Busse den Transport parallelisieren: Sie sind für den Transport mehrerer Passagiere optimiert, nicht für den einzelner (im Gegensatz zu dem, was die meisten Konsumenten tun – trotz der vereinzelten Eltern mit Kleinbussen).

Auch in Rechenzentren legt man seit einigen Jahren einen ähnlichen Schwerpunkt auf Effizienz (und Abweichung von den Vorlieben des Konsumenten). Konsumenten kaufen Telefone von Auch in Rechenzentren legt man seit einigen Jahren einen ähnlichen Schwerpunkt auf Effizienz (und Abweichung von den Vorlieben des Konsumenten). Konsumenten kaufen Telefone von Dolce & Gabbana, Rechenzentren sehen sich verstärkt nach hochleistungsfähigen Bussen um: einer Infrastruktur, die für Auslastung, Effizienz und Gesamtleistung ausgelegt ist, nicht nur die Geschwindigkeit einzelner Komponenten.

Wir haben diesen Schwerpunkt schon seit Jahren propagiert, als wir nämlich Chip-Multithreading starteten und den ersten 8-Kern-Mikroprozessor produzierten. Jeder Kern verfügte über vier Ausführungs-Threads, sodass ein Server von unter 4.000 US-Dollar 32 Threads gleichzeitig ausführen konnte (und das bei überzeugender Kilometerleistung). (Zum kostenlosen Ausprobieren hier klicken.) Wir haben absichtlich mehr Wert auf Effizienz gelegt als darauf, nur füreinen einzigen Thread die maximale Leistung herauszuholen – und das war die richtige Entscheidung. Intel, AMD, IBM und Sun investieren nun alle kräftig in Mehrkernplattformen. Sun liegt dabei mit dem einzigen Mainstream-16-Kern-Mikroprozessor, der bereits an die Produktion gegeben wurde, eindeutig in Führung.

Ohne Software hilft die schönste Hardware nichts, aber zum Glück kann Solaris „skalieren“ bzw. all diese verschiedenen Threads ausführen. So können Anwendungen sofort und ohne zusätzlichen Aufwand die Vorteile der Innovation nutzen. Kunden können Anwendungen auf je einem Thread des Chips ausführen oder eine Anwendung über mehrere Threads. Sie können sogar jedem Kern auf dem Chip ein anderes Betriebssystem zuweisen oder irgendeine andere Kombination ausprobieren (heutzutage nennt man das gerne „Server-Virtualisierung“). Das Ergebnis? Kunden kaufen größere, dafür aber weniger Geräte, die weniger Platz und Strom erfordern und allgemein eine besser Kilometerleistung bieten. Früher war es so: Wer eine gute Leistung seiner Anwendung garantieren wollte, teilte ihr einen eigenen Server zu. Mit Produkten zur Server-Virtualisierung wie VMWare und Solaris 10 können viele Anwendungen in einem einzigen Gerät kondensiert werden, wobei jede so läuft, als hätte sie ihren eigenen Server. Gleichzeitig bestimmt eine Regel-Maschine automatisch, wie kostbare CPU und kostbarer Speicher zugewiesen werden, um gleichbleibende Leistung zu garantieren. Auch hier geht es darum, Geräte, Strom, Platz, Überhitzung – und Ausgaben so gering wie möglich zu halten.

Wir bieten dieselbe Virtualisierung für die Welt der Speichergeräte; nämlich durch unser neues Dateisystem, ZFS, das „skalieren“ kann. Es macht die Verwaltung von Volumes überflüssig und beseitigt die Schwierigkeiten, die durch die Arbeit mit zahllosen Laufwerken entstehen, und zwar auch dann, wenn diese Laufwerke einmal ausfallen (letzten Endes gibt es doch nur zwei Arten von Laufwerken: solche, die schon mal ausgefallen sind, und solche, die demnächst ausfallen werden). Einige unserer Kunden setzen Tausende und Zehntausende von Laufwerken ein. Ihnen ermöglicht ZFS die Zusammenlegung mehrerer großer Pools, sodass preisgünstige Einzelteile zuverlässigen Service leisten und dabei Benutzerfreundlichkeit und Datenintegrität bieten.

Und so bleibt nur ein Bereich des Rechenzentrums vom Schwerpunkt der Parallelisierung und Virtualisierung unberührt. Für das Unternehmen, das verlauten ließ, das Netzwerk sei der Computer, ist dies ganz eindeutig eine Lücke. Und was ist mit dem Netzwerk selber?

Wie Sie vielleicht wissen, verfügen die meisten Netzwerkgeräte über nur einen Thread; sie parallelisieren Arbeitslasten über physische Ports. Sie möchten mehr Netzwerk haben? Kaufen Sie mehr Ports. Das führt zu allerlei Kabelsalat, Abfall, Verwaltungssorgen und sogar Gewichtsproblemen. (Kupfer ist ganz schön schwer, und Rechenzentren mit angehobenen Fußböden haben ihren Gewichtsspielraum langsam ausgereizt – im Ernst!) Dem Großteil der Netzwerkwelt ist es nicht gelungen, mit der brutalen Effizienz Parallelisierung der Computing-Welt Schritt zu halten.

Idealerweise sollten Computer, nicht Menschen, kostbare Netzwerkressourcen dynamisch zuweisen; so, wie es derzeit bei Serverressourcen der Fall ist: beispielsweise werden den wichtigsten Kunden hohe Bandbreite und garantierte Servicelevels zugeteilt, während weniger gute Kunden weniger von beidem bekommen. Derartige Entscheidungen sollten nicht von einem Mitarbeiter getroffen werden, sondern von einer regel-Maschine, die ohne physische Eingriffe auf Bedarf und Unternehmensregeln reagiert (sodass keine Kabel mehr umgesteckt werden müssen und weniger Ports benötigt werden). Das heißt, auch das Netzwerk sollte virtualisiert werden.

Darum haben wir kürzlich Project Neptune auf den Markt gebracht: ein Prozessorprojekt, das die Parallelisierungseigenschaften des Mikroprozessors (für Intel-, AMD- und SPARC-Systeme) mit denen des zugehörigen Betriebssystems (Solaris, Linux oder Windows) vereint und das Netzwerk selbst parallelisiert. Zusammen mit ein bisschen Software-Zauberei (besser bekannt unter dem Namen Crossbow-Projekt) wird es Unternehmen so ermöglicht, auf Kabel, Ports, Karten und hohe Ausgaben weitestgehend zu verzichten, indem sie die grundlegende Infrastruktur für Parallelisierung ausstatten (für Geeks: Mehrere TCP-Streams können verschiedenen Prozessor-Threads zugewiesen werden, sodass Arbeitslasten verteilt und CPUs/Ports freigemacht werden). Ebenso wie Server profitieren auch Ports von Automatisierung. Die Port-Vorgänge richten sich nach Regeln oder Richtlinien, die vom Benutzer/Administrator festgelegt worden sind. Wie ich schon sagte: Das Netzwerk ist der Computer, und der Computer ist virtualisiert – warum also nicht das Netzwerk?

Wer profitiert also von Project Neptune? Jeder, dessen Ausgaben (für Softwarelizenzen, Verwaltung, NIC-Karten, Kabel oder Hosting-Kosten) von der Anzahl der Ports im Rechenzentrum abhängen. Schließlich sieht die Zukunft des Network Computing mehr aus wie ein Überlandbus als wie ein Formel-1-Rennwagen. Das mag zwar nicht besonders schick sein, aber dafür sind Busse deutlich effizienter und deutlich besser für unseren Planeten. Weniger, dafür leistungsstarke, Ports sind, ebenso wie weniger, dafür leistungsstarke Server, eine gute Sache (zumindest für uns :-).

Wenn Sie kostenlos eine Neptune-Karte ausprobieren möchten, klicken Sie einfach hier. Und bevor Sie fragen: Ja, das ist ein Project Blackbox verkleidet als Bus. Und nein, das ist nicht das neue Standardformat.

Deutlich technischere Einzelheiten und Informationen (zu Project Neptune und Crossbow) finden Sie unter den folgenden Links:

Sunays Bericht zu Project Crossbow in Solaris 10.
Ein weiterer genialer Blog-Eintrag ist der von Ariel Hendel.
Und auch das hier ist interessante Lektüre.

Update:

Hier das Allerschönste: ein wirklich genialer Podcast von einigen der Engineers, die für die Innovationen von Solaris und Neptune verantwortlich zeichnen.

Und zu guter Letzt ...

Heute ist der 25. Geburtstag von Sun, und es wird etliche Feierlichkeiten geben (das ganze Jahr hindurch; Sie sollten also auf dem Laufenden bleiben). Obwohl ich erst seit 10 Jahren bei Sun bin, erfüllt mich die Geschichte des Unternehmens mit Hochachtung, und ich fühle mich noch immer als „der Neue“ (im oben erwähnten Podcast kommen vier Menschen zu Wort, die allesamt – und zwar selbst der Jüngste unter ihnen – schon länger bei Sun tätig sind als ich).

Ich finde, Suns Geschichte feiern wir am besten, indem wir die Zukunft feiern, die wir selber mitgestalten. Neptune ist ein gutes Beispiel. Das Netzwerk ist der Computer ... Genau.

Herzlichen Glückwunsch zum Geburtstag!

Share this post  del.icio.us | digg.com | slashdot.org | technorati.com | reddit | facebook | stumbleupon

No Comments

Senden Sie einen Kommentar:
Kommentare sind ausgeschaltet.