Der Begriff „Cloud-Scale“ wird oft leichtfertig verwendet. Es wird im Marketing häufig verwendet, um einen WIRKLICH GROSSEN Maßstab anzudeuten, im Gegensatz zu, wie ich vermute, dem traditionellen, nicht ganz so großen, aber dennoch signifikanten Maßstab.
Doch ebenso wie in Mythen und Legenden ein Körnchen Wahrheit verborgen liegt, ist auch in der Art und Weise, wie mit dem Begriff „Wolkenmaßstab“ um sich geworfen wird, ein Körnchen Wahrheit enthalten.
Die Wahrheit ist, dass die Cloud – und jetzt auch Container – die zugrunde liegende Basis der Skalierbarkeit verändert haben. Dieser Wandel wurzelt in den grundlegenden Unterschieden zwischen vertikalen und horizontalen Skalierungsstrategien. Im ersten Jahrzehnt dieses Jahrhunderts gingen wir fast ausschließlich davon aus, dass der vertikale Maßstab die beste Möglichkeit wäre, die benötigten Geschwindigkeiten und Vorschübe zu erreichen. Das bedeutete mehr Bandbreite, mehr Rechenleistung und mehr Speicher. Mehr Anschlüsse. Höhere Dichte. Schnellere Verarbeitung.
Doch mit dem Aufkommen des Cloud-Zeitalters verlagerte sich der Fokus auf die horizontale Skalierung. Wir benötigen noch immer mehr Bandbreite sowie Rechen- und Verarbeitungsleistung, aber wir haben gelernt, diesen Bedarf zu verteilen. Wir benötigen noch immer mehr Hardware, wir stellen sie jedoch aus mehreren Quellen zusammen und nicht zu einer einzigen monolithischen Einheit.
Wie Sie Ressourcen zusammenstellen, verändert das Spiel. Seien Sie sicher: Container haben das Spiel tatsächlich verändert.
Skalierung beruht heute auf der Steuerungsebene. Die Geschwindigkeit der API zum Starten und Abschalten von Ressourcen ist oft entscheidender als die Leistung des Lastausgleichsdienstes selbst. In einer Umgebung, in der Ressourcen binnen Minuten bereitgestellt und entfernt werden, entscheidet die schnelle Diensterkennung darüber, wie effektiv wir Anfragen an verfügbare Instanzen weiterleiten.
Mehr als die Hälfte (52 %) der Container haben laut dem Sysdig Container Usage Report 2019 eine Lebensdauer von weniger als fünf Minuten:
Fast die Hälfte (42 %) betreibt zwischen 201 und 500 Containerinstanzen. Um die Genauigkeit aufrechtzuerhalten, aktualisiert die Steuerebene die Komponenten häufig. Noch viel häufiger als die Cloud und sicherlich noch viel häufiger als dies bei monolithischen Anwendungen der Fall ist.
Wie schnell der Ingress-Controller (der Mechanismus zur Lastverteilung) aktualisiert wird, um die aktuell verfügbaren Ressourcen abzubilden, ist eine entscheidende Fähigkeit. Denn wenn er falsch liegt, kann Ihre Anfrage an eine Ressource weitergeleitet werden, die nicht mehr vorhanden ist oder einen ganz anderen Dienst bereitstellt. Das führt unweigerlich zu längeren Antwortzeiten, weil die Anfrage erst zur verfügbaren Ressource umgeleitet werden muss. Sie warten somit länger auf eine Antwort und entscheiden sich vielleicht sogar, die Anfrage abzubrechen.
All dies deutet darauf hin, dass die Geschwindigkeit der Steuerebene ein blockierender Faktor für die Skalierbarkeit von Anwendungen ist, die in einer Containerumgebung bereitgestellt werden.
Letztendlich bedeutet dies, dass der Maßstab der Steuerebene ein Problem darstellt. Das Design der API ist ein Problem. Die Mechanismen, mit denen Anfragen und Aktualisierungen der API authentifiziert und autorisiert werden, sind ein Problem.
Wenn es heutzutage um Skalierbarkeit geht, steht die Steuerebene im Mittelpunkt. Eine robuste, skalierbare Steuerebene ist kein nettes Extra. Es ist heute ein RFC-MUSS.