SLA-Inversion

aus Wikipedia, der freien Enzyklopädie

Bei einer SLA-Inversion ist ein hochverfügbares technisches System von anderen Systemen abhängig, wodurch die durchschnittliche Zeit, in welcher das System zur Verfügung steht, unter die im Service-Level-Agreement (SLA) definierte Verfügbarkeit fällt.[1]

Berechnung der Verfügbarkeit

Die Gesamtverfügbarkeit eines Systems S, welches von externen Systemen E abhängig ist, berechnet sich aus:

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle P \left(S\vert\mathrm{verf\ddot{u}gbar}\right) = \left(1-P\left(S\vert\mathrm{ausgefallen}\right)\right) \cdot \prod_n P\left(E_n\vert\mathrm{verf\ddot{u}gbar}\right)}

Ist beispielsweise ein System zu 99,99 % verfügbar, aber von zwei externen Systemen mit je 99,9 % Verfügbarkeit abhängig, so ist das Gesamtsystem nur zu 99,99 % · 99,9 % · 99,9 % = 99,79 % verfügbar. Das System fällt damit im Schnitt für

im Jahr aus.

Problemlösung

SLAs sollten für Geschäftsprozesse und nicht für Gesamtsysteme vereinbart werden. Die Entwicklungsabteilung kann dann wichtige Geschäftsprozesse gegenüber weniger wichtigen Geschäftsprozessen priorisieren. Zudem kann die Entwicklungsabteilung keine SLAs für Fremdsysteme treffen. Jedoch ist es möglich, die Systeme voneinander zu entkoppeln, sodass das System mit eingeschränkter Funktionalität weiterhin funktioniert, wenn externe Systeme ausgefallen sind. Hierzu dienen beispielsweise Sicherungen und entkoppelte Middleware, beispielsweise ein Enterprise Service Bus.

Quellen

  1. Michael T. Nygard: Release It! Design and Deploy Production-Ready Software. O’Reilly, 2007, ISBN 978-0-9787392-1-8, 4.10 SLA Inversion (englisch, 326 S.).