Ausfall eines Storage-Servers (FS1002)
Incident Report for rackSPEED GmbH
Postmortem

Was ist geschehen?

Am Morgen des 20.12.2021 kam es zu Unregelmäßigkeiten beim SSD-Cache des Storage-Servers FS1002. Unser Monitoring-System alarmierte unverzüglich unsere Bereitschaft über diesen Vorfall.

Ein SSD-Cache besteht aus 2 NVMe SSDs, welche im RAID-1 Verbund arbeiten und bei Ausfall einer SSD dafür sorgen, dass die Daten erhalten bleiben. Weiterhin ermöglicht diese Konstellation das weitere Arbeiten ohne Einschränkung bis zum Austausch der defekten SSD ohne Performanceeinbußen. Aufgabe eines SSD-Cache ist das Zwischenspeichern von Daten, welche angefragt werden, auf den ultra-schnellen SSDs zwischen zu speichern. Dies gilt für Daten, welche beim Lese- als auch beim Schreibzugriff angefragt werden. Ist das System weniger stark ausgelastet werden die Daten aus dem Cache auf die Festplatten geschrieben, welche ebenfalls in einem RAID-Verbund arbeiten. Ziel eines SSD-Cache ist möglichst viel Speicherplatz kostengünstig anbieten zu können und die Ladezeiten für das Abrufen von Daten so gering wie möglich zu halten. Dies funktioniert sehr gut, da die meisten Daten auf einem Server selten angefragt werden und daher ohne Probleme von den (langsameren) Festplatten gelesen werden können.

Nachdem unser bereitschaftshabender Techniker einen Blick in die Meldung unseres Monitoring-Systems geworfen hatte stand fest, dass bei einer der SSDs des Storage-Servers FS1002 Probleme entstanden sind. Die SSD wies defekte Sektoren auf und machte den Anschein bald auszufallen. Daher entschloss sich der Techniker dazu, die SSD auszuwechseln. Wie bereits hunderte Male zuvor, hat der bereitschaftshabende Techniker die problematische SSD mit einer baugleichen SSD ausgetauscht.

Kurz nach Austausch der defekten SSD wurden von unserem Monitoring-System bei zahlreichen VMs Störungen gemeldet. Nach einer weiteren Problemuntersuchung stand fest, dass all diese VMs den Server FS1002 als Storage-Server aufwiesen.

Bereits bei Überprüfung der betroffenen VMs viel auf, dass stark ausgelastete VMs mehr Probleme im Dateisystem anzeigten als kaum benutze. Daraufhin wurde sofort mit der Evakuierung der intakten VMs auf einen StandBy Storage-Server begonnen. Gleichzeitig wurden für die defekten VMs neue Systeme erstellt, um diese im Anschluß mit den Daten aus den Backups zu befüllen.

Bereits 4 Stunden später, gegen 12:00 Uhr, waren bereits knapp 75% der betroffenen Kunden wieder online.

Leider zeigten sich bei der der Evakuierung und Wiederherstellung schnell 2 Probleme: Zum Einen mussten wir feststellen, dass die von uns eingesetzte Backup-Software Jet-Backup nicht immer in der Lage war alle Kundendaten zu sichern, zum Anderen das unsere Kunden teilweise keinerlei Backups Ihrer Daten vorhalten.

Bei einigen Kunden km es zu Komplikationen da bei diesen Kunden beide Probleme gleichzeitig auftauchten. Dies sorgte für extrem lange Wiederherstellungszeiten oder die Notwendigkeit von immens hohen manuellen Nacharbeiten auf Seiten des Kunden.

Was war die genaue Ursache?

Im Nachgang konnten die betroffenen Bauteile mit Hilfe unseres Lieferanten und des Herstellers untersucht werden. Es stellte sich heraus, dass auch die verbliebene SSD einen Schaden aufwies, welcher vom RAID-Controller nicht bemerkt wurde. Beim Austausch der als defekt gemeldeten SSD nutzte das System daher die vermeintlich intakte SSD und vermischte diese Daten mit denen auf der Festplatte, wodurch im wahrsten Sinne des Wortes ein Datenbrei entstand, welcher nicht mehr zu retten war.

