Was bedeutet “never change a running system”?

Im IT-Bereich findet man häufig den Satz “never change a running system”. Auf deutsch übersetzt bedeutet dies, dass man niemals ein laufendes System ändern soll. Was bedeutet dies?

Viele Laien denken, dass damit gemeint ist, dass man keine Updates einspielen darf, solange das System funktioniert. Das heißt, man sollte niemals ein System verändern, solange es läuft. Diese Interpretation ist aber falsch!

Was mit “never change a running system” gemeint ist, ist nicht, dass man ein laufendes System nicht ändern soll, weil es läuft. Viel mehr ist es, dass man ein System nicht verändern sollte, solange Benutzer es noch benutzen. Das heißt, wenn Benutzer laufende Prozesse auf dem System laufen lassen, sollte man das System nicht verändern.

Erst wenn alle Benutzer nichts darauf machen, kann man das System verändern. Natürlich sollte man Updates oder Patches einspielen, solange Benutzer darauf arbeiten. Es ist wichtig, dass ein System stets aktuell bleibt.

Als Beispiel nehmen wir eine Datenbank. Eine Datenbank hat Tabellen mit Spalten und Einträgen in der Tabelle. Möchte man beispielsweise eine Spalte löschen, so muss sicher gestellt werden, dass kein Benutzer zu dieser Zeit und in Zukunft in diese Spalte etwas einträgt. Das heißt, erst wenn wir absolut wissen, dass kein Benutzer etwas einträgt, darf man die Spalte löschen.

Natürlich können wir in dieser Zeit auch ein Datenbanksystem (z. B. MySQL) in dieser Zeit updaten, sofern die Verfügbarkeit gewährt wird. Das heißt, dass die Datenbank auch kontinuierlich laufen muss, auch bei Updates.

Zusammenfassung: “Never change a running system” bedeutet nicht, dass man das System nicht updaten soll, weil es läuft. Es bedeutet im Gegensatz, dass man das System nicht verändern soll, solange Benutzer darauf arbeiten.