Ansichten eines Informatikers

Zum Stand der allgemeinen Computertechnik mit Blick auf den Windows-Crowdstrike-Weltweit-Fuckup

Hadmut
19.7.2024 15:20

Kann man so etwas vermeiden?

Ja, kann man.

Vorweg: Es ist keineswegs so, dass Windows total schlecht und Linux total gut wäre. Ich habe ja schon über manche Probleme bei Linux berichtet, zuletzt den hanebüchenen Mist bei nftables.

Die traurige Realität ist, dass die ganze westliche Gesellschaft verblödet, und deshalb die Leistungsfähigkeit in Informatik sinkt, während die Komplexität der Systeme rapide steigt. Also das Verhältnis von Anforderungen zu Leistungsfähigkeit gerade sehr steil abstürzt.

Ich merke das gerade in verschiedenen – ehemals ganz tollen – Projekten, dass die weitgehend kaputtentwickelt wurden, weil jeder Honk reingeworfen hat, was er wichtig fand, und am Schluss das System nicht mehr zu durchschauen war. Früher sagte man Viele Köche verderben den Brei. Heute jubelt man über Diversität und code of conduct, wonach jeder Depp mitmischen darf.

Man sollte sich also tunlichst vor der Überheblichkeit hüten, zu glauben, oder schlimmer noch, zu behaupten, mit Linux wäre alles besser und fehlerfrei.

Aber: Es gibt Linux-Systeme, mit denen einiges besser ist, selbst wenn da totaler Mist abläuft, weil es sogenannte monolithische, „immutable“ (also unveränderliche) Systeme gibt, bei denen man nicht mehr die und die und die Software zusammeninstalliert und sich dann wundert, wenn es kracht, sondern bei denen das gesamte System ein einzelnes Image ist, das am Stück ausgetauscht wird (natürlich, nachdem es vorher gestestet wurde), und die deshalb in der Lage sind, das vorherige System vorzuhalten, die also immer zwei Systeme halten und abwechselnd booten oder immer das neuere, das letzte ältere aber noch vorhalten. Und wenn das System nicht sauber bootet oder der Benutzer vor dem Booten angibt, dass er doch nochmal das alte System haben will, kann das vorangegangene System noch einmal gebootet werden. Es gibt also immer den „Rollback“, wie man das nennt.

Solche Systeme sind auf Serverebene Fedora CoreOS und Ubuntu Core, also ohne graphische Oberfläche, für Serverbetrieb.

Mit graphischer Oberfläche gibt es Fedora Silverblue (wie CoreOS, aber mit Gnome) und Kinoite (wie CoreOS, aber mit KDE), und Ubuntu hat auch eines in der Entwicklung.

Ich will damit nicht sagen, dass man diese System auf allen Flughafen-, Bank- und Supermarktrechnern hätte installieren sollen. Ich will aber damit sagen, dass das Prinzip als solches besteht und beherrscht wird, dass es die Software dazu und Anleitungen gibt, wie man so etwas baut. Und wenn man dann typische Flughafenrechner anbietet, die den Gepäck-Checkin oder den Passagier-Checkin machen, oder im Supermarkt das Selbstbedienungsterminal, dann sind das ja keine Unikate, sondern davon werden ja in der Regel Hunderte, Tausende, Zehntausende eingesetzt.

Man könnte also zentral an einer Stelle (die natürlich selbst wieder redudant ausgelegt ist oder eine failover-Alternative hat) monolitische Images erzeugen, die eben den Gepäck-Checkin oder den Passagier-Checkin oder was auch immer treiben, und dann also monolithische Systeme aufsetzen, die man nicht nur vorher testen kann (und sollte), sondern die selbst dann, wenn es schief geht, den automatischen oder manuell Rollback auf das letzte funktionierende System erlauben.

Das ist keine Zauberei. Das ist beherrschte Technik. Vielleicht noch nicht in jeder Hinsicht ausgefeilt, aber so, dass man mit überschaubarem Aufwand die wichtigen Grundsysteme eines Flughafens oder Supermarktes, die es nicht verkraften, mal einen Tag auszufallen, monolithisch, also identisch mit dem getesteten System, und mit der Möglichkeit des Rollback laufen.

Und damit bekommt man so etwas in den Griff.

Ich hatte schon im Blog beschrieben: Ich war einige Mal schon nachts am BER, weil der Flug gleich morgens um 6 ging, man da also mit Gepäckaufgabe und Sicherheitspuffer, falls der Berliner Stadtbus ausfällt, so morgens zwischen 3 und 4 am Flughafen ist – und dann da erst einmal wartet, weil man das Gepäck noch nicht einchecken kann, wenn man welches hat.

Und dann kommt – habe ich schon einige Male beobachtet, mir aber die Uhrzeit nicht gemerkt – morgens so zwischen vier und fünf einer vom Dienst, und muss jeden einzelnen Rechner jeder einzelnen Checkin-Station von Hand starten und die Software wählen. Also nicht Einschalten. Strom haben die schon, der Bildschirm leuchtet. Aber die Dinger können nicht von selbst in den Zustand „Ich bin jetzt eine Checkin-Station“ booten, die müssen alle einzeln von Hand betüddelt werden, jeden Morgen, und das dauert. Da steht man dann da, guckt zu, und hält es nicht für möglich. Beim ersten Mal dachte ich noch, das sei irgendein Update schief gelaufen, aber nachdem ich das zum dritten Mal beobachtet habe, war mir klar, dass die das jeden Morgen so machen. Jeden Morgen geht da einer rum, der jedes einzelne System über den Touchscreen startet und dem irgendwas eingibt, ihm sagt, was es heute denn machen soll – obwohl das System fest am Checkin-Schalter angeschraubt ist und es immer nur dieselbe Aufgabe erfüllt. Muss man ihm jeden Tag aufs Neue erklären. Jedem einzeln. Von Hand. Touchscreen.

