Compute Engine: Google erklärt weltweiten Ausfall

Logo Compute Engine (Bild: Google)

Am Montag haben zwei Fehler in der Netzwerk-Management-Software von Google Compute Engine (GCE) für einen weltweiten Ausfall gesorgt. Er betraf alle Regionen von Googles Infrastructure-as-a-Service-Angebot mit seinen virtuellen Servern für Unternehmen und App-Entwickler. Benjamin Treynor Sloss von Google lieferte zwischenzeitlich eine ausführliche Erklärung.

Eigentlich rechnen zahlende Kunden von Compute Engine damit, dass Googles Rechenzentren in verschiedenen Regionen für eine gewisse Ausfallsicherheit sorgen. Am Montag ist diese Rechnung aber nicht aufgegangen, denn zwei Fehler in der Netzwerk-Management-Software von Google Compute Engine (GCE) haben für einen weltweiten Ausfall gesorgt. Er dauerte zwar nur 18 Minuten, betraf aber alle weltweiten Regionen von Googles Infrastructure-as-a-Service-Angebot mit seinen virtuellen Servern für Unternehmen und App-Entwickler. Benjamin Treynor Sloss, bei Google als Vice President 24×7 für Uptime-Sicherheit zuständig, liefert eine besonders ausführliche Erklärung für die kaskadierenden Probleme.

“Wir nehmen alle Ausfälle ernst”, schrieb er. “Aber wir sind besonders besorgt bei Ausfällen, die mehrere Regionen gleichzeitig betreffen, weil es schwierig für unsere Kunden ist, die Folgen solcher Ausfälle abzuschwächen. Dieser Störungsbericht ist sowohl länger als auch detaillierter als üblich, weil wir das Geschehen am 11. April für so bedeutsam einschätzen. Wir wollen, dass Sie verstehen, warum es passiert ist, und was wir nun zu tun gedenken.”

Es handelte sich im Wesentlichen um ein Routing-Problem, das alle GCE-Instanzen in allen Regionen außer Gefecht setzte, außerdem abhängige VPNs und L3-Network-Load-Balancer. Eigentlich betraf der Ausfall nicht die Google Cloud Platform (GCP) selbst, traf jedoch die GCP-Anwendungen. Betroffenen Kunden sicherte Google entsprechende Service-Guthaben zu.

Letztlich lösten zwei Bugs in der Netzwerk-Management-Software eine Kette von Problemen aus, wie es Sloss beschreibt. Ein paar Stunden vor dem Ausfall hatten Googles Entwickler einen unbenutzten GCE-IP-Block aus der Netzwerkkonfiguration genommen, was für sich genommen eine harmlose Änderung gewesen wäre. Die IP-Blöcke erlauben Systemen außerhalb von Googles Netzwerk, GCP-Services zu finden.

Die Entwickler versuchten die neue Konfiguration durchzusetzen, während ihre Software diese jedoch als problematisch aufgrund einer unklaren Timing-Vorgabe für die IP-Block-Entfernung erkannte. Aufgrund des Bugs in der Verwaltungssoftware kehrte diese jedoch nicht zu einer bekannten und sicheren Konfiguration zurück, sondern entfernte alle GCE-IP-Blöcke aus der Konfiguration. Aufgrund eines weiteren Bugs kam nun eine zweite Sicherung nicht zum Zug, die eine neue Konfiguration auf eine Site beschränken sollte, bis sie sich als sicher genug für einen breiteren Rollout bewiesen hatte.

Die Folge war, dass der Traffic aus dem Internet zu GCE rapide einbrach – bis zu einem Verlust von über 95 Prozent. Google gab eine Warnung über “ernsthafte Probleme mit der Netzwerkkonnektivität in allen Regionen” heraus. Google “Uptime-Zar” Sloss sagte den Kunden zu, dass die Entwickler in den nächsten Wochen an weiteren Systemen für Prävention, Erkennung und Risikobegrenzung arbeiten werden, um ähnliche Ausfälle zu vermeiden.

[mit Material von Bernd Kling, ZDNet.de]