Demnach handelt es sich bei diesem Vorfall um ein technisches Versagen, auf welches wir keinerlei Einfluss nehmen konnten, da es gravierende versteckte Fehler gab, welche uns nicht gemeldet worden sind. Für den RAID-Controller ist bis heute die defekte SSD in Ordnung und zeigt keinerlei Probleme auf. Erst beim Test mit anderen RAID-Controllern wird diese SSD als defekt erkannt und entsprechend abgewiesen. Eine Erklärung für dieses Verhalten konnte uns keiner der involvierten Stellen liefern.

Was wird sich in Zukunft ändern?

Bereits zwischen Weihnachten und Neujahr wurde mit einer Überarbeitung unserer Backup-Infrastruktur begonnen. Wir haben vor ein komplett neues 2,4 PB (1 Petabyte = 1024 TerraByte) großes Backup-System aufzubauen und zu testen. Für dieses Vorhaben konnten wir bereits Geräte einsetzen, welche ursprünglich für ein anderes Projekt bestellt wurden. - Aktuell wird dieses Backup-System in unserem neuen Rechenzentrum getestet. Bei einem Erfolg wird das Backup-System erweitert und für alle Kunden ausgerollt.

Im Gegensatz zu Jet-Backup, welches - vereinfacht gesagt - die Datenbank des Kunden exportiert und die Daten kopiert, arbeitet die neue Lösung Bit-basiert. Eine Sicherung der VM und deren Konfiguration fand bisher nicht statt. Bei stark individualisierten VMs wurde dies jedoch zu einem relativ großen Problem, da anhand der Tickets die VM und deren Konfiguration rekonstruiert werden mussten.

In Zukunft ist es uns nun möglich VMs Bit-basiert wiederherzustellen. Dies sorgt dafür, dass die neue VM exakt der zuvor verunglückten Maschine entspricht. Die Wiederherstellungszeiten in einem solchen Fall verkürzen sich somit extrem, erste Messungen zeigen eine Verkürzung von mehreren Tagen auf wenige Stunden.

In unserem neuen Rechenzentrum kann dieses Problem generell nicht mehr auftreten. Hier haben wir bereits vor längerer Zeit die SSD-Caches durch Full-Flash-Arrays, also reine SSD-NVMe Storage-Server, ersetzt.

Fazit

Der Verlust eines 40 TB Storage-Servers ist neben einem Brand oder ähnlicher Katastrophe als größter anzunehmender Unfall zu bezeichnen. Wir sind daher, trotz aller Probleme und dem ganzen Ärger kurz vor Weihnachten, sehr froh, dass wir diesen Schaden für die meisten Kunden in einer relativ kurzen Zeit beseitigen konnten. Dies lag nicht zuletzt daran, dass uns viele Kunden Ihre Backups zur Verfügung gestellt haben, damit diese nicht vom gnadenlos überlasteten Backup-Netzwerk gezogen werden mussten.

Dieser Vorfall verdeutlicht noch einmal stark, dass Fehler in Hard- als auch Software immer wieder vorkommen können und es daher immens wichtig ist Daten immer an einem dritten Ort zu speichern. In diesem Zusammenhang empfehlen wir die 3-2-1 Backup-Regel, wovon Ziffer 2 durch uns abgedeckt wird und Ziffer 1 eine OffSite-Kopie außerhalb des Hauses / Rechenzentrums vorsieht.

Wir möchten uns an dieser Stelle noch einmal ausdrücklich für das weitestgehend große Verständnis bedanken. Gleichzeitig versichern wir Ihnen, dass wir unser Bestes geben um so einen Unfall in Zukunft zumindest schneller und planbarer beheben zu können.

Posted Feb 04, 2022 - 13:06 CET

Resolved
Alle betroffenen Systemen wurden wiederhergestellt! Wir werden den Fall an dieser Stelle schließen und melden uns in Kürze mit einem ausführlichen Report zurück.

