Ich habe seit dieser Woche Urlaub und im Rahmen des Urlaubes habe ich mir vorgenommen, ein wenig meine angestauten Aufgaben auf Proxer anzugehen. Es sind dabei zahlreiche Neuerungen dazu gekommen, auf die ich hier kurz eingehen möchte.
Diesen Beitrag gibt es auch im Proxer Devblog zu lesen.
Entwickler Blog
Ich poste hier seit Jahren über meine Aktivitäten auf Proxer. Wir haben nun einen offiziellen Entwickler-Blog! Zukünftig werde ich meine Updates auch dort teilen. Den Blog dort kann man über RSS abonnieren.
Bestätigung der E-Mail Adressen
Seit 2021 wurden E-Mail Adressen nur bei der Registrierung und bei Änderung der E-Mail Adressen bestätigt. Für die Änderung der E-Mail Adressen war bislang nur das Passwort nötig und für mehrere Jahre vor 2021 konnte man sich auf Proxer sogar ohne E-Mail Bestätigung registrieren. Das heißt, dass ein großer Teil unserer Nutzer ungeprüfte oder gar falsche Mailadressen nutzen. Schreibfehler passieren erstaunlich oft bei E-Mail Adressen.
Mit Fortschreiten der Zeit werden Cyberangriffe ausgeklügelter. Der Schutz von Identitäten erfordert besondere Aufmerksamkeit und die Zwei-Faktor Authentisierung spielt hier eine entscheidende Rolle. Auf Proxer gibt es bereits die Zwei-Faktor Authentisierung seit sechs Jahren. Nutzer haben die Möglichkeit, die Authentisierung via Mail oder via Token (OTP) auszuwählen. Das alles ist aber bislang freiwillig.
Wir wollen bereits seit Jahren die Sicherheit auf Proxer erhöhen, indem wir die Zwei-Faktor-Authentisierung verpflichtend machen und zumindest mal über E-Mail den Login abprüfen (falls man sich beispielsweise zum ersten Mal mit einem bestimmten IP-Netz einloggt). Das hat sich aber als schwieriger herausgestellt als erwartet. Als wir das einmal kurz aktiviert hatten, wurde unser Support Postfach gefüllt von E-Mails, bei denen unsere Mitglieder nicht mehr auf ihre Accounts zugreifen konnte. Es war also ein Mechanismus nötig, um alle existierenden E-Mail Adressen zu bestätigen und zukünftig keine Änderung ohne Bestätigung der E-Mail Adressen zu erlauben.
Seit letzter Woche werden Mitglieder mit einer Benachrichtigung und Prüfung der Mailadressen benachrichtigt. Dieses Update dient als Vorbereitung für weitere Updates rund um Identitäten und Sicherheit.
Proxer-Stream Load Balancing
Unsere Proxer-Stream Infrastruktur (rotes Symbol bei der Episodenwahl) hatte vor ein paar Monaten eine der größten Veränderungen seit Jahren erlebt. Es hatte zur Folge, dass wir nun eine modernere, wartbare und auch noch günstigere Infrastruktur zur Verfügung haben, mit dem wir alle Anforderungen von Proxer langfristig abdecken können. In der alten Infrastruktur war Load-Balancing eine große Herausforderung.
Ich habe mir vor kurzem Zeit genommen, das Load Balancing zu automatisieren, damit unsere Proxer-Streams langfristig die Lastspitzen abdecken kann. Das Update war am Ende mit existierenden Werkzeugen sehr einfach umzusetzen. Ergänzend zu unseren blauen Proxer-Streams sind die roten Proxer-Streams nun ebenfalls gerüstet für weitere Jahre.
Stream-Bot Encoding Tracks
Unsere Streams werden überwiegend automatisiert über unsere spezialisierte Pipeline heruntergeladen, umgewandelt (encodet) und wieder hochgeladen. Das Umwandeln bedeutet, dass die Videos in so ein Format umgewandelt werden, dass sie effizient von Endgeräten konsumiert werden können. In unserem Fall ist es die Auswahl der korrekten Audio- und Untertitelspur und Export als ein sogenanntes „Hardsub“.
Video Encoding ist eine komplizierte Geschichte und bisher war es so, dass automatisch immer die erste Audio- und Untertitelspur ausgewählt wurde. Das hatte zur Folge, dass die Implementierung zwar einfach und in 90% der Fälle funktioniert hat, aber in einigen Fällen, in denen Videos mehrspurige Audios und Untertitel haben, fehl geschlagen hat. Das ist besonders bei Anime-Filmen der Fall gewesen.
Das Update umfasst, dass nun eine beliebige Audio- oder Untertitelspur ausgewählt werden kann. Dadurch sollten wir auf Proxer künftig des öfteren Filme vorfinden, die bislang aufgrund von fehlender Funktionalität und Mangel an Kapazitäten nicht hochgeladen wurden.
Nächste Projekte
Das wars auch! Es gibt ein paar weitere Projekte, die noch anstehen. Ich möchte kurz zusammen fassen, was in nächster Zeit zu erwarten ist.
Alerting und Monitoring
Einer meiner nächsten großen Aufgaben ist das Monitoring und Alerting auf Proxer von Grund auf neu aufzubauen. Unser Server-Monitoring basiert bislang auf Munin, was zwar eine sehr einfache und stabile Lösung ist, doch mit ein paar Limitierungen kommt. So ist es damit nicht möglich Benachrichtigungen auszulösen, wenn bestimmte Bedingungen (wie Serverausfälle) ausgelöst werden.
Des weiteren müssen wir in der Lage sein, nicht nur Server-Monitoring durchzuführen, sondern auch auf Anwendungsebene eine Art Monitoring einzuführen. Wenn eine Anwendung bestimmte Fehler oder Bedingungen auslöst, sollen wir in einer zentralen Übersicht über alle Gegebenheiten informiert werden.
Die Idee ist, unser Monitoring und Alerting auf Grafana und Prometheus umzustellen, um unsere Anforderungen zu erfüllen.
Neue E-Mail Vorlagen
Unsere bisherigen E-Mails sind einfache Texte. Wir wollen unsere E-Mails ansehlicher machen. Dafür wird eine zentrale E-Mail Strategie, die auch eine einfachere Veränderbarkeit ermöglicht, wird benötigt.