SocialTwist Tell-a-Friend

Scaling with Clouds

By Jeff Fedor, Terry Goertz on February 29, 2008 - Comments (View)
Your experienced guide to the Amazon Web Services.

Your company is growing and so are your infrastructure costs. Looking for alternatives? No doubt you’ve encountered the term “cloud computing”. The best known provider of cloud computing is Amazon. We can tell you from experience that Amazon Web Services (AWS) are worth careful consideration. We’ve designed and built systems that leveraged AWS to deliver solutions that simply wouldn’t be feasible in a co-location or managed service environment. This is the first in a series of articles on designing, hosting and managing your software on Amazon Web Services.

Amazon provides a full suite of services designed to solve your growth needs through on-demand scalability, processing and storage. Elastic Compute Cloud, better known as EC2, provides processing in a tiered format ranging from a single virtual core with 1.7 GB of memory and 160GB of non-persistent storage to 8 virtual cores with 15GB of memory and 1690 GB of non-persistent storage. To use EC2 you prepare an Amazon Machine Image (AMI) with your preferred Linux distribution. You then can bring online as many instances of this machine image as your system and load requires. You pay only for the hours your EC2 instances run for.

Amazon Simple Storage Services (S3) is used for persistent storage. Storage on S3 is unlimited and can be accessed from EC2 instances or directly from the web. Under the hood S3 uses the same infrastructure that Amazon uses to run its stores globally. Like EC2, you only pay for what you use. You can store and retrieve 2GB of data per month for less then a $1.

A typical part of any system is communication between distributed services. This backbone of your system requires reliable, fast and inexpensive message queueing. Amazon solves this need with Simple Queue Service (SQS). SQS is very cost effective—a user can send half a million messages for under $1.

Amazon services greatly reduce the barrier of entry and have been responsible for the launch of several successful Web applications. Amazon is game changing because you no longer have to purchase oodles of hardware to handle peak user load. Instead, you just bring up additional instances as your load dictates and then shut them down when the additional capacity is no longer needed. And because you only pay for what you need, your computing costs truly follow a utility model.

Cloud computing goodness doesn’t come without risks and trade-offs. Currently some of the services are in beta and lack a service level agreement. EC2 instances have non-persistent storage and consideration needs to be given around data availability. IP addresses are not guaranteed so DNS propagation becomes a factor for service consistency. Lastly, no service is infallible; recently Amazon suffered an outage affecting access to S3 and SQS services.

The cost, scalability and growth potential benefits far outweigh the risk associated with AWS. Despite the early stage of cloud computing, best practices are emerging to minimize these risks and harness the benefits. In our next article we’ll outline design considerations and potential stumbling blocks in moving your system to AWS.

Share this story
Tweet this on Twitter Share on Facebook Send to Stumbleupon Digg this? Digg it. Share via Email

Comments

Jim Murphy Vote-kill Vote-no Vote-yes Jim Murphy
mar 06 2008 09:21
9 Reputation Points

Cloud computing is such a game changing technology area I’m psyched to see people writing about it!

Its game changing because of the cost and “elasticity” of the deployment platform and its impact of software architecture.

When considering the alternatives – buying or leasing static rack space where you have free reign over the entire stack from OS on up the economics are a no brainer. Talk to you investor or CFO about transitioning to low variable cost from a high intial fixed cost takes a ton of $ risk out of new project.

Couple that with the elasticity part – the ability to bring compute/storage capacity online to tackle particular problem only if and when you need it – and you get big opportunities that have never before been possible.

In my limited experience with AWS the power does come cheap in terms of metered rate but not in terms of complexity and management. You really need to know what you’re doing to orchestrate all the moving parts.

I’m keen to hear more…

Definitely tuned into this series.

Jim

  Edit (for another )
Jeff Fedor Vote-kill Vote-no Vote-yes Jeff Fedor
mar 08 2008 10:29
1 Reputation Point

Jim,

thanks for the comments. Low variable costs are definitely the appeal from the CFO/CEO standpoint. The elasticity of computing resources are the appeal for anyone who has had to handle sudden and unexpected user load.

There is definitely a mind-shift when it comes to AWS. We’re not going to be able to get into all the technical nitty gritty in our articles but we’ll cover the big shifts and how they impact an organization.

  Edit (for another )
Jeff Fedor Vote-kill Vote-no Vote-yes Jeff Fedor
mar 12 2008 07:04
1 Reputation Point

Just to clarify—the drawing of Terry and I is courtesy of my son and daughter. You can read the details on my blog at: http://buzzpressure.com/2008/02/29/scaling-with-clouds/

  Edit (for another )
blog comments powered by Disqus