The Hidden Extras The Pricing Scheme of Cloud Computing Stephane Rufer
Cloud Computing Hype Cycle Definition Types Architecture Deployment Pricing/Charging in IT Economics of Cloud Computing Pricing Schemes Amazon EC2 Rackspace Windows Azure Terremark IBM Conclusions Use Case Discussion Table of Contents
Cloud Computing: Hype Cycle Gartner: hype around cloud computing is deafening Beyond the Peak of Inflated Expectations Little proven cloud centric strategies
Cloud Computing: Definition 3 key elements Appearance of infinite, on demand commuting resources Elimination of upfront commitment Ability to pay for resources as they are needed (payas-you-go) Elasticity of resources without premium Applications and hardware delivered as services over the Internet Service view of hardware
Cloud Computing: Types Saas (Software as a Service) Complete application stack Target: end user Paas (Platform as a Service) Software stack Target: Developer IaaS (Infrastructure as a Service) Hardware virtualization Target: Developer Platform developer
Cloud Computing: Architecture
Cloud Computing: Cloud Consumer Person or organization that uses the services of a cloud provider Browses service catalogs Requests services Sets up contracts (SLAs) Uses services
Cloud Computing: Cloud Provider Person or organization that makes a service available Installs infrastructure and software Maintains services and infrastructure Supports services Manages infrastructure and software
Cloud Computing: Cloud Broker Person or organization that mediates the relationship between cloud providers and cloud consumers in respect to use, performance and delivery Enhances services Aggregates services of multiple cloud providers Conducts service arbitrage, i.e. providing flexible and opportunistic pricing
Cloud Computing: Cloud Auditor Independent person or organization that examines and evaluates cloud services Makes assessments of cloud providers Verifies security controls, privacy impact and performance of service provider Publishes assessment results
Cloud Computing: Cloud Carrier Person or organization that functions as an intermediary between cloud providers and cloud consumers in respect to delivery of services (connectivity and transport) Provide access to services by means of network and telecommunication technology
Cloud Computing: Deployment Private Cloud Like private subnet Physical location: on or off premises High security needs Community Cloud Private cloud for a group of members Multiple separate entities with access rights Public Cloud Open for general public use Less strict security needs Hybrid Cloud Combination of cloud types Technology allows data/application portability In practice: lines are blurred
Charging/Pricing Charging: Object being charged Units of Trade (indivisible amount in a transaction) Here: Metrics (packet rate, delay etc.) Technical measure Pricing: Key role in a market environment How is the object being charged Bridges charging and billing Challenge: Charging/pricing mechanism that is scalable
Charging in Detail Countable element recorded and aggregated Need for charging transparency Relies on metrics Packet rate, packet size, delay
Charging in Detail: A4C Architecture Context-based charging model Robust recovers from faulty behavior Secure user s domain is protected Multidimensional accounting aggregate different service charges into one bill Scales well
Pricing in Detail Pricing scheme bridges: User optimization of resources Provider designing infrastructure and maximizing profit Pricing fairness Utility = cost Need for a common metric Should be transparent
Infrastructure Costs Economics of Cloud Computing Insufficient Capacity Time Opportunity Costs Predicted Demand Actual Demand Traditional Hardware (Hosting, Data Center) Capacity/load management Pay for used resource pricing based on utility
Economics of Cloud Computing Transfer of Risk Infrastructure costs Scaling costs Administration/Knowledge Transfer of fixed costs to variable costs But: New risk of Service Quality Volatility between instances Cost of execution
Pricing Schema: Amazon Different instance types On demand Reserved Spot Regional pricing differences Separate bandwidth charge Separate storage charge Free Tier Separate support products
Pricing Schema: Amazon On demand instances
Pricing Schema: Amazon Reserved instances
Pricing Schema: Amazon Spot instances
Bandwidth Pricing Schema: Amazon
Storage Pricing Schema: Amazon
Pricing Schema: Terremark General fees Instance Types: Unlicensed server Licensed server Software licenses No storage charges
General Pricing Schema: Terremark
Pricing Schema: Terremark Unlicensed server
Pricing Schema: Terremark Licensed server
Pricing Schema: Terremark Software license
Pricing Schema: Rackspace Server Pricing Linux or Windows Selection of server sizes Fixed bandwidth rate Additional service and account fee No storage charge
Pricing Schema: Rackspace Server Bandwidth
Pricing Schema: Windows Azure Virtual Machine Windows only Fix server sizes Many different packages Free Trial
Pricing Schema: Windows Azure Virtual Machine
Pricing Schema: IBM Cloud Virtual machine types 32 bit machines 64 bit machines Separate bandwidth charge Separate storage charge Many software image license possibilities
Pricing Schema: IBM Cloud 32 bit machines
Pricing Schema: IBM Cloud 64 bit machines
Pricing Schema: IBM Cloud Bandwidth
Storage Pricing Schema: IBM Cloud
Pricing: Conclusions Amazon: Wide configurability Little transparency, high support costs Terremark: Relatively transparent, No reserved resources Rackspace: Simple server pricing, support included Very little flexibility, hidden fees Windows Azure: Integrated into Windows environment Complex product IBM: Transparent pricing Platform dependence
Pricing: Conclusions Bandwidth charge always separate Many additional fees Different size instances Various degrees of platform dependence Complex billing Lack of transparency in pricing information Pricing pages hidden, difficult to access Different infrastructure packages difficult to compare
Use Case: Prerequisites 4 key elements CPU utilization Network utilization (bandwidth) RAM Storage Raw metrics form foundation for pricing scheme
Use Case: Not Considered Datastore Caching Cloudbursting Load balancing
Use Case: Raw Data 5 million page views per month 166 666 page views per day Based on 5 Million page views CPU: 195 hours Bandwidth: 30 GB in, 30 GB out RAM: 2 GB Storage: 30 GB
Use Case: Problems Dependency on underlying power CPU hours RAM latency Dependency on programming Does a waiting process free resources Internal bandwidth load balancing Not all providers present the same information Application use case is critical
Use Case: Results Charging becomes important What metrics are used Pricing scheme becomes important What is actually billable? The actual computation (application use) becomes important A lot of pricing intransparency/inconsistency
Use Case: Hidden Costs Example Gzip vs. raw transport 146 117 bytes of data Takes 9ms to gzip Single core CPU Compression ratio ca. 25%
Use Case: Hidden Costs Example Costs: CPU cost $0.10/hour Bandwidth cost $0.17/GB Basic Assumptions: 1 TB supports 7 524 871 page views
Use Case: Hidden Costs Example Raw transport price $174.00 for bandwidth (1 TB) Gzipped price $1.88 for cpu (18.88 hours) + $43.52 for bandwidth (250 GB) = $45.40 Savings: $128.60 or 0.000001899 cents per page view Opportunity costs of not gzipping html Reducing bandwidth is essential
Questions?
Discussion Why use cloud computing? When does it make sense and how is it better than traditional computing? What should be in the cloud and how can you determine this?
Discussion What is your opinion on the transparency of pricing information provided by cloud providers? What is the cloud pricing model? What could aid transparency?
Discussion How significant is the risk of performance differences between instances? Is this risk worth the price savings of not owning infrastructure? What happens when an app hangs? How fair is pricing? Utility = cost?
Discussion How significant is metering and how it is done in determining the actual price billed to the user? What is the influence of technical implementation details. Where are the hidden costs
Discussion Do you get the same guaranteed performance as with dedicated hardware? What about security implications? What are the implications of performance volatility?
References Michael Armbrust, Armando Fox, Rean Griffith, Anthony D. Joseph, Randy Katz, Andy Konwinski, Gunho Lee, David Patterson, Ariel Rabkin, Ion Stoica and Matei Zaharia: A View of Cloud Computing, Article, Communications of the ACM, Vol. 53, No. 4, April, 2010 Peter Mell, Timothy Granc: The NIST Definition of Cloud Computing, NIST Special Publication, Gaithersburg, September, 2011. http://csrc.nist.gov/publications/nistpubs/800-145/sp800-145.pdf Safiullah Faizullah and Ivan Marsic: Pricing and Charging for QoS, Conference Proceedings, IEEE, 2005 Hongyi Wang, Qingfeng Jing, Rishan Chen, Bingsheng He, Zhengping Qian and Lidong Zhou: Distributed Systems Meet Economics: Pricing in the Cloud, Conference Proceedings, Berkeley, 2010. Cristian Morariu, Martin Waldburger, Burkhard Stiller, An Integrated Accounting and Charging Architecture for Mobile Grids, Third International Workshop on Networks for Grid Applications, October 2006. Stringbuffer.com, The per page-view cost of hosting a resonably efficient GAE/J application, Blog entry, Sunday, May 3, 2009. http://blog.stringbuffer.com/2009/05/per-page-view-cost-of-hosting-resonably.html Paul Buchheit, Make your site faster and cheaper to operate in one easy step, Blog entry, Friday, April 17, 2009. http://paulbuchheit.blogspot.com/2009/04/make-your-site-faster-and-cheaper-to.html Gartner, Hype Cycle for Cloud Computing, 2011 David Mitchell Smith Publication Date: 27 July 2011 http://aws.amazon.com/ec2/ http://vcloudexpress.terremark.com/ http://www.rackspace.com/cloud/cloud_hosting_products/servers/ http://www.microsoft.com/windowsazure/ http://www.ibm.com/cloud-computing/us/en/