Thursday, May 26, 2011

At the Silicon Valley Cloud Computing Group: Zynga presents a Real World Case Study

If you believe cloud computing is still in its infancy, you have not learnt about Zynga. While Zynga have a hybrid cloud that powers their game servers involving their data center, a private cloud, zCloud, and a public cloud, namely Amazon Web Services (AWS), the more interesting fact is that they expect to be profitable in 2011 with a net margin of 35%, or a net profit of $630m on a $1.8B revenue.


At the Cloud Computing meetup today, Allan Leinwand, Zynga's CTO - Infrastructure, presented a fascinating study of how Zynga has employed cloud computing to power their game servers. It appears we will not see Allan's presentation in a publicly accessible web site any time soon — See Sebastian's talk about the meetup — and what follows is an account of the meeting, transcribed from my notes written out on paper. By the way, Allan's rapid fire delivery is a treat to experience.

Zynga started out renting server power through Amazon Web Services, and managing them by RightScale. By 2009, need for greater flexibility and scalability1, tipped Zynga to build a private cloud, zCloud, and complement it by using AWS. To smoothen the hybridization effort, they built zCloud as an AWS look-alike, including their security model, etc. In building zCloud, Zynga also avoided the use of inter-rack VLANs, and used an IP-routed network to interconnect racks.

Some interesting details about zCloud:
  1. Zynga uses 1 VM per physical server.
  2. CentOS is the guest operating system.
  3. They use x86-based physical servers.
  4. They have created a highly automated scheme whereby they can provision > 1000 physical servers in < 24 hours.
  5. The traffic in their cloud is more North-South, between tiers, than East-West (across servers).
  6. Growth: In January 2011, the server count was 75 times that in January 20092.
  7. A single orchestration layer manages the three key resources of the cloud: CPUs, Storage and Network.
Allan's wisdom to application designers: "Understand the architecture of the cloud in designing your application."

Allan's recommendation for "Cloud 2.0":
  1. 99.999% availability at the IaaS level
  2. Compute power needs to scale to millions of CPUs. (Can the cloud borrow concepts from SETI@home?)
  3. The cloud environment needs to be able to handle any workload
Overall, a very enjoyable and highly educational evening. Box.net — another vendor powered by a cloud — were gracious to provide the venue for the evening and Sebastian & Co. (i.e., whoever else worked in the background to make this event happen) deserve a big round of applause.

1In addition, the usual OpEx vs. CapEx argument was also a factor.
2For obvious reasons, the absolute server count was not revealed.

2 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. Good Job Ramesh Sahab putting this together.

    In my opinion, the event could have been more educational if links/background about how to implement private clouds were shared and the challenges they faced during implementation.

    Just bragging about provisioning 1K servers within 24 hrs is not going to cut it. I came their to learn and left empty handed.

    He wasted 2 hours of about 350 people (1000 man hours) by not respecting the fact that it was a free event and many people came with the goal of learning and not listen to his marketing pitches.

    ReplyDelete