Da stehe ich dann da und denke mir: Wer baut denn so eine Scheiße?

Gut, nicht nur bei den Computern, der Gedanke kommt mir am BER an verschiedenen Stellen, beispielsweise auf jedem Herrenklo. Auf dem Damenklo war ich noch nicht, aber eine Leserin schrieb mir, verglichen mit meiner Beschreibung der Herrenklos seien die Damenklos noch schlimmer. Während die Herrenklos zwischen Waschbeckenbereich und Verrichtungszone so dämliche Westernbar-Schwingtürchen haben, die exakt gar keinen Nutzen haben, aber Probleme machen, gibt es auf dem Damenklo wohl eine Verbindungstür, die dann, wenn sie ungünstig steht, die Tür der ersten Kabine blockieren kann und man da anscheinend nicht mehr so ganz einfach rauskommt. (Das würde immerhin erklären, warum Frauen immer paarweise aufs Klo gehen – damit man immer eine dabei hat, die einen befreien kann.)

Wenn wir als Staat, als Land, oder meinetwegen auch als EU etwas wären, dann hätten wir eine zentrale Organisation, die so etwas in der Art wie CoreOS oder Silverblue/Kinoite als Grundbaukasten erstellt und Anleitungen herausgibt, wie man das Ding an bestimmte Anwendungen anpasst („customized“), und das jedem ohne das alberne Lizenzgedöns, Kommerziellen vielleicht gegen einen angemessenen Kostenbeitrag, zur Verfügung stellt. Und dann kann ein Hersteller von Flughafenterminals da seine Terminalsoftware draufsetzen und dann beispielsweise die letzten 20 Images archivieren, von denen die Systeme selbst immer die letzten 2 (oder wenn man etwas großzügigere ist, die letzten 3 oder 4) Images vorhält, die Systeme also selbst den „Rollback“ machen können und die Administratoren im Notfall auch ältere Versionen wieder rausgeben können, und dann hat man solche Probleme zwar nicht völlig, aber doch weitgehend ausgeschlossen, und ist vor allem in der Lage, sehr schnell, meist sogar automatisiert, darauf zu reagieren.

Wenn man es drauf anlegt, würde man sogar die Hardware/Firmware darauf auslegen. Es gibt ja auch Mainboard-Hersteller, die BIOS-Updates immer nach dem „Wechsel-System“ machen, also immer nur abwechselnd die eine oder andere Hälfte es Speichers verwenden und deshalb immer zum vorangegangenen BIOS zurückwechseln können, wenn etwas schief geht.

Man könnte dann Systeme bauen, die im Fehlerfalle mit einer Art Totmannschaltung (solche Watchdog-Systeme sind nicht unüblich) nach dem Booten testet, ob das System innerhalb gewisser Zeit hochkommt und erreichbar ist und selbst aktiv Watchdog-Signale sendet, und dann automatisiert den Rollback auslöst, wenn das nicht funktioniert, oder sogar ein Notfallimage zur Neuinstallation oder Hardwarediagnose lädt und startet.

Das ist kein Hexenwerk.

Das ist Informatik, wenn man sie nicht gendert und quotet.

Und nicht der sozialistischen Meinung ist, dass der Heini, der jeden Morgen rumgeht und alle Systeme von Hand hochfährt, doch ein Arbeitsplatz wäre.

Und wenn wir im Digitalbereich fähige Politiker und nicht irgendwelche gescheiterten Politologen sitzen hätten und Digitalminister nicht irgendwelche Quotentussi wären, die von Flugtaxis faseln, dann hätten wir schon längst gewisse solche Anforderungen an die „kritische Infrastruktur“, zu der eben auch Banken, Supermärkte und Flughäfen gehören, weil die eben laufen müssen. Der Spielzeugladen und das Sportgeschäft haben zwar ein Finanzproblem, aber keine Auswirkung auf den Betrieb der Gesellschaft, wenn die mal ein paar Tage dicht sind oder nur Bargeld nehmen können. Auf den Blumenladen kann man auch mal einen Tag verzichten.

Aber etwas wie das da ist einfach Staatsversagen.

Und das gehört auch zu dem Thema „Nicht in der Lage, einen Flughafen zu bauen“. Ich hatte ja schon kritisiert, dass der BER in unzähligen Details auf mich wirkt, als hätte da niemand Ahnung gehabt, wie ein Flughafen funktioniert, sondern jede Menge Firmen, die sonst Bürohäuser bauen, lauter kleine Aufträge bekommen und jeder irgendwas dahingebaut, wie er es immer macht, ohne Rücksicht darauf, dass da irgendwas zusammenpassen oder funktionieren muss, und dass das Klo nicht für den Vorstandsvorsitzenden mit Krawatte, sondern für den Reisenden mit Gepäck passen muss und nicht für 20, sondern für 2000 Besuche pro Tag ausgelegt sein muss.

Und diese Staatsunfähigkeit drückt sich eben auch in der Unfähigkeit aus, zuverlässige Systeme aufzustellen.