Was Netflix montags macht… Part IV – die Sinnfrage

Für die Vergesslichen unter uns oder all jene, die nochmal detailliert in die vorigen Folgen dieser Reihe schauen wollen – hier geht’s zu Teil 1, Teil 2 und Teil 3. Heute wagen wir einen Blick zurück und versuchen die Frage zu beantworten, was Netflix denn nun montags macht.

Jeder Techniker, der schon mal einen Go-Live von Software erlebt hat, kennt dieses Gefühl vermutlich recht gut: ein kleines Unwohlsein vorher, ob wohl alles gut geht? Welche bisher unentdeckten Fehler schlummern noch in der Software? Funktionieren alle Verbindungen, ist das Produktivsystem richtig konfiguriert? Das große Schwitzen fängt vor allem dann an, wenn unter Zeitdruck gearbeitet wurde, das Budget knapp war und die Qualitätsanforderungen hoch sind – also wie in jedem normalen Projekt üblich.

Diese Unsicherheit rührt aus vielen Quellen, eine davon kann fehlende Gewissheit sein, dass es funktioniert, weil man es schlicht mit einer neuen Umgebung zu tun hat.

Diese Artikelserie versucht Wege aufzuzeigen, dies zu ändern, indem man identische Umgebungen für Entwicklung, Test und Produktion verwendet. Dies ermöglicht vor allem aussagekräftige Tests auf der Umgebung, die dann auch in der Produktion benutzt wird.  Es gibt sicherlich genügend Fälle, in denen die Umgebung so komplex ist, dass ein automatisierter Ansatz mit bspw. Saltstack sehr aufwändig erscheint und keine Vorteile bietet. Das ist sicherlich korrekt. Aber wird es besser, wenn man es komplett manuell macht? Die Grundproblematik liegt hier meiner Ansicht nach darin, Komplexität beherrschbar zu machen. Zum anderen schlägt in immer mehr Projekten durch, dass man einfach ständig zu wenig Personal für zu viele Tasks hat. Hier verspricht Automatisierung ja immer die Lösung 😊.

Doch ich persönlich glaube nicht daran, dass weniger Personal benötigt wird, weil wir ja jetzt ganz viel automatisiert bereitstellen können. Beispiele wie diese gibt es durchaus auch dort, wo man sie nicht vermutet, z.B. bei Amazon und dessen neuer Supermarktkette, was uns auch zur Frage bringt, die titelgebend für diese Serie ist. Montags (und auch an allen anderen Tagen) werden Spezialisten die Umgebung prüfen, überwachen, erweitern, pflegen und sich schlicht und ergreifend damit beschäftigen. So wie jede Software altert und Pflege benötigt, benötigt auch die Umgebungskonfiguration Pflege. Das war früher schon so und wird sich durch die neue Technologie nicht ändern.

Warum glaube ich trotzdem, dass Werkzeuge wie Saltstack einen Sinn haben? Weil sie einen professionellen Umgang mit Umgebungen fördern und verhindern, dass man mal eben schnell was am Produktivsystem ändert (geht ja ganz schnell). Stattdessen wird die Umgebung in der Entwicklung geändert, getestet und dann produktiv genommen (siehe auch Continuous Integration/Continuous Deployment). Darüber hinaus erhält man gleichzeitig eine Dokumentation über die Umgebung, denn spätestens das ist in der Regel eine echte Mammutaufgabe (vor allem das Synchronhalten der Umgebung/Dokumentation).

So weit so gut, was denkt Ihr darüber? Welche Werkzeuge habt Ihr bereits eingesetzt und welche Erfahrungen habt Ihr damit gesammelt? Ich bin gespannt auf Euer Feedback und freue mich auf eine rege Diskussion!

Bildquellen

  • Good-Cheap-Fast: uto

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.