Welcome!

Web 2.0 Authors: Esmeralda Swartz, Tim Hinds, Kevin Benedict, Pat Romanski, Michael Bushong

Related Topics: Cloud Expo, Virtualization

Cloud Expo: Article

Virtualization & Cloud Computing: Public Clouds Are Not Just Big Virtual Server Clouds

Not all clouds will use virtualization; virtualization is just a multi-tenancy strategy.

Randy Bias's Blog

There is a myth going around about virtualization and cloud computing. It’s expressed in a variety of ways, but the takeaway is always the same: “Public clouds are big virtual server clouds.” Sounds good, but untrue once you look under the covers. For good reason, since virtualization isn’t a panacea.

Here’s the deal. Public clouds (IaaS, PaaS, or SaaS) are all multi-tenant. It’s a fundamental definition. Multi-tenancy is one of the core properties of any cloud. Whether it’s a cloud like GoGrid's, EC2, Google App Engine (GAE), or Salesforce.com (SFDC). Multi-tenancy is a mechanism whereby public cloud providers give customers cost efficiencies by aggregating capex at scale and providing it as a subscription service.

Virtualization is just a multi-tenancy strategy.

Virtualization as Multi-Tenant Solution
That’s right. It’s only a multi-tenancy strategy. Not all clouds will use virtualization. Clouds like GAE and SFDC use completely different technologies to create multi-tenancy, but even for strict compute clouds, folks like AppNexus surface physical hardware that customers then carve up themselves into virtual machines. While others, like NewServers, serve up completely physical clouds. For those folks their multi-tenant strategy is more coarse, based simply on a single piece of physical hardware.

Scaling Up Still Matters
Simply put, for the foreseeable future there are many pieces of software that do better scaling ‘up’ versus ‘out’. For example, your traditional RDBMS is much easier to scale by throwing physical iron (instead of virtual) at the problem.

A well known Web 2.0 company recently expressed to me that they are running with hundreds of thousands of customers on big database servers with 128GB of RAM and lots of high speed disk spindles. This is one of the poster children of the Web 2.0 movement. If they can scale out their RDBMS by simply throwing iron at it, why would they re-architect into (for example) 10 extra large EC2 instances and deal with the engineering effort involved with a heavily sharded database?

To put this in perspective, you could do this:

  • 10 extra large EC2 instances
    • 16GB RAM each
    • ~8 EBS network-based storage devices
    • 2 cores each
    • ~$6000/month including storage
    • $ X to engineer for sharding at application level

or:

  • 2 redundant big iron physical servers
    • 128GB RAM each
    • 16 high-speed spindles on local disk
    • 8-12 cores each
    • $40,000 in capex or ~7,500/month for servers+storage

Conclusion

It’s kind of a no brainer. For certain use cases it’s more economical to scale using bigger hardware. There are two key reasons why this won’t change in the near future. The first is that many folks are working hard to make database software scale better across more cores. The second is that we’ll be at 16 and 32 cores per 1U server in the not so distant future. Scaling up will continue to be a viable option for the future. Period. Clouds need to enable this in the same way they enable virtualized servers for scaling out. It’s not an either/or proposition.



Update: The ‘well known’ Web 2.0 company I mentioned has informed me that my estimate on dedicated hardware was far too high. Something around $5,000 for those servers is more accurate, meaning there is even less reason to consider scale-out as an option.

 

More Stories By Randy Bias

Randy Bias is Co-Founder and CTO of Cloudscaling. His provocative views on the cloud computing disruption have made Randy Bias one of the industry’s most influential voices. He has inspired organizations to embrace cloud to transform business processes and position for success in a new world where computing resources are ubiquitous, inexpensive, instantly scalable, and highly available.

A vocal open systems advocate for more than two decades, Randy was the technical visionary at GoGrid and at CloudScale Networks. He led the open-licensing of GoGrid's APIs, which inspired Sun Microsystems, Rackspace Cloud, VMware and others to follow. In 2006, he co-founded Cloudscaling and since then has led teams that built and deployed cloud infrastructure for more than two dozen clients globally.

Randy was an early and vocal supporter of the OpenStack project, and led the teams that deployed the first public OpenStack storage cloud (Swift) outside of Rackspace, and the first public OpenStack compute cloud (Nova). He is a founding Board Member of the OpenStack Foundation. He also popularized the cloud server "pets vs. cattle" meme.

Randy blogs at Cloudscaling and Simplicity Scales, as well as GigaOm, CloudAve, O’Reilly Radar, TechCrunch and others. He is consistently recognized as one of the most influential social media voices in cloud computing. He is frequently interviewed in the media, and he speaks at dozens of industry events annually.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.