Puppet at Getty ImagesThis is a Puppet case study for the web & technology sector.

Puppet Enterprise to consolidate workflows, enable test-driven development & continuous deployment.

Getty Images is the leading provider of visual communications worldwide. The global digital media company has over 180 million assets available through GettyImages.com and its leading stock content site iStock.com

Getty Images’ award-winning news, sports and entertainment photographers and content creators help customers produce inspiring work that appears every day in the world’s most influential newspapers, magazines, advertising campaigns, films, television programs, books and online media.

The Challenge

For a long time, Getty Images and iStock by Getty Images were operated as autonomous entities, with separate budgets, and their IT environments were also separate. Other acquired photo websites were moved into the Getty Images data center, or were kept running in their original sites through virtualization.

The result? An IT environment that was really a patchwork of IT environments, all running different hardware and software.

With so many different legacy IT systems running at once, “The company was spending a disproportionate amount time fighting fires,” said Juan Rivera, manager of platform design at Getty Images.

While Getty Images was actually using Puppet for configuration management, there were different versions running simultaneously, and multiple masters. “We had multiple repos and workflows internally, and it was not practical,” Juan said.

Key objectives

Getty Images has put emphasis on IT rationalization recently, with a focus on three key concepts to inform all decision making around IT:
• Automation
• Standardization
• Reliability

The company is consolidating all its workflows with the goal of getting to test-driven development as a universal practice. Engineers should ultimately be able to deploy code to production automatically

The Solution

Puppet Enterprise to consolidate workflows, enable test-driven development & continuous deployment.

Puppet Enterprise is key to achieving maturity in the three concepts driving IT for Getty Images. “Essentially, configuration management with Puppet gives us standardization,” said Juan. “We can’t keep building snowflakes. With configuration management, we get automation and standardization, and together these give us reliability.”

Getty Images started with open source Puppet in 2011. The company then purchased a small installation of Puppet Enterprise, for 250 nodes. As Getty Images expanded its use of Agile practices — continuous integration, configuration management, shorter release cycles and test-driven development — it purchased a larger license, for more than 3,000 nodes, with the option to expand from there.

“We had to shore up development to do continuous integration and continuous deployment and we had to shore up on the ops side of the house,” Juan said. “That’s where Puppet came into play.” Developers now manage their Amazon cloud instances with Puppet to ensure their development environment configurations align with production environments. IT operations uses Puppet to maintain configuration parity between development, staging, and production environments for various major applications. Currently, Getty Images is managing about 1,500 nodes with Puppet Enterprise, but Juan expects that number to grow quickly. All new systems that come onstream get Puppet Enterprise installed on them by default, while legacy systems are prioritized according to business needs.

“The faster we can get to 3,500 nodes, the better, because it means we’ll have more of our systems under configuration management,” Juan said.

The Results

Security benefits

In April 2014, a security vulnerability affecting OpenSSL was made public, and suddenly, the entire internet was scrambling to protect data. Getty Images had a small group of web servers running OpenSSL. “Puppet allowed us to make rapid changes across our entire configuration-managed environment from a centralized code repo,” Juan said. “It helped us to remediate Heartbleed, a major SSL vulnerability, in hours instead of days, and with a small dedicated team. Ultimately, this meant less exposure for ourselves and our customers, and ensured that we did not put our data at risk.”

“Being able to move quickly in response to a security vulnerability is extremely important,” Juan said, and the accuracy that automation delivers is also critical. “If we weren’t configuration-managed, it would be really difficult to modify web servers one by one without introducing human error into the mix.”

Better business decisions

Puppet Enterprise makes it possible for Getty Images to quickly test new features for customer response, rapidly scaling the features that prove popular, and pulling back those that don’t.

One subtle benefit of Puppet Enterprise is that it eliminates the “sunk-cost fallacy” — the hard-to-escape mindset that if something took a long time to accomplish, it must be valuable. “You’re more reluctant to pull something back that took six months to release rather than just a couple of weeks to release, regardless of its actual business value,” said Juan. “The business value is tremendous.”

In short, the main results were:

• Continuous deployment
• Rapid remediation of security vulnerabilities
• Better business decisions

“When you are in the financial industry you know the image you have to project to people. You have to be agile and authoritative; Consulting WP is the way to go for financial institutions.”

Amanda Seyfried
Founder & CEO, Arcade Systems

Looking for help with your Puppet implementation? Our DevOps experts would be happy to connect.