Vorfall Post Mortem: 23. November 2021 PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Vorfall Post Mortem: 23. November 2021

Zusammenfassung

Zwischen 4:00 Uhr und etwa 5:36 Uhr PT am Dienstag, dem 23. November, kam es bei den meisten Coinbase-Produktionssystemen zu einem Ausfall. Während dieses Ausfalls konnten Benutzer über unsere Websites und Apps nicht auf Coinbase zugreifen und unsere Produkte daher nicht verwenden. Dieser Beitrag soll beschreiben, was passiert ist und die Ursachen, und diskutieren, wie wir solche Probleme in Zukunft vermeiden wollen.

The Incident

Am 23. November 2021 um 4:00 Uhr PT (24. November 2021 00:00 UTC) ist ein SSL-Zertifikat für einen internen Hostnamen in einem unserer Amazon Web Services (AWS)-Konten abgelaufen. Das abgelaufene SSL-Zertifikat wurde von vielen unserer internen Load-Balancer verwendet, was dazu führte, dass ein Großteil der Kommunikation zwischen Diensten fehlschlug. Aufgrund der Tatsache, dass unsere API-Routing-Schicht über Subdomains dieses internen Hostnamens eine Verbindung zu Backend-Diensten herstellt, haben etwa 90 % des eingehenden API-Datenverkehrs Fehler zurückgegeben.

Die Fehlerraten normalisierten sich wieder, nachdem wir alle Load Balancer auf ein gültiges Zertifikat migrieren konnten.

Vorfall Post Mortem: 23. November 2021 PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
Diagramm mit einer Gesamtfehlerrate von 90 % auf unserer API-Routing-Ebene für die Dauer des Vorfalls.

Kontext: Zertifikate bei Coinbase

Es ist hilfreich, einige Hintergrundinformationen darüber bereitzustellen, wie wir SSL-Zertifikate bei Coinbase verwalten. Zertifikate für öffentliche Hostnamen wie coinbase.com werden größtenteils von Cloudflare verwaltet und bereitgestellt. Für Zertifikate für interne Hostnamen, die zum Weiterleiten von Datenverkehr zwischen Backend-Diensten verwendet werden, haben wir in der Vergangenheit AWS IAM-Serverzertifikate genutzt.

Einer der Nachteile von IAM-Serverzertifikaten besteht darin, dass Zertifikate außerhalb von AWS generiert und über einen API-Aufruf hochgeladen werden müssen. Daher ist unser Infrastrukturteam letztes Jahr von IAM Server Certificates zu AWS Certificate Manager (ACM) migriert. ACM löst das Sicherheitsproblem, da AWS sowohl die öffentlichen als auch die privaten Komponenten des Zertifikats innerhalb von ACM generiert und die verschlüsselte Version für uns in IAM speichert. Nur verbundene Dienste wie Cloudfront und Elastic Load Balancer erhalten Zugriff auf die Zertifikate. Leugnen der acm:ExportZertifikat Berechtigung für alle AWS IAM-Rollen stellt sicher, dass sie nicht exportiert werden können.

Zusätzlich zu den zusätzlichen Sicherheitsvorteilen erneuert ACM Zertifikate vor Ablauf automatisch. Angesichts der Tatsache, dass ACM-Zertifikate erneuert werden sollen und wir eine Migration durchgeführt haben, wie ist das passiert?

Ursachenanalyse

Vorfallsbeteiligte stellten schnell fest, dass es sich bei dem abgelaufenen Zertifikat um ein IAM-Serverzertifikat handelte. Dies war unerwartet, da die oben erwähnte ACM-Migration zu dieser Zeit in den technischen Kommunikationskanälen weit verbreitet war; Daher gingen wir davon aus, dass wir ausschließlich mit ACM-Zertifikaten arbeiteten.