Sollten Sie dennoch Fehler bemerken öffnen Sie bitte ein Support-Ticket (https://rackspeed.de/go/support) in unserem Kundencenter, wir schauen uns dieses morgen früh zuerst an.

Wie immer werden wir unsere Schlüsse aus dem Vorfall ziehen und uns fürs nächste Mal besser aufstellen. Sobald es Neuigkeiten gibt berichten wir in unserem Blog darüber.

Wir möchten uns an dieser Stelle noch einmal ausdrücklich für das große Verständnis und Mitgefühl einiger Kunden bedanken.
Posted Dec 21, 2021 - 16:14 CET
Update
Leider mussten wir feststellen das nicht alle Server sauber wiederhergestellt werden konnten. Dies liegt zum einen an riesigen Datenmengen oder gewaltigen vielen Dateien auf einem Server, letzteres resultiert meistens aus fehlerhaft konfigurierten Cronjobs. In seltenen Fällen scheinen Backups nicht korrekt erstellt worden zu sein, die Ursache hierfür sind Fehler in den Datenbanken die einen sauberen Dump verhindern. - Wir suchen derzeit nach Sicherungen früherer Daten die diese Fehler nicht aufweisen.

Da nun die Wartungs- und Backup-Jobs der Server laufen dauert sowohl die Suche als auch die erneute Wiederherstellung länger.

Wir versichern Ihnen das wir unser Bestes geben die noch verbliebenen Störungen zu korrigieren. Aufgrund er zuvor beschriebenen Umstände wird es bei diesen Kunden sehr wahrscheinlich bis morgen früh dauern bis diese VMs wieder erreichbar sind.

Wir bedanken uns für Ihr Verständnis und melden uns wieder sobald es neue Infos gibt.
Posted Dec 21, 2021 - 00:38 CET
Monitoring
Alle betroffenen Systeme wurden wiederhergestellt. Sollten Sie dennoch Fehler bemerken öffnen Sie bitte ein Support-Ticket (https://rackspeed.de/go/support) in unserem Kundencenter, wir schauen uns dieses morgen früh zuerst an.
Posted Dec 20, 2021 - 21:17 CET
Update
Wir liegen in den letzten Zügen und gehen erst in den Feierabend wenn alles wieder erreichbar ist!
Kleinere Nacharbeiten führen wir gerne morgen mit unseren Kunden zusammen durch.

Aktuell glühen sowohl die Backup-Server, als auch die Netzwerkverbindungen Richtung neue Server und VMs. Wir und unsere Technik geben unser Bestes damit die Daten so schnell wie möglich wieder erreichbar sind, aktuell kratzen wir allerdings an mehreren physikalischen Grenzen die wir nicht "mal eben" erweitern können.

Update folgt...
Posted Dec 20, 2021 - 17:44 CET
Update
Die meisten VMs sind erst einmal wieder online, es bleibt noch eine hand-voll übrig die einen schwerwiegenden Schaden am Dateisystem erlitten hat. Diese VMs werden in Kürze aus den Backups wiederhergestellt da eine Rettung nicht mehr möglich ist.

Sobald diese Vorgänge abgeschlossen wurden werden wir das betroffene Storage-System komplett evakuieren und außer Betrieb setzen. - Update folgt...
Posted Dec 20, 2021 - 12:51 CET
Identified
Das Problem konzentriert sich auf einen Storage-Server und auf den dort laufenden Rebuild des defekten RAID-Arrays. Wir versuchen gerade herauszufinden was genau schief läuft, die defekte Disk wurde vom System wie erwartet ausgetauscht dennoch gibt es derzeit massive Probleme mit dem System. - Update folgt...
Posted Dec 20, 2021 - 08:35 CET
Investigating
Derzeit verzeichnen wir vereinzelt Probleme bei der Erreichbarkeit einiger VMs.
Posted Dec 20, 2021 - 08:03 CET
This incident affected: SSD Hosting Server, SSD CloudServer, and Monitoring System.