Kubernetes von Google als IT-Infrastruktur-Dirigent

Container vs. Virtualisierung

Wie es überhaupt zu dieser Entwicklung gekommen ist, beschreibt Sinha so: «Die Geschichte von Kubernetes geht zurück auf eine Situation bei Google vor etwa 12 Jahren, als wir mit einem System zu arbeiten begannen, das «Container» genannt wurde. Es ist wichtig zu verstehen, dass wir im Unterschied zu Virtualisierung, bei der der Mikroprozessor in mehrere Teile aufgebrochen wird, bei Containern so vorgehen, dass wir das Betriebssystem in viele kleine Teile aufbrechen. Wir schaffen so ein Multiplexing zwischen kleineren Prozessen, die das Betriebssystem anstösst. Das ist effizienter, als den Mikroprozessor aufzuteilen, weil man dort jeder virtuellen Maschine ein eigenes Betriebssystem mitgeben muss. Bei Containern braucht man nur ein Betriebssystem, und man braucht jeder Applikation nur eine dünne spezifische Schicht an Betriebssystemfunktionen mitzugeben. Jeder Container ist kompakter, startet schneller und ist leichter zu verschieben. Und man kann mehr von ihnen installieren, die dann zusammenarbeiten. All das erhöht die Effizienz und spart Zeit.»
Unterschiedliche Ansätze: Jede virtuelle Maschine braucht ein eigenes Gast-Betriebssystem. Bei Containern ist das nicht nötig. Das macht sie besonders effizient. © Forrester Research
Diese Entwicklung hatte auch für Google selbst Folgen: «Google als Search-Company kämpft seit Beginn an mit dem Problem, dass man nicht weiss, wann der Traffic plötzlich ansteigt oder gar explodiert. Und Google operiert auf dem ganzen Globus. Wir hätten einen oder mehrere Mainframes in­stallieren müssen, um im globalen Ausmass skalieren zu können – aber das war zu teuer. Wir haben deshalb auf kostengünstige Computer gesetzt, die aber nicht besonders zuverlässig sind – sie können jeden Moment ausfallen. Also haben wir intensiv an verteilten Systemen gearbeitet, um diese Nachteile zu kompensieren. Eigentlich war schon der Mainframe ein Distributed System, das man in alle Richtungen aufspalten kann und das Parallel Processing oder Virtualisierung kennt. Um mit vielen günstigen Computern an dieses Ideal heranzukommen, war sehr viel Entwicklungsarbeit erforderlich. Man musste gegen Ausfälle oder Latenzen ankämpfen und neue Methoden des Rebootings erfinden. In den Jahren 2004 und 2005 wurde die Basis für diese Entwicklungen gelegt.»
Google setzte auf Linux und war eines der Unternehmen, die dieses Betriebssystem in Container und einzelne Jobs aufteilten. Man hat das aber nie kommerzialisiert, sondern es Firmen wie Docker und anderen überlassen, daraus ein Geschäft zu machen. Sinha abschliessend: «Container und Kubernetes, eigentlich das Betriebssystem von Containern, sind wie der Mainframe. Sie sind nur nicht an einem Platz, sondern überall.»
Zum Verhältnis von proprietär und offen: Google hat nach der Übergabe seiner Kubernetes-Entwicklung an die CloudNativeCon-Community eine eigene Orchestrierungs-Software für Container in Betrieb genommen. Irgendwo ist eben Schluss mit «open».



Das könnte Sie auch interessieren