Interview: Hinter den Kulissen der Schulnetzwerke

Seit über einem Jahr sind Schul- und Lernclouds gefordert wie noch nie. c’t hat mit Tech­nikern und Admins des Landeshochschulnetzes BelWü gesprochen.

Lesezeit: 5 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen
Digitalisierung in der Schule

Schülerinnen arbeiten an Computern: Die Digitalkompetenz der «Generation Smartphone» stagniert in Deutschland.

(Bild: dpa, Friso Gentsch/dpa)

Von
  • Clemens Gleich

Die Corona-Krise zwingt Bundesländer, einen effizienten Schulbetrieb abseits des Präsenzunterrichts sicherzustellen. Während öffentlich über Konzepte diskutiert wird, arbeiten im Hintergrund Techniker und Administratoren daran, dass Schulclouds und Lernmanagement-Systeme rund laufen. Darüber hat c’t mit Mitarbeitern des BelWü in Baden-Württemberg gesprochen.

Die Schul-IT dieses Bundeslandes macht immer wieder Schlagzeilen. Vor einigen Jahren entwickelte das Land eine eigene Schulsoftware, musste das teure Projekt jedoch kurz vor der Einführung wegen technischer Mängel stoppen. Aktuell möchte das Kultusministerium eine neue Bildungsplattform einführen. Auch dieses Vorhaben ist umstritten, weil dabei Microsoft 365 zum Einsatz kommen soll.

Parallel dazu stellt Baden-Württemberg schon länger für alle Schulen das Lernmanagementsystem Moodle und die Videokonferenzsoftware BigBlueButton zur Verfügung. Die Open-Source-Software Moodle, eine Art Schul-Intranet plus Kurs- und Aufgabenmanager, hat sich im Bildungsbereich vielfach bewährt, ist aber aufgrund der mitunter sperrigen Bedienung nicht bei allen Lehrern beliebt.

Viele Hochschulen setzen ebenfalls auf Moodle. Das Landeshochschulnetz "BelWü" verbindet seit 1989 sämtliche Universitäten des Landes sowie weitere wissenschaftliche Einrichtungen. Bereits vor Corona versorgte es auch eine ganze Reihe von Schulen. Die Ausgangssituation zu Beginn der Pandemie war also grundsätzlich gut. Doch als das Angebot dann sehr schnell stark ausgebaut werden musste, kam es zu nicht vorhergesehenen Engpässen.

Peter Merdian ist Leiter der BelWü-Koordination und einer der Experten des BelWü-Teams, mit dem wir geredet haben.

c’t: Wie war das, als im Frühjahr 2020 plötzlich Fernunterricht stattfinden musste?

BelWü-Team: Im März 2020 war die digitale Bildungsplattform in Planung, aber noch nicht umgesetzt. Am BelWü wurden schon seit einigen Jahren Moodle-Instanzen für etwa 1000 Schulen angeboten. Als die Schließungen anstanden, erlaubte das Kultusministerium den Schulen, eigene Lösungen einzukaufen, wollte sie aber auch mit frei nutzbaren Angeboten unterstützen. Keiner der angefragten Dienstleister konnte oder wollte ein solches Angebot in der knappen Zeit aus dem Boden stampfen. Wir haben ja zunächst auch herzlich gelacht! Es ging um Tausende Schulen und wir hätten offiziell nur einen Arbeitstag gehabt, um für alle Schulen eine Moodle-Plattform bereitzustellen – wie sollte das denn funktionieren?

c’t: Wie war die Ausgangssituation?

BelWü-Team: Wir hatten einige neue Server in unseren beiden Rechenzentren stehen, mit denen wir die Webhosting-Plattform modernisieren wollten. Damit konnten wir theoretisch alle Schulen versorgen – mit einem sehr schlanken Moodle, ohne Backup, ohne tolle URL, aber ein Moodle pro Schule. Wir brauchten nur genügend Freiwillige. Am Freitagabend boten wir dem Kultusministerium vorsichtig unsere Hilfe an. Bis Dienstag hatten wir es dann geschafft, eine Plattform mit vielen tausend funktionierenden Moodles hochzuziehen, quasi nebenher in unserer Freizeit. Wir waren ziemlich übermüdet.

War die Nachfrage von Anfang an groß?

BelWü-Team: Ja, und deshalb wurden die Bestandskunden schnell zum Problem. Sie hatten Accounts und wussten, wie man Moodle verwendet. Die sind sofort voll eingestiegen. Wir hatten damit gerechnet, dass die Nutzung deutlich zunimmt – aber dann haben wir am Mittwoch an einigen Stellen die 20-fache Last des Üblichen gesehen. Wir haben das Problem zunächst mit mehr Servern erschlagen: Alles, was im Lager war, wurde herausgeholt, sogar aus Ersatzteilen noch Server zusammengebastelt und parallel dazu mehr Hardware beschafft, die zum Glück schnell da war.

