ThousandEyes hat die dritte Ausgabe des Berichts zur Cloud-Performance veröffentlicht, in dem wir die Performancedaten und Verbindungsarchitekturen der drei führenden Public-Cloud-Provider untersuchen und vergleichen: Amazon Web Services (AWS), Microsoft Azure und Google Cloud. Der Bericht zur Cloud-Performance bietet einen messungsbasierten Vergleich und eine Analyse auf Grundlage von Netzwerkmessgrößen und Zuordnungen, die über einen Zeitraum von drei Jahren gesammelt wurden, sowie einen unabhängigen Einblick in die Performance und das Verhalten der wichtigsten Public-Cloud-Provider.
Die Cloud-Nutzung hat sich seit der Veröffentlichung der letzten Ausgabe dieses Berichts im Jahr 2019 weiter exponentiell beschleunigt. Cloud-basierte Workloads unterstützen heute eine enorme Bandbreite an digitalen Services, und eventuelle Performanceeinbußen können sich auf mehr Services und Service-Abhängigkeiten auswirken als je zuvor. Transparenz ist die wesentliche Voraussetzung dafür, dass IT-Operations-Teams (ITOps) die Details genau verstehen, warum sich bestimme Services in einer Welt zunehmend verteilter, API-zentrierter und Cloud-abhängiger Applikationen verschlechtern. Die Daten im Bericht zur Cloud-Performance sollen Unternehmen dabei helfen, einen Überblick über ihre eigenen Cloud-Implementierungen und -Abhängigkeiten zu erhalten, und dienen nicht dazu, einen Provider gegenüber einem anderen zu empfehlen.
Um es ganz einfach auszudrücken: IT-Teams können bessere Cloud-Entscheidungen treffen, wenn sie die Besonderheiten des Netzwerkverhaltens von Cloud-Providern sowie die Anomalien verstehen.
Der Cloud Performance Report beleuchtet, wie Provider ihre Netzwerke verwalten und wie eine gute (bzw. auch eine nicht so gute) Netzwerkperformance aussieht, und hilft dabei, kritische strategische und taktische Fragen zu beantworten, darunter:
- Anhand welcher Punkte kann ich erkennen, welche Performance und Qualität ich mit meinen Cloud-Services erhalte?
- Wie kann ich die Bereitstellung stabiler Cloud-basierter Applikations-Stacks sicher planen?
- Wie kann ich meine Applikationen angesichts der spezifischen Konnektivität und des Verhaltens meines Providers am besten optimieren?
- Welche Fragen sollte ich meinem Cloud-Provider stellen, damit ich eine gute Performance sicherstellen und gemäß meinen Anforderungen wachsen kann?
Der Stand der heutigen Cloud-Landschaft
Cloud-Services sind für Unternehmen heute allgegenwärtig, und Public-Cloud-Netzwerke sind ein wichtiger Bestandteil der täglichen Infrastruktur. Die weit verbreitete Nutzung von SaaS in Unternehmen führt zu zusätzlicher Komplexität für ITOps-Teams, die Probleme beheben müssen. Dieses komplexe Geflecht von Abhängigkeiten kann es IT-Teams erschweren, zuverlässige Bewertungs-, Monitoring- und Optimierungsstrategien zu entwickeln, die auf ihre eigenen Applikationen zugeschnitten sind. Ein weiterer Faktor ist die starke Zentralisierung bei der Nutzung von Cloud-Services. Wenn es zu einem Ausfall der Cloud kommt, kann dies weitreichende Auswirkungen haben und viele Menschen betreffen. Und dennoch kann es für ITOps oder SRE-Teams (Site Reliability Engineers) unglaublich schwierig sein, die Ursache effizient zu ermitteln. Erschwerend kommt hinzu, dass Unternehmen häufig mehrere Public Clouds oder eine Mischung aus Public und Private Clouds nutzen.
IT-Architektinnen und -Architekten müssen wissen, was sie von ihrem Cloud-Provider erwarten können. Zwar ist kein Provider vor Anomalien gefeit, aber die Frage bleibt: Wo gibt es diese Performanceanomalien und warum? Der typische Einsatz modularer und verteilter Cloud-basierter digitaler Services erfordert heute Kenntnisse über das Verhalten und die Konnektivität aus vielen verschiedenen Blickwinkeln. Es müssen zwangsläufig Antworten auf Fragen wie diese gefunden werden:
- Wie sieht die Netzwerkkonnektivität des Cloud-Providers aus, und wie funktioniert sie in meinem Szenario?
- Wie gut ist mein Provider mit anderen Cloud- und Transit-Providern abgestimmt?
- Und wie gut ist die Performance meines Providers zwischen seinen Cloud-Regionen und zwischen seinen Verfügbarkeitszonen?
Erkenntnisse des Berichts
Hier präsentieren wir einige unserer Top-Erkenntnisse. Vollständige Details finden Sie im Bericht zur Cloud-Performance.
Ergebnis 1: Die von den Cloud-Providern getroffenen Entscheidungen zur Verbindungsarchitektur können sich auf die Performance und den Betrieb der Kunden auswirken. Die Verbindungsarchitekturen der drei großen Cloud-Provider sind unterschiedlich. Dazu gehören Unterschiede in der Art und Weise, wie sie Service-Endpunkte ankündigen, wie sie Underlay-Pfade verschleiern und wie sie gemeinsam genutzte Infrastruktur für ihren Backbone nutzen. Diese Unterschiede können erhebliche Auswirkungen für die Kunden haben.
Erkenntnis 2: Cloud-Regionen in entwickelten Märkten haben eine gute Backbone-Performance, während es in anderen Regionen der Welt, z. B. in Asien, mehr Probleme gab. Alle drei Provider haben ihre Backbone-Performance seit 2019 deutlich optimiert, obwohl wir weiterhin erhebliche Latenzschwankungen feststellen.
Ergebnis 3: Alle Cloud-Provider haben Probleme mit der Performance bei Traffic, der von Usern aus dem chinesischen Festland stammt. Dies ist auf die Performanceeinbußen beim Durchqueren der chinesischen Firewall zurückzuführen, die zu Paketverlusten und höheren Latenzzeiten führen. Hongkong scheint immer noch außerhalb der chinesischen Firewall zu liegen, obwohl der Paketverlust nach Hongkong seit 2021 deutlich zugenommen hat.
Ergebnis 4: Die Performance zwischen Verfügbarkeitszonen war bei allen drei Providern sehr gut, wobei die Latenz in den meisten Regionen deutlich unter dem gewünschten Schwellenwert von 2 Millisekunden lag. Einige Provider lagen jedoch konsequenter unter diesem Schwellenwert als andere.
Ergebnis 5: Der Traffic zwischen den großen Cloud-Providern wurde in der Regel direkt weitergeleitet, unter Umgehung des Internets. Dieses Ergebnis zeigt, wie gut die großen Cloud-Provider miteinander verbunden sind und dass in einigen Fällen die Performance zwischen den Clouds mit der Performance innerhalb der Clouds in ähnlich gelegenen Regionen konkurriert.
Lesen Sie den Bericht zur Cloud-Performance, um mehr zu erfahren.
Architekturentwicklung zur Steigerung der Cloud-Performance
Die Performance der Cloud ist wichtig, weil die heutigen Applikationsdesigns so abhängig davon geworden sind – bedingt durch modulare Applikations-Stacks sind niedrige Latenzzeiten ein Muss. Die Cloud steht im Mittelpunkt des Geflechts aus den Wechselwirkungen verteilter Applikationen, Microservices und SaaS-APIs, die digitale Services vorantreiben. Darüber hinaus möchten die Architekturteams Services so gestalten, dass sie hochverfügbar, resilient und kosteneffizient sind. Hochverfügbarkeitsziele sind die Grundlage für Applikations-Stacks mit mehreren Instanzen und Load-Balancing, für georedundante Datenreplikationen und für regionsübergreifende Architekturen.
Die Performance der Cloud-Netzwerke wird daher nicht anhand einer einzigen Kennzahl gemessen, sondern durch die Betrachtung verschiedener Datenpunkte, die aus unterschiedlichen Perspektiven gesammelt werden. Die Konnektivität zwischen Regionen kann zum Beispiel je nach Netzwerkmetrik, Provider und Region stark variieren. Die Kenntnis über die Performance der relevanten Verbindungen ist bei der Planung neuer Applikationsimplementierungen von größter Bedeutung.
Der im Bericht zur Cloud-Performance verwendete Datensatz umfasst Messgrößen zu Verlust, Latenz, Jitter, MTU sowie Vorwärts- und Rückwärtspfad-Topologiedaten für Messungen bei End Usern, zwischen Regionen, zwischen Verfügbarkeitszonen sowie in Multiclouds. Diese vier Messkategorien umfassen die verschiedenen Use Cases, die Betreiber und User Cloud-basierter Applikationen betreffen.
Messungen bei End Usern
Das öffentliche Internet kann eine große Rolle bei der Performance von Cloud-basierten Applikationen spielen. Die Messungen bei den End Usern sollen den Kunden von Cloud-IaaS- und Plattformservices einen Einblick geben, wie die verschiedenen Standorte von Cloud-Providern mit dem Internet im weiteren Sinne verbunden sind und wie die End-to-End-Pfade für verschiedene Standorte funktionieren.
Architekturteams, die neue Services bereitstellen, werden Fragen haben, die durch diese Transparenz beantwortet werden können, z. B.: Wie lange bleibt der Traffic im öffentlichen Internet, bevor er in das Netzwerk des Cloud-Providers gelangt, und wirken sich längere Internetpfade auf die Gesamtperformance aus? Cloud-Provider verbessern ständig ihre Backbones und ihr Peering, aber es gibt regionale Unterschiede in der Performance zwischen den großen Cloud-Providern. Die Kenntnis dieser Details kann Ihnen bei der Planung und Bereitstellung von Applikationen helfen.
Messungen in mehreren Zonen
Es wurden Messungen zwischen den Verfügbarkeitszonen (AZ, Availability Zones) bei allen drei analysierten Cloud-Providern durchgeführt. Eine Cloud-Applikationsarchitektur mit mehreren Zonen wird in der Regel aus Gründen der Widerstandsfähigkeit eingesetzt. Applikationsarchitektinnen und -architekten stellen ihre Applikations-Stacks in der Regel in hochredundanten Designs mit Load-Balancing bereit, die auf verschiedene physische AZs verteilt sind. Wenn eine AZ ausfällt, kann die Applikation verfügbar bleiben. Ein typisches Aktiv-Aktiv-Applikationsdesign kann beispielsweise mehrere Instanzen desselben Applikations-Stacks umfassen, die auf verschiedene AZs verteilt sind, wobei die Datensynchronisierung zwischen den Instanzen in Echtzeit erfolgt. In diesem Szenario zählt jede Millisekunde, da sich die Latenzzeiten im Laufe einer Applikationssitzung aufaddieren können.
Die Provider bemühen sich in der Regel um Antwortzeiten von weniger als 2 Millisekunden zwischen den Zonen, aber es kann zu Schwankungen kommen. Mithilfe von ThousandEyes Daten wurden die Anzahl und Art solcher Schwankungen oder Anomalien bei jedem analysierten Cloud-Provider ermittelt. Nicht nur bei den Latenzzeiten selbst wurden Schwankungen festgestellt, sondern auch bei Merkmalen wie Häufigkeit und Dauer.
Messungen über mehrere Regionen hinweg
Regionsübergreifende Applikationsarchitekturen werden in erster Linie zur Senkung der Latenzzeit eingesetzt. Mit anderen Worten: Die Bereitstellung von Applikationen und Inhalten näher am User verbessert die User Experience mit dieser Applikation. Wenn Backend-Services näher an den Frontend-Services angesiedelt sind und die Daten zwischen den Regionen synchronisiert werden, kann die Latenzzeit der Applikation verringert werden.
Unternehmen können neben den technischen Use Cases auch andere triftige geschäftspolitische Gründe für den Einsatz von Konnektivität zwischen mehreren Regionen haben. So kann es beispielsweise erforderlich sein, geografisch redundante Applikations-Pods im aktiven Standby-Modus einzusetzen oder Kundendaten in einer geografischen Region zu speichern, in einer anderen jedoch nicht.
Die Backbone-Performance der Cloud-Provider ist in diesen Szenarien absolut entscheidend. Unsere Analyse ergab, dass Cloud-Regionen in reiferen Märkten eine zuverlässige Backbone-Performance aufweisen, während andere Regionen (vor allem in Asien und Ozeanien) weniger zuverlässig sind. Die Analyse dieses Datensatzes ergab, dass die Cloud-Provider im Laufe des Dreijahreszeitraums einige Optimierungen in verschiedenen Regionen vorgenommen haben und dass es häufig zu Latenzschwankungen kommt.
Multicloud-Messungen
Moderne Applikationen stützen sich heute oft auf mehrere Public oder Private Clouds, entweder im Design eingeplant oder aufgrund von Abhängigkeiten von Drittanbietern, die sich in verschiedenen Cloud-Provider-Netzwerken befinden. Applikationen, die modulare Frameworks verwenden, sind API-zentriert, sodass die Kommunikation von API zu API ein typischer Vorgang in einem Applikations-Flow ist. Wenn eine API eines Cloud-Providers mit der eines anderen kommuniziert, ist es wichtig zu wissen, wie diese Netzwerkkonnektivität aussieht und wie gut sie funktioniert.
Bei der Planung von Bereitstellungen mit Cloud-Services müssen Teams möglicherweise wissen, ob eine Paarung von Cloud-Providern für ihre spezifischen Standorte eine bessere Interkonnektivität als eine andere hat oder ob die Latenzzeiten zwischen verschiedenen Providern ihren Anforderungen entsprechen. Unsere Daten zeigen, dass der Traffic von einem Cloud-Provider zum anderen in der Regel direkt weitergeleitet wird, ohne das öffentliche Internet zu durchqueren. Dies zeigt, wie gut die großen Cloud-Provider miteinander verbunden sind. Diese Interkonnektivität kann Performancevorteile für den Multicloud-Traffic bieten.
Wichtigste Erkenntnisse
Unsere Analyse der gesammelten Cloud-Daten hat drei wichtige Erkenntnisse zutage gefördert, die Expertinnen und Experten aus den Bereichen Infrastruktur und Operations (I&O) bei der Planung und Verwaltung von Cloud-Implementierungen und -Abhängigkeiten beachten sollten.
Performanceprobleme bei Cloud-Services sind keine Seltenheit. Cloud-Provider arbeiten ständig daran, ihre Präsenz zu erweitern und ihre globalen Kapazitäten auszubauen. Routinemäßige Wartungsarbeiten fallen stetig an, und kein Provider ist vor Problemen gefeit. Während große Ausfälle für Schlagzeilen sorgen, können die häufiger auftretenden kleineren Performance- und Verfügbarkeitsprobleme schwer zu identifizieren sein – was wiederum erhebliche Auswirkungen auf die User Experience hat. Auf Probleme jeder Größenordnung vorbereitet zu sein, sollte Teil der Cloud-Management-Strategie eines jeden Teams sein.
Cloud-Provider verwalten ihre Netzwerke auf Grundlage ihrer eigenen Prioritäten und Präferenzen. Die Art und Weise, wie ein Cloud-Provider sein Netzwerk entwirft und skaliert, entspricht möglicherweise nicht dem Use Case der einzelnen Kunden. Die Provider unterscheiden sich darin, wie sie den Traffic in den oft gemeinsam genutzten Netzwerken optimieren und priorisieren. IT-Führungskräfte müssen wissen, wo sie in Bezug auf diese Präferenzen und Priorisierungen stehen und ob sie davon betroffen sein könnten.
Es gibt in der Cloud keinen stabilen Zustand. Cloud-Netzwerke befinden sich in ständiger Bewegung, da die Provider ihre Infrastruktur stetig skalieren und erweitern sowie neue Standorte, Services und Verbindungen hinzufügen. Die Performance einer bestimmten Region und eines bestimmten Providers kann sich von Jahr zu Jahr erheblich unterscheiden. Das Wissen, dass diese Netzwerke dynamisch sind und sich ständig verändern, hilft bei der Festlegung der Betriebsstrategie. Ebenso spiegeln Performance-Snapshots möglicherweise nicht die aktuellen Bedingungen wider, sodass dauerhafte und fortlaufende Transparenz entscheidend ist.