Pinterest veröffentlicht Code-Deployment-System Teletraan als Open Source

Die Pinterest-Entwickler nutzen Teletraan zum Verteilen ihrer internen Dienste auf zigtausend Hosts. Die Software bietet Rollback, Staging und Continuous Deploy und arbeitet mit vorhandenen Systemen wie Jenkins zusammen.

In Pocket speichern vorlesen Druckansicht
Pinterest veröffentlicht Code-Deployment-System Teletraan als Open Source
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Teletraan ist ein Code-Deployment-System, das auf eine Client-Server-Architektur aufbaut und Agenten auf den Hosts verwendet. Pinterest selbst nutzt es laut dem Blog-Beitrag zur Freigabe des Werkzeugs zur Verteilung ihrer Services auf zehntausenden von Hosts bereits seit gut einem Jahr im Produktiveinsatz. Im Backend verwaltet MySQL die Daten. Entwickler bauen Deployment-Skripte in ihren Code ein, die festlegen, was vor und nach dem Download sowie beim Neustart der Module geschehen soll.

Die Deploy-Agenten fragen in regelmäßigen Abständen nach Änderungen. Die Worker-Funktionen kümmern sich beispielsweise um die zeitlich gesteuerte Verteilung neuer Dienste.

(Bild: Pinterest)

Im Wesentlichen warten die Agenten auf den Hosts darauf, dass sie neue Anweisungen finden, laden dann den aktuellen Build zusammen mit den Skripten herunter und führen diese in den jeweiligen Deployment-Phasen aus. Teletraan arbeitet mit zahlreichen Entwicklersystemen wie Jenkins, Puppet und OpenTSDB zusammen. Es kümmert sich um alle Schritte, die zum Verteilen nötig sind. Dazu gehört neben dem eigentlichen Deploy auch das Rollback nach dem Verteilen eines fehlerhaften Moduls, das Staging und Continuous-Deployment. Entwickler können anschließend die Informationen zu den einzelnen Commit-Stufen einsehen. Derzeit funktioniert Teletraan nicht für die Container-basierte Verteilung, die aber laut dem Blog-Beitrag auf der Roadmap des Teams steht.

Teletraan ist der Name eines Supercomputers in den Transformers-Geschichten. Pinterest veröffentlicht wie andere große Internetfirmen regelmäßig eigenen Code als Open Source. Unter anderem gab das soziale Netz 2015 diverse MySQL-Werkzeuge und das Hadoop-Query-Tool Terrapin im Source frei. Die Details und die Anleitung zu Teletraan hat das Team in einem Wiki zusammengeführt. Es ist ebenso auf GitHub verfügbar wie die Software selbst, die unter der Apache-2-Lizenz steht. (rme)