c’t: Was hat sich inzwischen getan?

BelWü-Team: Bereits Ende März 2020 hatten wir die Sache besser im Griff. Über den Sommer ersetzten wir hauptsächlich alte Hardware. Strom und Platz wurden zum Flaschenhals, also haben wir klein dimensionierte Server, teilweise noch alte Sun-Restbestände durch leistungsfähigere Server mit 256 CPU-Cores und 1 TByte RAM ersetzt. Wir brauchten auch mehr Speicherplatz, es kamen Backups und Snapshots dazu. Die Kollegen vom Zentrum für Schulentwicklung und Lehrerfortbildung haben in der Zwischenzeit einen riesigen Cluster für Videokonferenzen aus dem Boden gestampft, mit der Open-Source-Software BigBlueButton (BBB). Nach einer Testphase wurde BBB in alle "Corona-Moodles" eingebunden.

c’t: Wie ging es danach, also im Sommer 2020 weiter?

BelWü-Team: Als wieder Präsenzunterricht stattfand, war nicht viel Last auf den Systemen. Um Weihnachten herum beschafften wir für alle Fälle noch ein paar zusätzliche Server. Wir installierten ein Anti-DDoS-System, zusätzliche Routing-Hardware und rollten Software-Updates aus. Bei der zweiten Runde der Schulschließungen im Dezember wurden dann alle Rekorde gebrochen. Dabei klappten kleinere Teile des Systems ein Stück weit zusammen. Wir mussten das Problem unter größter Anspannung finden und lösen. Es trat nur morgens unter maximaler Last auf, also hatten wir von Punkt 8:00 Uhr nur bis etwa 10:00 oder 11:00 Uhr Zeit, ein relativ komplexes Softwaresystem zu debuggen – auf Systemen, die kaum noch reagierten.

Die grafische Darstellung der Latenzverteilung zeigt deutlich, dass besonders viele Zugriffe in der Zeit von 8 Uhr bis 10 Uhr am Vormittag stattfinden.

c’t: Über die Serverausfälle Anfang 2021 wurde viel berichtet. Wo genau lag das Problem?

BelWü-Team: Eines der Kernprobleme beim Moodle-Tuning sind die Datenbanken. Hat man zu viele Benutzer (also in unserem Fall zu viele Moodle-Instanzen) auf einem Datenbankserver, läuft man in Connection-Limits, teilweise bleiben Moodle-Cronjobs hängen und schließen ihre Verbindungen nicht richtig. Und egal wie hoch die Limits sind, sie werden gerissen. Wir hatten die Datenbanken über den Sommer immer weiter aufgesplittet. Andere Bundesländer fahren einen anderen Ansatz und betreiben weniger, dafür sehr große Moodle-Instanzen, die von vielen Schulen gemeinsam genutzt werden. Da läuft man in Probleme mit Datenbank-Locking. Man muss den Sweet Spot finden.

Dazu kamen allerhand unerwartete Probleme. Einmal hinterlegte eine Schule ein 8 MByte großes Hintergrundbild, das bei jedem Seitenabruf neu mit ausgeliefert werden musste; das macht eine Seite für die Nutzer nicht unbedingt schneller. Oder ein LDAP-Server an einer Schule wurde plötzlich sehr langsam, weswegen Logins lange dauerten oder fehlschlugen. Das sind Einzelfälle, aber wenn irgendwas nicht funktioniert, ist für die User natürlich erst einmal das BelWü-Moodle doof.

c’t: Was haben Sie unternommen, um die Probleme zu beheben?

BelWü-Team: Moodle hat eine große Community, es gibt Foren und Mailinglisten. Wir haben uns mit den Kollegen in anderen Bundesländern ausgetauscht. So gab es sehr schnell Lösungsansätze. So wurden etwa Probleme im Connection-Handling zur Datenbank oder zu BigBlueButton gepatcht. Außerdem legten im Januar ineffiziente Datenbankabfragen für die Kalenderfunktionen das ganze System lahm. Diese Abfragen laufen zum Teil über 20 Sekunden, blockieren Slots am Datenbankserver, PHP-Worker müssen warten … Dieses Blocking setzt sich fort, bis das ganze System stillsteht. Ein paar zusätzliche Datenbankindizes an der richtigen Stelle konnten die Datenbankabfragen beschleunigen und das Problem war vorerst gelöst. Es lässt sich eben häufig nicht alles durch "wir stellen noch mehr Server dazu" lösen.

Warum haben Sie nicht einfach zusätzliche Cloudressourcen eingekauft?