Wie wir später herausfanden, verlief eine der Zertifikatsmigrationen nicht wie geplant; Die Gruppe von Ingenieuren, die an der Migration arbeiten, hat ein neues IAM-Zertifikat hochgeladen und den Rest der Migration verschoben. Leider wurde die Verzögerung nicht so weit kommuniziert, wie es hätte sein sollen, und Änderungen der Teamstruktur und des Personals führten dazu, dass das Projekt fälschlicherweise als abgeschlossen angesehen wurde.

Abgesehen vom Migrationsstatus können Sie dieselbe Frage stellen, die wir uns selbst gestellt haben: „Warum wurden wir nicht auf dieses ablaufende Zertifikat aufmerksam gemacht?“ Die Antwort lautet: Wir waren es. Benachrichtigungen wurden an eine E-Mail-Verteilergruppe gesendet, von der wir entdeckten, dass sie nur aus zwei Personen bestand. Diese Gruppe war ursprünglich größer, schrumpfte jedoch mit dem Ausscheiden von Teammitgliedern und wurde nie ausreichend neu besetzt, als neue Leute dem Team beitraten.

Kurz gesagt, das kritische Zertifikat konnte aufgrund von drei Faktoren ablaufen:

  1. Die Migration von IAM zu ACM war unvollständig.
  2. Ablaufwarnungen wurden nur per E-Mail gesendet und gefiltert oder ignoriert.
  3. Nur zwei Personen standen auf der E-Mail-Verteilerliste.

Auflösung & Verbesserungen

Um den Vorfall zu beheben, haben wir alle Load Balancer, die das abgelaufene IAM-Zertifikat verwendet haben, auf das vorhandene ACM-Zertifikat mit automatischer Verlängerung migriert, das im Rahmen des ursprünglichen Migrationsplans bereitgestellt wurde. Dies dauerte aufgrund der Anzahl der beteiligten Load Balancer und unserer Vorsicht beim Definieren, Testen und Anwenden der erforderlichen Infrastrukturänderungen länger als gewünscht.

Um sicherzustellen, dass wir nicht noch einmal auf ein solches Problem stoßen, haben wir die folgenden Schritte unternommen, um die im obigen RCA-Abschnitt erwähnten Faktoren zu beheben:

  1. Wir haben die Migration zu ACM abgeschlossen, verwenden keine IAM-Serverzertifikate mehr und löschen alle Legacy-Zertifikate, um Störungen zu reduzieren.
  2. Wir fügen eine automatisierte Überwachung hinzu, die mit unserem Warn- und Paging-System verbunden ist, um die E-Mail-Warnungen zu erweitern. Diese werden bei bevorstehendem Ablauf angezeigt sowie wenn ACM-Zertifikate die Berechtigung zur automatischen Verlängerung verlieren.
  3. Wir haben der E-Mail-Verteilerliste einen permanenten Gruppenalias hinzugefügt. Darüber hinaus wird diese Gruppe automatisch aktualisiert, wenn Mitarbeiter in das Unternehmen eintreten oder es verlassen.
  4. Wir bauen ein Repository mit Vorgängen zur Behebung von Vorfällen auf, um die Zeit zum Definieren, Testen und Anwenden neuer Änderungen zu verkürzen.

Wir nehmen die Verfügbarkeit und Leistung unserer Infrastruktur sehr ernst und arbeiten hart daran, die Millionen von Kunden zu unterstützen, die sich für Coinbase zur Verwaltung ihrer Kryptowährung entscheiden. Wenn Sie daran interessiert sind, Herausforderungen wie die hier aufgeführten zu lösen, Komm arbeite mit uns.

Vorfall Post Mortem: 23. November 2021 PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.


Vorfall Post Mortem: 23. November 2021 Wurde ursprünglich veröffentlicht in Der Coinbase Blog Auf Medium, wo die Leute das Gespräch fortsetzen, indem sie auf diese Geschichte hinweisen und darauf reagieren.

Source: https://blog.coinbase.com/incident-post-mortem-november-23-2021-d507821b8459?source=rss—-c114225aeaf7—4

Zeitstempel:

Mehr von Coinbase