Zynga’s Infrastructure: A blend of private and public clouds
If anyone has proven that socially charged gaming is a viral commodity, Zynga has. And at 215+ Million users, Zynga’s infrastructure has to be rock solid to avoid unnecessary outages. The company’s culture centers around play and recreation; but after doing some research on their infrastructure, delivering massive amounts of content reliably and with flexible scale is some serious business.
Cloud based computing is often separated into two categories: public and private clouds. Services provided by companies like Amazon Web Services and Rackspace Cloud are examples of public cloud computing grids. These are probably the most common association when one hears about someone running their application ‘in the cloud’. Private clouds are also of increasing interest and offer many things that their public counterparts can’t. Software like Eucalyptus and Open Stack allow for anyone with physical systems to create scalable and distributed computing while still maintaining control on the security, performance, or cost of the infrastructure.
Zynga makes use of both types of cloud computing, and leverages the benefits that each one provides. While the specifics of their approach are not disclosed by the company, you can learn a lot by observing the technologies they associate with. Their use of RightScale to manage Amazon EC2 instances is well known in the industry. Its interesting to speculate about the technology Zynga uses for running their private clouds in their various datacenters. Zynga’s VP of Network Operations Mark Williams explains in a GigaOM interview that they leverage the public cloud (AWS EC2 in this case) for the launch of new gaming products, and then migrate parts of that same application back into their private cloud as needed for optimizing performance.
The use of AWS as their primary public cloud provider, so it would make sense that they are using an cloud computing platform for their datacenters that is compatible with AWS APIs, like Ecaulyptus or Nimbus. However, their use of RighScale as their orchestration engine and template management tool would give them the ability to use other types of platforms. Open Stack is another cloud infrastructure offering that takes a different approach and is based on the technologies developed by Rackspace Inc for their Rackspace Cloud product. Zynga’s use of RightScale allows them to utilize both types of platforms in their private clouds even with AWS being the primary infrastructure for their apps.
As vendor lock-in is an ever increasing concern in the IaaS spaces, services like RightScale offer a bit of freedom to use different platforms. Apparently people are seeing the value; RightScale boasts their deployment usage doubled in the last year. I still have to wonder though if this solution to a problem is really no solution at all. Using a orchestration tool with all the bells-and-whistles (instance templates, auto-scaling, etc) means you have some autonomy over cloud providers, but aren’t you still locked into that orchestration tool? Seems like a layer of abstraction is added to the stack, but the same business risk with being dependent on a vendor applies.
Zynga is got a good thing going no doubt, and it’s exciting to see them on the frontier of cloud computing and IaaS. Much like the Amazon Web Services poster-child Netflix, they are really setting the pace for the industry’s adoption of these technologies. As much as talk about this subject is in abundance, the amount of large production shops that are putting their mission critical stuff in the cloud is still a small percentage. Quantifiable stories are needed to establish credibility with developers and system architects in the field. Keep up the good work guys!
Sources:
http://www.kavistechnology.com/blog/?p=1625
http://www.datacenterknowledge.com/archives/2010/05/12/zynga-leases-data-center-in-virginia/
http://www.puppetlabs.com/blog/case-study-zynga-rapidly-scales-its-infrastructure-with-puppet/
http://venturebeat.com/2010/03/16/northscale-zynga-memcached/
http://www.zynga.com/about/facts.php http://www.cio.com/article/545713/Gaming_Company_Zynga_Sets_Up_India_Development_Center


