Der Blog

Ausfall-Post-Mortem – 14. April 2014

von Tony Albanese 28. April 2014 | 2 Minuten Lesezeit

Am 14. April kam es bei PagerDuty zu einem Ausfall, der sowohl die mobilen als auch die Web-Anwendungen betraf. Während des Ausfalls hatten Kunden möglicherweise Probleme bei der Verwaltung ihrer Konten, und einige Benachrichtigungen wurden verzögert. Bei solchen Vorfällen gewährleisten wir Transparenz gegenüber unseren möglicherweise betroffenen Kunden. Wir entschuldigen uns für etwaige Serviceausfälle und setzen uns dafür ein, dass sich solche Probleme in Zukunft nicht wiederholen.

Was ist passiert?

Eine erhöhte Auslastung unseres Ereignisverarbeitungssystems führte zu Leistungseinbußen in der Arbeitswarteschlange. Obwohl diese Auslastung etwas ungewöhnlich ist, kommt sie nicht unerwartet und sollte lediglich zu einer Verzögerung der Verarbeitung führen. Die Leistungseinbuße führte jedoch zu Timeouts in einem vorgelagerten System mit einer Wiederholungsregel bei Fehler. Die Wiederholungsversuche belasteten unsere Systeme erheblich und führten für etwa 30 Minuten zu Verfügbarkeitsproblemen. Obwohl keine Ereignisse verloren gingen und alle Warnmeldungen gesendet wurden, verzögerten sich 39 % der Ereignisse während des Ausfalls über unsere 5-Minuten-SLA hinaus.

Wie haben wir reagiert?

Kurz nach dem Auftreten der Verfügbarkeitsprobleme begannen unsere Betriebs- und Entwicklungsteams mit der Behebung des Problems. Kurz darauf wurden Maßnahmen ergriffen, um die Systembelastung zu reduzieren. Durch die Wiederholungsversuche entstandene doppelte Ereignisse in der Warteschlange wurden entfernt, sodass unsere Systeme wieder in den Normalbetrieb zurückkehrten.

Was tun wir dagegen?

Kurzfristig haben wir die Wiederholungsrichtlinie im Upstream-System sofort angepasst, um sicherzustellen, dass eine erwartete Verlangsamung nicht zu einer Reihe unerwünschter Wiederholungsversuche führt. Langfristig haben wir zwei Initiativen ins Leben gerufen, um ein erneutes Auftreten zu verhindern. Die erste ist die Neuausrichtung der Timeout- und Wiederholungsrichtlinien auf breiter Front sowie damit verbundene Ergänzungen wie die idempotente Anforderungsverarbeitung (falls zutreffend). Die zweite ist die Trennung der Ereignisverarbeitung von unseren kundenorientierten Anwendungen, um eine stärkere Isolierung zu gewährleisten und so Zuverlässigkeit und Leistung besser zu verwalten.

Wir entschuldigen uns, falls dieser Ausfall die Möglichkeit Ihres Teams, Benachrichtigungen rechtzeitig zu erhalten, beeinträchtigt hat. Bei Fragen oder Anliegen erreichen Sie uns wie immer unter support@pagerduty.com .