In this paper we propose a methodology for implementing probabilistic guarantees of instance reliability in the Amazon Spot tier. Amazon offers ``unreliable'' virtual machine instances (ones, indeed, that may be terminated by Amazon in response to changing demand for its other cloud products) at a potentially large discount relative to ``reliable'' on-demand and reserved instances. Our method predicts the ``bid values'' that users can specify to provision unreliable EC2 Spot Instances which ensure at least a fixed duration of execution with a given probability.
We illustrate the method and test its validity using spot pricing data from Amazon post facto, both randomly and using real-world workload traces. We also test the efficacy of the method experimentally by using it to launch instances in the Spot tier, and then observing the instance termination rate. Our results indicate that it is possible to obtain the same level of reliability from unreliable instances that the Amazon service level agreement guarantees for reliable instances with a greatly reduced cost.