Ideas matter most when they're shared

Prezi helps millions of users easily visualize and share their ideas. To stay ahead of user demand and innovate faster, Prezi automated its infrastructure with Chef.

The Challenge

Prezi is an 'open canvas' providing zooming presentation software that enables more than 17 million users worldwide to better communicate their ideas. To deliver its innovative platform, Prezi uses hundreds of servers, many of which are Amazon EC2 resources. Managing both a large-scale compute infrastructure and a massive user base creates a range of issues:

  • Rapidly add compute resources to keep pace with immense user demand
  • Manage configuration and orchestration of complex infrastructure including website, media storage and provisioning, monitoring and data mining resources
  • Establish transparent, consistent infrastructure that can be easily understood and managed by both existing personnel and new team additions as company grows

The Solution

Prezi's infrastructure team deployed Chef to automate configuration management and provisioning for its entire infrastructure, from back-end systems to its production website.

The Results

  • Scale infrastructure in real time to stay ahead of user demand
  • Accelerate innovation by enabling more than ten infrastructure and developer personnel to configure and deploy compute resources as needed
  • Improve collaboration and transparency by providing complete, easy to understand documentation of all resources and systems' history

Prezi's Recipe for Success

As Prezi's business grew, it moved much of its compute infrastructure to Amazon EC2 to take advantage of Amazon Web Services scale and cost-efficiency. As its server count multiplied, the company also added a number of infrastructure and developer personnel to manage these resources and accelerate the company's rate of innovation. Leveraging Chef and its Knife EC2 command-line plug-in, Prezi has rapidly scaled out its cloud infrastructure, while simultaneously enabling more than ten different engineers and developers to productively use Chef for provisioning new compute resources.

"Our customer base is soaring, so staying ahead of the curve – both in terms of resources and new product updates – is one of our top priorities," said Gabor Veszi, Infrastructure Lead, Prezi. "We moved to Amazon EC2 for easy access to cheap compute, but managing infrastructure growth and accelerating application development requires talent. Chef is a force multiplier that makes our engineers and developers much more productive."

Prezi offers a range of presentation solutions for users, requiring a sophisticated website infrastructure that handles everything from member sign-ups to presentation streaming to media storage. To keep its website running smoothly around the clock, Prezi employs a range of back-end applications and systems including data mining, usage monitoring and analysis, and media file archiving. With so much complexity in its infrastructure, Prezi needed an automation solution that would establish a model for reuse to make resource configuration easily repeatable and highly consistent.

"Our site handles a lot of user-generated content, which makes it difficult to predict spikes in traffic and the associated resource requirements," Veszi continued. "We need to be able to scale-up on-demand when the site's getting hit hard and be confident that resources are configured properly every time. Chef lets us to easily configure complex infrastructures just by putting together already existing pieces like Lego blocks."

Prezi uses the Chef Community cookbooks Ruby Version Management (RVM) for the various Ruby versions in its many environments and the Advanced Packaging Tool (APT) Cookbook for managing software installs and removals in its Linux-based infrastructure. Using Chef to automate all resource configuration gives Prezi a complete data repository of infrastructure documentation, so the company can easily track recipe and cookbook changes, improving transparency throughout Prezi's IT and development operations.

The transparency of Chef empowers Prezi's engineers and developers to use easily repeatable code commands at will, delivering new compute on-demand. Now, Prezi is more adaptable to change and can develop new software updates faster than before Chef.

"Chef's documentation ensures any new developer or engineer can easily understand how our infrastructure works and ramp to productivity very quickly," Veszi said. "With a record of everything done in our infrastructure, it makes identifying issues or averting trouble much easier and less time-consuming, so we can focus on our products."

"Chef gives us agility. If we want to start developing a new system tomorrow, by Noon we can put every infrastructure piece in place and be ready to go." Gabor Veszi, Infrastructure Lead, Prezi

About Chef

Chef is the provider of Chef, the automation platform for the coded business. Chef provides the speed, flexibility, and efficiency to compete in the digital economy. By modeling IT infrastructure and application delivery as code, Chef empowers businesses of all sizes to easily scale to meet demand, eliminate down time, manage complexity, and accelerate time to market.