In der Literatur findet sich am häufigsten die Empfehlung, SPOFs durch den Aufbau von Redundanzen entgegenzuwirken. Es werden mehrere Instanzen einer kritischen Komponente (z. B. Stromversorgung, Netzwerkanbindung, DNS-Server) parallel betrieben. Im Idealfall ist beim Versagen einer Instanz ein Weiterbetrieb des Systems ohne Leistungseinbuße möglich.
Auch softwareseitig beugt Redundanz vielen SPOFs vor. Ein Beispiel sind die beliebten Microservices im Gegensatz zum Software-Monolithen. Ein System aus Microservices gilt als stärker entkoppelt und weniger komplex und ist damit robuster gegenüber dem Auftreten von SPOFs. Da Microservices für gewöhnlich als Container gestartet werden, ist es einfacher, Redundanzen aufzubauen.
Doch wie genau schützt Redundanz ein System? Zum besseren Verständnis des Wirkprinzips bedienen wir uns der als „Lussersches Gesetz“ bekannten Abschätzung der Verlässlichkeit eines Systems. Exerzieren wir das an einem Gedankenbeispiel durch:
Nehmen wir an, ein System verfüge über zwei voneinander unabhängige, parallel geschaltete Anbindungen an die Stromversorgung. Nehmen wir ferner an, die Wahrscheinlichkeit für das Versagen der Anbindung innerhalb eines bestimmten Zeitraums betrage 1 Prozent. Dann lässt sich die Wahrscheinlichkeit für das komplette Versagen der Stromanbindung als Produkt der Wahrscheinlichkeiten berechnen:
- Wahrscheinlichkeit des Versagens einer Instanz:
1% = 1 / 100 = 1 / 10 ^ 2 = 0.01
- Wahrscheinlichkeit, dass hintereinander zwei Instanzen versagen:
1% * 1% = (1 / 10 ^ 2) ^ 2 = 1 / 10 ^ 4 = 0.0001
Wie Sie sehen, halbiert sich die Wahrscheinlichkeit für einen SPOF beim Betreiben von zwei Instanzen nicht etwa, sondern verringert sich um zwei Größenordnungen. Eine beachtliche Verbesserung. Bereits bei drei parallel betriebenen Instanzen dürfte ein Versagen des Gesamtsystems nahezu ausgeschlossen sein.
Leider ist Redundanz kein Allheilmittel. Vielmehr schützen Redundanzen ein System gegenüber SPOFs innerhalb bestimmter Annahmen. Zunächst muss gegeben sein, dass die Wahrscheinlichkeit für das Versagen einer Instanz unabhängig ist von der Wahrscheinlichkeit für das Versagen der redundanten Instanz(en). Nicht gegeben ist dies bereits, wenn das Versagen durch ein äußeres Ereignis hervorgerufen wird. Brennt das Datencenter, fallen redundante Komponenten zusammen aus.
Neben der Redundanz eingesetzter Komponenten ist eine Verteilung gewisser Komponenten kritisch, um SPOFs zu mindern. Geografische Verteilung von Datenspeichern und Recheninfrastruktur schützt vor Umweltkatastrophen. Ferner zahlt es sich aus, eine gewisse Heterogenität bzw. Diversität kritischer Systemkomponenten anzustreben. Diversität senkt die Wahrscheinlichkeit für das Versagen redundanter Instanzen.
Veranschaulichen wir uns den Vorteil von Diversität am Beispiel der Cybersicherheit. Stellen wir uns ein Datencenter mit redundanten Load-Balancern exakt gleicher Machart vor. Besteht bei einem der Load-Balancer eine Sicherheitslücke, liegt diese auch bei den redundanten Instanzen vor. Ein Angriff legt im schlimmsten Fall alle Instanzen lahm. Bei Einsatz verschiedener Modelle besteht eine bessere Chance für das Gesamtsystem, mit verminderter Leistungsfähigkeit weiter zu operieren.