BelWü-Team: Wir brauchten lediglich zusätzliche Server und mehr Speicherplatz, denn ein Rechenzentrum, Server, Speicher, einen Pool von IP-Adressen und Bandbreite hatten wir. Wenn man Cloudressourcen einkauft, zahlt man für diese Dinge mit. Cloudressourcen einzukaufen ist dann sinnvoll, wenn man sie nur vorübergehend, etwa für ein Projekt, braucht oder für ein paar Tage hochskalieren möchte. Bei einer Plattform, die potenziell jahrelang mit relativ gleichmäßiger Auslastung läuft, greifen die Vorteile von Cloudressourcen nicht. Im Gegenteil werden die höheren Kosten zum Nachteil. Außerdem war es im März 2020 nicht gerade einfach, genügend Ressourcen zu bekommen – zu einem guten Preis schon gar nicht. Wir waren ja nicht die einzigen, die schnell mal Arbeit und Schule nach Hause verlagern mussten.

Für die mehr als 5000 Moodle-Instanzen für baden-württembergische Schulen stehen im BelWü-Rechenzentrum mehrere Schrankreihen mit NetApp Storage und etlichen Dell-Servern zur Verfügung.

c’t: Wie viel hat die Aufrüstung gekostet?

BelWü-Team: Im Jahr 2020 haben wir ungefähr 2,5 Millionen Euro investiert. Im Januar 2021 nutzten bereits 5169 Schulen eine Moodle-Instanz über das BelWü. Täglich sind etwa 440.000 Lehrkräfte und Schülerinnen und Schüler aktiv, das bedeutet maximal 11.000 Zugriffe pro Sekunde, also rund 240 Millionen pro Tag. Anfang 2021 rüsteten wir noch einmal ordentlich mit Servern, Storage und Systemen für DDoS-Protection auf, für rund 8 Millionen Euro. Engpässe bei der Hardware gab es zum Glück nie.

c’t: Welche Lehren haben Sie aus dem bisherigen Betrieb und den anfänglichen Problemen gezogen?

BelWü-Team: Um so ein System zu betreiben, muss man in alle Layer des Stacks reinschauen. Früher haben wir einfaches Webhosting gemacht; um die Software haben sich meistens die Kunden gekümmert. Wenn etwas langsam war, wurde das Problem mit mehr Server-Ressourcen erschlagen. In den jetzigen Dimensionen skaliert das nicht mehr. Probleme im Code, in der Hardware-Architektur, in Datenbankparametern und so weiter – viele Stellen können sich negativ auf das Gesamtsystem auswirken. Der jeweils nächste Flaschenhals zeigt sich oft erst bei einer Last, die das System umkippen lässt. Dann hat man 30 Minuten Zeit, um herauszufinden, was gerade eigentlich los ist. Mit jedem Ausfall sind wir schlauer und das System ist besser geworden. So etwas aber vorher mit künstlich erzeugter Last zu testen, das ist der heilige Gral. Und bei knapp einer Million äußerst kreativer Nutzer lässt sich unmöglich alles vorhersehen und testen.

c’t: In der Rückschau betrachtet: Was hätte besser laufen können?

BelWü-Team: Bei Ausfällen haben wir wenig Zeit, herauszufinden, was los ist. Der Druck und der Stress ist in der Situation riesig. Grundsätzlich wären ein paar zusätzliche Leute dabei natürlich hilfreich.

Schwierig war auch das Thema Kommunikation. Wir sind es gewohnt, bei Problemen und Ausfällen sehr offen zu kommunizieren. Wir benennen zum Beispiel den Ausfallzeitraum, die genauen Probleme und (wenn wir sie kennen) auch die Ursache. Das ist uns wichtig. Wenn wir aber posten, dass circa 200 Moodles gerade für eine Stunde ein Problem hatten, dann kann es schon vorkommen, dass am nächsten Tag in der Zeitung etwas von "Moodle-BW Totalausfall" steht. Dass es nur 200 von 5000 Schulen waren, und dass in dieser Stunde vielleicht 20 Minuten Ausfall und 40 Minuten lang alles etwas langsamer war, müssen wir bei diesem Thema, das so aufgeheizt diskutiert wird, vielleicht etwas mundgerechter für die Presse servieren lernen.

c’t Ausgabe 10/2021

Wir haben unser Notfallsystem c't-WIMage neu aufgelegt. Außerdem erfahren Sie in c’t 10/2021, wie Sie die Selbstheilung von Windows nutzen, Ihre Fritzbox absichern und wer beim Linux-Kernel mitredet. Wir haben Oberklasse-Notebooks, -Handys und Gaming-Mäuse getestet und erläutern die Grundlagen von Flash-Speichern, Ethereum und NFTs. Ausgabe 10/2021 ist ab dem 23. April im Heise-Shop und am gut sortierten Zeitschriftenkiosk erhältlich.

(dwi)