Thursday, February 11, 2010

Amazon Spot Instances - Cool Idea to rent out Unused Compute Resources - REALLY??

Amazon had recently launched the Spot Instances functionality to its EC2 Public Cloud. This allows Amazon to auction the unused compute capacity in its Datacenter. Just got a chance to dig a bit deeper (thanks to our IT Admin) into the Spot Instances Model. Whenever you instantiate a Spot Instance, you can specify the following parameters:

1. The max price for the instance
2. The duration in which to keep the instance running
3. Persistance - Will restart the instance even if it was terminated because of a lesser bid price.

Based on the Supply and Demand (not sure how the algo functions though), Amazon calculates the Spot Price at regular intervals and as long as my quoted max price is more than the spot price, my instance keeps running - and I get billed only for the Spot Price. Based on current price history, the spot price is usually 2-3 times cheaper than the normal instances - the only catch being that the uptime of you VMs is not guaranteed - can be terminated if the bid price is lesser.

On the surface this sounds like a cool billing model from Amazon - specially suited for compute intensive number crunching workloads. But on digging a bit deeper, if I can set a REALLY HIGH max price, say $1 per hour, then my VM is guaranteed to run always, and I get billed only for the spot price - ie 2 to 3 times lesser. Would that encourage everyone (ppl using the normal instances too) to move to spot instances, thereby reducing the revenue for Amazon?

I guess, as more ppl migrate to spot instances, that would increase the spot instance price to go greater than the normal instance price. But yet, I believe that atleast in the mid term, if more ppl realize the benefits of spot instance and migrate to it, Amazon's Smart move to rent out its unused compute capacity can backfire!!!

Your thoughts???

No comments: