Ablaufschema eines Deployments: Vom Entwicklerrechner geht der Code ins gemeinsame Code-Archiv, von dort in eine automatische Pipeline mit den Stationen Bauen und Testen, danach auf das Staging-System und schließlich auf die Produktivserver mit den echten Nutzern. Ein Rückpfeil von den Produktivservern zur vorherigen Version ist als Rollback beschriftet.

Deployment

Deployment bezeichnet den Schritt, bei dem fertige Software oder ein fertig trainiertes KI-Modell aus der Entwicklung heraus auf die Rechner kommt, auf denen echte Nutzer damit arbeiten. Erst mit dem Deployment wird aus einem Programm ein Produkt, das jemand tatsächlich benutzen kann.

Ein Programm entsteht zuerst auf dem Rechner der Entwickler. Dort funktioniert es, aber niemand außerhalb kommt daran. Deployment ist der Schritt, bei dem dieses Programm auf die Computer kopiert und gestartet wird, über die später echte Nutzer darauf zugreifen. Meist sind das leistungsstarke Rechner in einem Rechenzentrum, die rund um die Uhr laufen. Danach kann jeder mit einem Browser oder einer App die Software benutzen. Auf Deutsch sagt man dazu auch „ausrollen“ oder „in Betrieb nehmen“.

Der Moment, in dem Code auf echte Nutzer trifft

Zwischen „funktioniert bei mir“ und „funktioniert für alle“ liegt eine große Lücke. Auf dem Entwicklerrechner arbeitet genau eine Person mit dem Programm. Nach dem Deployment sind es vielleicht hunderttausend gleichzeitig. Fehler, die vorher nie aufgefallen sind, zeigen sich plötzlich: Der Speicher reicht nicht, die Datenbank ist überlastet, eine Einstellung fehlt. Deshalb gilt das Deployment als der riskanteste Moment im Leben einer Software.

Gleichzeitig ist es der einzige Schritt, der wirklich zählt. Code, der nie ausgerollt wird, hat für niemanden einen Nutzen. Firmen messen ihre Entwicklungsteams deshalb oft daran, wie oft sie deployen. Große Internetdienste bringen mehrere Änderungen pro Tag in Betrieb, manche sogar mehrere pro Stunde. Kleine, häufige Deployments sind dabei sicherer als seltene große, weil man bei einem Problem sofort weiß, welche Änderung schuld ist.

Bei KI kommt ein besonderer Kostenpunkt dazu. Ein trainiertes Modell zu deployen bedeutet, teure Grafikkarten dauerhaft laufen zu lassen. Das Training ist eine einmalige Ausgabe, der Betrieb nach dem Deployment läuft dagegen jeden Tag weiter und verursacht laufend Kosten.

Vom Testsystem bis zum Zurückdrehen

Ein Deployment läuft heute fast immer automatisch ab. Entwickler laden ihre Änderung in ein gemeinsames Code-Archiv hoch. Ein Automatisierungsdienst merkt das, baut daraus ein lauffähiges Paket und startet automatische Tests. Nur wenn alle Tests bestehen, wandert das Paket weiter auf die Produktivsysteme, also die Rechner mit den echten Nutzern. Diesen Ablauf nennt man Pipeline.

Vorher gibt es meist Zwischenstationen. Auf einem Testsystem probieren Entwickler die Änderung aus, auf einem sogenannten Staging-System läuft eine möglichst exakte Kopie der echten Umgebung. Erst danach folgt der letzte Schritt. Damit dabei niemand etwas merkt, laufen oft zwei Versionen parallel: Die neue bekommt zunächst nur ein Prozent der Nutzer ab. Läuft sie stabil, wird der Anteil erhöht. Dieses vorsichtige Vorgehen heißt Canary-Deployment, benannt nach den Kanarienvögeln in alten Bergwerken.

Für den Fall, dass doch etwas schiefgeht, hält man die alte Version bereit. Man schaltet dann einfach zurück, was Rollback genannt wird. Ein gutes Deployment-System schafft das in wenigen Minuten. Ein häufiger Irrtum ist übrigens, Deployment mit Release gleichzusetzen. Deployment heißt: Die Software liegt auf dem Server. Release heißt: Die Nutzer dürfen die Funktion auch sehen. Beides lässt sich bewusst trennen, indem man neue Funktionen erst einmal ausgeschaltet mitliefert.

Wo dir das Wort im Alltag über den Weg läuft

Wenn eine App über Nacht plötzlich anders aussieht, wurde ein Deployment durchgeführt. Wenn ein Onlineshop an einem Dienstagabend für zehn Minuten „wegen Wartungsarbeiten“ nicht erreichbar ist, ebenfalls. Und wenn ein Dienst für Stunden ausfällt, steckt sehr oft ein fehlerhaftes Deployment dahinter, das erst zurückgedreht werden muss.

In Wirtschaftsnachrichten taucht der Begriff meist im KI-Zusammenhang auf. Wenn eine Firma meldet, ein Modell sei „deployed“, heißt das: Es ist nicht mehr nur ein Forschungsergebnis, sondern in einem Produkt nutzbar. Auch der EU-Regulierung ist der Begriff wichtig. Der AI Act unterscheidet zwischen Anbietern, die ein KI-System entwickeln, und Betreibern, im englischen Text „deployer“ genannt, die es einsetzen. Beide haben unterschiedliche Pflichten.

Als Stellenbezeichnung begegnet dir das Thema unter dem Kürzel DevOps oder, für KI-Modelle, MLOps. Diese Leute schreiben selten die eigentliche Anwendung. Ihre Aufgabe ist es, dass der Weg vom Code bis zum laufenden System zuverlässig und wiederholbar funktioniert.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.