Die Reise in den Kurort Bad Gateway
Der Titel ist einmal mehr ein Nerdwitz. „Bad Gateway – 502“ ist eine typische Fehlermeldung bei völlig überlasteten Webservern.
Genau das erleben wir gerade im Netz: Anbieter stellen Testversionen ihrer Produkte zur Verfügung, freie Tools werden angepriesen und beworben. Gerade diejenigen, die diese Dienste ehrenamtlich und kostenfrei anbieten, dürften jetzt erleben, dass die Ressourcen nicht im Ansatz dem Bedarf entsprechen und sich mit einer Vielzahl netter und weniger netter Anfragen konfrontiert sehen – zusätzlich zu der Mehrarbeit, die jetzt im Bereich Ressourcenausbau und Betrieb entsteht.
Einen schlechten Anbieter erkennt man meiner Meinung nach daran, dass durch die Öffnung des Systems für viele („kostenfreie Nutzung für x Wochen“) jetzt auch zahlende Kunden in Mitleidenschaft gezogen werden. Die neuen sehen: Das läuft nicht! Die Bestandskunden sehen: Das läuft nicht! Schlimmer geht es nimmer. Das zeigt, wie wichtig es ist, sich bei solchen Aktionen zwischen Technik und Marketing abzustimmen und nicht allein die Dollarzeichen durch potentielle Neukunden zu sehen.
Kostenlose Angebote locken nicht nur interessierte Nutzer*innen an. Wer als Schüler will schon gerne in den „Coronaferien“ auf z.B. Mebis Aufgaben erledigen – wo doch Botnetze für wenige Euro zu mieten sind, die ein so weiches Ziel wie ein Moodlesystem längere Zeit verlässlich lahmlegen. Manchmal ist ein solcher Angriff auch schlicht gar nicht von übermäßiger Nutzung zu unterscheiden. Gerade Moodle ist dermaßen ressourcenhungrig, dass auch schon verhältnismäßig wenige zusätzliche simultane Nutzer*innen ein schlecht dimensioniertes System leicht in die Knie zwingen.
Man kann Systeme so bauen, dass Sie in Spitzenzeiten recht schnell „skalieren“, d.h. dynamisch entsprechend mehr Ressourcen bereitgestellt werden. Das braucht aber viel Know-How auf Seiten der Systemadministration (z.B. Loadbalancing) – und es ist teuer in Wartung und Betrieb.
Die Lösung besteht für mich nicht darin „die Großen“ zu nutzen, die das alles schon heute können, sondern zu dezentralisieren und durch offene Schnittstellen Verbindungen zu schaffen. Solche Systeme sind wahrscheinlich deutlich robuster.
Hallo Maik,
ich wundere mich etwas, dass Du ausgerechnet Moodle erwähnst. Wir haben ein selbst gehostetes Moodle, und im Vergleich zu Nextcloud braucht Moodle praktisch gar keine Ressourcen.
Bist Du da auf dem neusten Stand, was Moodle betrifft? Da hat sich sehr viel getan in den letzten Jahren. Dass Moodle wenig Ressourcen braucht, berichten auch andere Admins, mit denen ich im Kontakt bin.
Darüber hinaus stimme ich Dir völlig zu: Dezentrale Lösungen sind viel robuster. Ich meine, dass ohnehin jede größere Schule eigenes IT Know-How benötigt (also etwa einen fest angestellten Admin). Ein Netzwerk und einen schnellen Internetanschluss braucht die Schule auch, da spricht dann eigentlich wenig gegen einen eigenen Server.
Fällt dieser aus oder ist überlastet, dann betrifft das dann genau diese eine Schule und nicht (um ein Beispiel zu nennen) alle Schulen in Bayern, wenn Mebis überlastet ist.
Für kleine Schulen lohnt das nicht, dann ist es sicher klüger, wenn der Schulträger die zusammenfasst und einen gemeinsamen Server für diese Schulen pflegt.
Die funktional gute (und datenschutzrechtlich einem Bankrott gleichkommende) Lösung wäre nicht die Nutzung landesweiter Lösungen (dass die nicht funktionieren, wurde mehrfach gezeigt, zumal hier ja auch erhebliche Kosten entstehen), sondern die Nutzung der großen Clouds: Die Microsoft Cloud funktioniert super, mit wirklich guten Apps, gleiches gilt für die Google Cloud.
Ich bin gespannt, wohin die Reise geht. Wir sind sehr gut aufgestellt mit unserer eigenen Lösung (auf Linuxmuster basierend, das war ursprünglich ja mal eine wirklich gute Idee des Landes BaWü, etwas GEMEINSAM zu entwickeln, was dann trotzdem DEZENTRAL gehostet wird), nur muss man für sowas eben auch Geld für Personal in die Hand nehmen.
Nerdmodus:
Ich glaube in punkto Ressourcenverbrauch nur an das, was htop oder Monitoringstools mir sagen. Entscheidend, um einen Webserver in die Knie zu zwingen, sind CPU- und RAM-Verbrauch (der bei Moodle indirekt vor allem durch i.d.R. MySQL verursacht ist). Nun ist der Unterbau seit PHP7.x viel performanter geworden und Moodle nutzt die neuen Funktionen viel intensiver als andere Lösungen, weil der Code recht modern ist. Daher fühlt sich Moodle heute fluffiger an, solange man die Datenbank weitestgehend im RAM puffern kann. Es gibt nach meinen Erfahrungen aber einen Punkt, an dem das nach wie vor ganz schnell kippt.
Nextcloud braucht deutlich mehr Ressourcen, aber andere. Offene Verbindungen und I/O‑Leistung sind es hier. Da meist eh die Netzverbindung dann der Flaschenhals ist, geht es deutlich öfter unter Last in den Timeout, aber seltener in den Kurort.
Dann hoffe ich erstmal, dass unser Moodle dem Corona-Homeschooling-Ansturm standhält. Bis jetzt läuft’s gut!
Ich persönlich favorisiere Hybrid Lösungen. Es gibt Schulen, die solches nutzen und alle Daten auch noch einmal in der Schule vorhalten. Nutzt natürlich nur etwas, wenn man auch in die Schule kann oder zusätzlich von außen auf die schulische Infrastruktur zugreifen kann.