Engineering the Future of Software
November 13–14, 2016: Training
November 14–16, 2016: Tutorials & Conference
San Francisco, CA

Containerization at Pinterest

Baogang Song (Pinterest)
3:50pm–4:40pm Wednesday, 11/16/2016
Devops
Location: California East Level: Intermediate
Average rating: ****.
(4.00, 6 ratings)

Prerequisite knowledge

  • Professional experience building and deploying code and running code in containers/dockers
  • Familiarity with DevOps principles

What you'll learn

  • Learn how Pinterest engineers run dockers in their production quickly and safely with Pinterest's existing deploy tool, Teletraan

Description

Baogang Song shares Pinterest’s unique journey adopting Docker technology. Baogang highlights how Pinterest used Teletraan, its code deploy system, to safely deploy dockers in production with little effort and limited Docker operational experience.

Docker has become very popular among DevOps and is being adopted by more companies. Pinterest was particularly interested in the two major benefits that Docker brings—consistent environments among develop, build, test, and production and running production in a complete immutable infrastructure—increasing development velocity and improving production quality. However, Pinterest wanted to be very cautious when deploying dockers in production because Docker technology still young and the tools around it are either lacking or still maturing—not to mention that the team had very limited operational experience with Docker on a large scale.

Pinterest has been using Teletraan to deploy its service code for years. Teletraan supports safe deploys through features such as staging, rolling updates, and rollback; it integrates with GitHub, Jenkins, Slack, and Jira, and it has an easy UI developers love to use. The team thought it would be great if they could just use the same tool to deploy dockers. Teletraan was designed to run arbitrary deploy scripts, so naturally the team just changed the deploy scripts to call “docker stop/pull/run” instead. . .and that is exactly how the first sample service was deployed.

Baogang outlines Pinterest’s incremental approach to deploying dockers to production, explores key results and benefits, and shares some of the team’s plans for the future.

Photo of Baogang Song

Baogang Song

Pinterest

Baogang Song is a software engineer on the Cloud Management Platform team at Pinterest, where he built and open sourced Teletraan to help Pinterest engineers quickly and safely deliver features to production. He currently leads the project to containerize Pinterest infrastructure. Prior to Pinterest, Baogang worked at Amazon and Oracle.