Dreaded Array Confusion
Dreaded Array Confusion, kurz DAC, ist ein Begriff für eine Gruppe von Ausfallarten bei RAID-Arrays, die praktisch unmöglich zu diagnostizieren sind, sich jedoch durch die Gemeinsamkeit auszeichnen, dass sie ohne Laufwerksausfall, aber in Verbindung mit einem vollständigen Array-Ausfall auftreten und damit zu einem Totalverlust der Daten führen. Es wird vermutet, dass drei wesentliche Ursachen für den Großteil der DAC-Fälle verantwortlich sind:
Software- oder Firmware-Fehler: Auch wenn dramatische Fehler im RAID-Verhalten heute selten sind, sind sie stets möglich, insbesondere bei komplizierteren Array-Typen wie Paritäts-RAID, bei dem auf dem Array rekonstruktive Berechnungen durchgeführt werden müssen. Ein Fehler in der RAID-Software oder -Firmware (je nachdem, ob wir von Software- oder Hardware-RAID sprechen) könnte sich auf vielfältige Weise äußern, einschließlich der versehentlichen Zerstörung des Arrays. Firmware-Probleme könnten auch in den Laufwerken selbst auftreten.
Hardware-Ausfall: Ein Ausfall von Hardware wie Prozessoren, Arbeitsspeicher oder Controllern kann dramatische Auswirkungen auf ein RAID-Array haben. Insbesondere Speicherfehler könnten leicht zu einem Totalverlust des Arrays führen. Dies gilt als die seltenste Ursache von DAC.
Drive Shake: In diesem Szenario lösen sich einzelne Laufwerke und trennen sich von der Backplane, um sich später wieder einzurütteln und damit einen Resilvering-Vorgang auszulösen. Sollte dies bei mehreren Laufwerken während eines Resilvering-Zyklus geschehen oder sollte während eines Resilverings ein URE auftreten, käme es bei Paritäts-Arrays zu einem Totalverlust des Arrays, möglicherweise sogar ohne dass ein Hardware-Ausfall stattfindet.
Aufgrund der Natur von DAC und weil es sich nicht um ein Problem des RAID selbst, sondern um eines seiner unterstützenden Komponenten handelt, befinden wir uns in einer sehr schwierigen Lage, das Risiko zu identifizieren oder zu quantifizieren. Niemand weiß, wie wahrscheinlich das Auftreten von DAC ist, und obwohl wir wissen, dass DAC bei Paritäts-RAID-Systemen eine erheblichere Bedrohung darstellt, wissen wir nicht, um wie viel. Anekdotische Hinweise legen nahe, dass das Risiko bei gespiegeltem RAID unermesslich gering ist und bei Paritäts-RAID in der Risikoanalyse über das Grundrauschen hinaus ansteigen kann. Von den Ausfallarten stellen sowohl Software-Fehler als auch Drive Shake ein deutlich höheres Risiko für Systeme dar, die auf Paritäts-RAID laufen, da das URE-Risiko nur Paritäts-Arrays betrifft und die für Parität erforderliche Software weitaus komplexer ist als die für Spiegelung benötigte Software. Paritäts-RAID ist schlicht fragiler und birgt mehr Arten von Risiken, wodurch es auf mehr Wegen DAC ausgesetzt ist als gespiegeltes RAID.
Da DAC eine Reihe von Möglichkeiten umfasst und da es praktisch unmöglich ist, es nach seinem Auftreten zu identifizieren, gibt es kaum eine Möglichkeit, Daten dazu zu erheben. Seit DAC als Risiko identifiziert wurde, sind viele Menschen, vor allem in der Spiceworks-Community, hervorgetreten, um anekdotische Augenzeugenberichte über DAC-Array-Ausfälle zu liefern. Es liegt in der Natur der Endanwender-IT, dass Statistiken, insbesondere zu nebulösen Konzepten wie DAC, die nicht allgemein bekannt sind, nicht erhoben werden und auch nicht erhoben werden können. DAC tritt in Betrieben auf der ganzen Welt auf, wo ein Systemadministrator ins Büro zurückkehrt und einen Server vorfindet, auf dem alle Daten verschwunden sind, ohne dass Hardware ausgefallen ist. Die Daten sind bereits verloren. Eine Diagnose wird vermutlich nicht durchgeführt, Protokolle werden nicht existieren, und selbst wenn sich das Problem identifizieren ließe – wem wäre es zu melden, und selbst wenn es gemeldet würde, wie quantifizieren wir, wie oft es auftritt im Vergleich dazu, wie oft nicht, oder wie oft es auftreten könnte, ohne gemeldet zu werden? Bedauerlicherweise weiß ich nur, dass plötzlich, nachdem das Risiko und seine Symptome identifiziert und gewissermaßen publik gemacht worden waren, viele Menschen hervortraten und einräumten, dass auch sie DAC aus erster Hand erlebt hatten und keine Ahnung gehabt hatten, was geschehen war.
Wenn meine anekdotischen Untersuchungen ein Indikator sind, so scheint DAC tatsächlich ein beträchtliches Risiko für Paritäts-Arrays darzustellen, mit Ausfällen bei einem nennenswerten Prozentsatz der Arrays, doch waren die Genauigkeit und der Umfang des Querschnitts dieser Datenerhebung winzig. Ursprünglich wurde jedoch angenommen, dass DAC so selten sei, dass man theoretisch niemanden finden könnte, der es jemals beobachtet hätte, doch dies scheint nicht der Fall zu sein. Mir sind bereits viele Menschen bekannt, die es erlebt haben.
Wir sind durch die Natur der Branche gezwungen, DAC als potenzielles Risiko zu akzeptieren und es in Risikobewertungen als unbekanntes “geringfügiges” Risiko aufzuführen und darauf vorbereitet zu sein, können aber nicht damit rechnen. Doch zu wissen, dass es ein Risiko sein kann, und zu verstehen, warum es geschehen kann, ist wichtig für die Bewertung von Risiken und für die Risikominderung.
[Anekdotische Hinweise legen nahe, dass DAC fast immer ausschließlich bei Hardware-RAID-Implementierungen von Single-Parity-RAID-Arrays auf SCSI-Controllern auftritt.]
