Ein großer dänischer Fernsehsender und abonnementbasierter Streaming-Anbieter modernisiert seine Infrastruktur und Arbeitsweisen, um den Anforderungen eines modernen Streaming-Service gerecht zu werden.
Kurz gesagt
Das Unternehmen
TV 2 Denmark befindet sich im Besitz der dänischen Regierung und ist ein bedeutender nationaler Fernsehsender sowie eine vollständig abonnementbasierte Streaming-Plattform. Im Mittelpunkt dieser Geschichte stehen die Teams hinter der TV-2-Videoplattform und ihrer Infrastruktur.
Herausforderungen
Mangel an Personal und Fachwissen in DevOps und Cloud-Infrastruktur
Mangelnde Transparenz und Sicherheit bei der Einführung von Änderungen
Anspruchsvolle Lastmuster auf der Streaming-Plattform
Lösungen
Der gesamte Terraform-Code wurde in lose gekoppelte Module umstrukturiert
Istio wurde implementiert und automatisierte Feature-Deployments eingerichtet
Ein Tool für verteilte Lasttests wurde eingerichtet
Einführung von Quality Gates und einer Test-Suite für Jenkins-Bibliotheken
Migration zu AWS
Schulungen zu Docker, Kubernetes und Git
Austausch von Wissen und Best Practices
Workshops und Interviews zur Klärung der Ausrichtung des internen Plattformprojekts
Vorteile
Bessere Developer Experience durch Automatisierung und Tests
Klar definierte Infrastrukturarchitektur
Weniger durch Fehler verursachte Incidents
Andere Teams haben dieselbe Architektur übernommen
Eine solide Grundlage für die weitere Umsetzung des laufenden internen Plattformprojekts
Die Herausforderungen: Lastspitzen bewältigen und Risiken bei Änderungen an der Infrastruktur minimieren
Ursprünglich konzentrierte sich im Backend-Team der Streaming-Plattform nur eine Person auf DevOps und Infrastruktur, und TV 2 Denmark hatte Schwierigkeiten, neue Fachkräfte zu gewinnen. Das Team entwickelt die API, eines der wichtigsten Systeme für den Betrieb der Streaming-Plattform, und benötigte sofort externe Unterstützung, um ein breites Spektrum neuer Kompetenzen aufzubauen.
Das Team muss einen enormen unmittelbaren Anstieg der Last auf der Video-Streaming-Plattform bewältigen können. Wenn eine beliebte Fernsehsendung beginnt, nutzen viele Zuschauer die Plattform gleichzeitig. Und wenn die Sendung endet, werden die Zuschauer dazu aufgefordert, „jetzt die nächste Folge anzusehen“. Deshalb ist es entscheidend, dass die Plattform zuverlässig ist, die Last bewältigen kann und schnell skaliert.
Was ihr nicht wollt: Dass eine kleine Netzwerkänderung zum Ausfall der gesamten Plattform führt
Ein großes Problem zeichnete sich am Horizont ab. Es war ein Terraform-Monolith entstanden. Neue Änderungen führten aufgrund komplexer Abhängigkeiten häufig zu Nebeneffekten in der Infrastruktur. Dem Monolithen weiterhin Code hinzuzufügen, war nicht nachhaltig und hätte künftig nur noch mehr technische Schulden und Wartungsprobleme verursacht. Daher wollte das Team die Risiken bei Änderungen an der Infrastruktur minimieren.
Die Lösung: Eine neue Architektur für die Cloud-Infrastruktur und Wissensaustausch
Nach Gesprächen mit verschiedenen Beratungsunternehmen entschied sich TV 2 für Eficode, da Eficode den besten Eindruck machte und für die bevorstehende Arbeit die richtigen Persönlichkeiten und den passenden Ansatz zu haben schien.
Den Terraform-Monolithen aufteilen und die Codequalität verbessern
Eine der ersten Aufgaben war die Überarbeitung des Terraform-Codes und die Einrichtung der Infrastruktur in AWS. Der Terraform-Monolith wurde von Grund auf in locker gekoppelte Module und Ebenen umstrukturiert. Dadurch verringerte sich der Auswirkungsbereich erheblich, und Änderungen konnten deutlich einfacher ohne Nebeneffekte eingeführt werden.
Eficode führte außerdem ein Tool namens Atlantis als Teil eines neu geschaffenen Pull-Request-Workflows ein. Das reduzierte den manuellen Aufwand und ermöglichte es Entwicklern, die tatsächlichen Auswirkungen von Änderungen zu sehen, bevor diese übernommen wurden.
Um die Qualität und die Developer Experience insgesamt zu verbessern, führten die Eficode-Berater mehr Automatisierung und Tests in der Jenkins-Pipeline ein. Zudem halfen sie dabei, die Qualität gemeinsamer Jenkins Shared Libraries zu steigern.
Täglicher Wissensaustausch und praxisnahe Schulungen
Als das Team bei TV 2 wuchs und sich neue Praktiken verbreiteten, bot Eficode außerdem Schulungen zu Docker, Kubernetes und Git an.
Damit die tägliche Arbeit reibungslos lief und die zusätzlichen Ressourcen und Kompetenzen verfügbar waren, arbeiteten die Eficode-Berater eng mit dem TV-2-Team zusammen und teilten dabei ihr Wissen. Sie übernahmen sowohl strategische als auch taktische Aufgaben. Zum Beispiel:
Bei jedem Incident unterstützte Eficode beim Debugging – also dabei, herauszufinden, was schiefgelaufen war, und es zu beheben.
Da es aufgrund der Lastmuster schwierig war, Fehler frühzeitig zu erkennen, definierte und implementierte Eficode ein Tool namens Locust für verteilte Lasttests.
Wenn wir bei TV 2 Berater hinzuziehen, sollen sie Teil des Teams sein. Mit den Eficode-Beratern hat das gut funktioniert. Sie kommunizieren außerdem proaktiv und halten uns auf dem Laufenden. Darüber hinaus stimmen sie sich intern ab und vermeiden so doppelte Arbeit und Ineffizienz.
Eficode unterstützt derzeit ein weiteres TV-2-Team bei der Migration zu AWS und nutzt dabei dieselbe Architektur wie das Backend-Team.
Die Ergebnisse: Mehr Transparenz, Sicherheit und Kompetenzen für die TV-2-Teams
Zwar gibt es keine Kennzahlen, um die genauen Auswirkungen der Arbeit von Eficode zu messen, doch die TV-2-Teams profitieren täglich von vielen klaren Vorteilen.
Mit Unterstützung der Eficode-Berater verfügt TV 2 nun über eine klar definierte Microservice-Architektur für die Umsetzung seiner Infrastruktur. Wenn Änderungen an der Infrastruktur erforderlich sind, kann das Team den Auswirkungsbereich minimieren. Dieser erfolgreiche Ansatz hat ein gutes Beispiel gesetzt und wurde später von anderen Teams im Unternehmen übernommen.
Beim Versuch eines Deployments sehen wir weniger unbeabsichtigt ausgelöste Incidents.
TV 2 verfügt jetzt über eine umfassende Bibliothek mit Test-Suites und Quality Gates, sodass sofort erkennbar ist, ob Änderungen etwas beeinträchtigen. Das ist für die Entwickler sehr wertvoll.
TV 2 holte externe Experten hinzu, um Personal- und Wissenslücken zu schließen. Damit wurden nicht nur die dringendsten Herausforderungen gelöst: Durch die enge Zusammenarbeit mit den Experten baute das eigene wachsende Team schnell Wissen in allen relevanten Bereichen auf.
Die Zukunft: Arbeitsweisen durch den Aufbau einer internen Plattform verändern
TV 2 verändert derzeit grundlegend seine Arbeitsweise und baut eine gemeinsame interne Plattform auf. Verschiedene Teams und ihre Workloads werden auf diese neue Plattform migriert. Bei TV 2 ziehen alle mit – vom Management bis zu den Teams. Die Akzeptanz ist vollständig vorhanden (in vielen Unternehmen ein Luxus) – ja, es herrscht sogar Begeisterung. Die entscheidende Frage lautet daher: „Wo fangen wir überhaupt an?“
Eficode unterstützt den schrittweisen Aufbau dieser internen Plattform, damit die Teams sie auch tatsächlich nutzen. Um dem Plattformteam eine klare Aufgabe und Richtung zu geben, haben die Berater Workshops und Interviews mit Stakeholdern aus dem gesamten Unternehmen durchgeführt. Diese Gespräche lieferten zudem wichtige Einblicke in den Reifegrad der einzelnen Teams in Bereichen wie der Cloud. Die Ergebnisse bieten dem Plattformteam heute eine solide Grundlage, um weiter voranzukommen.
- DevOps
- Cloud
- Telecom and media
- Platform engineering
- Software Organization
Get in touch
Related client stories