Post-Mortem zum partiellen Service-Ausfall am 19.07.2016
Gestern haben wir unsere Infrastruktur erweitert, indem wir unseren Load Balancer für unsere API durch einen neuen mit leistungsfähigerer Hardware ersetzt haben. Die Umstellung erfolgte auf den ersten Blick ohne Probleme. Der Traffic wurde innerhalb von ein paar Minuten von dem alten auf den neuen Load Balancer umverteilt. Vereinfacht gesagt ist der Load Balancer die erste Anlaufstelle, bei der alle Anfragen Ihrer Boxcryptor-Software ankommen. Die Anfragen werden vor-verarbeitet und an ein Cluster von Anwendungsservern weitergeleitet, die dann die eigentliche Arbeit übernehmen.
Aufgrund einer Fehlkonfiguration des Logging-Subsystems des neuen Load Balancers wurden Logdateien, die während des Normalbetriebs erstellt wurden, nicht automatisch überschrieben. Dadurch wurde die Festplatte immer voller. Ab einem bestimmten Punkt war nicht ein einziges Byte auf dem Laufwerk mehr frei, wodurch der Load Balancer keine Anfragen mehr verarbeiten konnte. Unser externes Monitoring-Tool hat am Montag um 23.11 Uhr einen ersten partiellen Ausfall erkannt. Dieser hielt bis heute Morgen, 6.52 Uhr an. In diesem Zeitraum war unser Service teilweise nicht verfügbar und stark beeinträchtigt. Wir stellen hier eine externe Statusseite für unseren Service zur Verfügung.
Bei Boxcryptor hat rund um die Uhr ein Entwickler Bereitschaftsdienst, um auf solche Serviceausfälle so schnell wie möglich reagieren zu können. Allerdings hat das Monitoring zwar den partiellen Serviceausfall erkannt, ihn jedoch nicht bei dem zuständigen Entwickler gemeldet. Als die Ausfälle begannen, war der zuständige Entwickler bereits im Bett und wurde nicht via Pager informiert. Heute Morgen wurde das Problem sofort identifiziert und behoben.
Wir haben Boxcryptor so konfiguriert, dass unsere Clients größtenteils keine Verbindung zum Server benötigen. Nur für folgende Funktionen ist die Serververbindung erforderlich: einen neuen Account zu erstellen, sich in einen bereits existierenden Account einzuloggen und Zugriffsrechte und Gruppen zu verwalten. Wenn ein Nutzer bereits eingeloggt ist, ist er nicht von der Verfügbarkeit unseres Dienstes abhängig. Deshalb war die Mehrheit unserer Nutzer nicht von der Serviceunterbrechung betroffen und hat diese vielleicht nicht einmal bemerkt.
Trotzdem möchte ich mich bei allen Nutzer entschuldigen, die von dem Ausfall betroffen waren und sich zum Beispiel nicht mehr bei Boxcryptor einloggen konnten. Wir untersuchen im Moment bereits, warum die Notfallbenachrichtigung über den Pager nicht so funktioniert hat wie sie sollte und werden daran und an unserem Logging-System entsprechende Änderungen vornehmen, um in Zukunft solche Fehler auszuschließen.
Freundliche Grüße
Robert Freudenreich
Mitgründer & CTO
PS: Alle Nutzer haben die Option die Schlüssel zu exportieren, die auf unseren Servern gespeichert sind, um eine lokale Backupdatei zu erstellen. Falls unsere Dienste für längere Zeit unterbrochen sein sollten, oder selbst wenn wir die Dienste einstellen würden, könnten Sie Boxcryptor weiterhin nutzen um an Ihre Dateien heranzukommen und diese zu entschlüsseln – ganz unabhängig von uns.