15
Cloudy… with a chance of change Dennis Stevenson ourtesy kevindooley http://www.flickr.com/photos/pagedooley/4340727578/

Cloudy with a chance of change

Embed Size (px)

Citation preview

Page 1: Cloudy with a chance of change

Cloudy… with a chance of change

Dennis Stevenson

Photo Courtesy kevindooley http://www.flickr.com/photos/pagedooley/4340727578/

Page 2: Cloudy with a chance of change

About Me

• Director of SaaS at MediServe– Medical Software Solutions – Chandler Arizona, USA– Agilis/FSoft client for 2 years– Implementing “Project Murdock” – a SaaS solution for the

US healthcare industry• Blogger

– http://it.toolbox.com/blogs/original-thinking– Search topics: SaaS and Cloud Computing

• Other– http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000006244

Photo courtesy of JillClardy http://www.flickr.com/photos/jillclardy/4408775913/

Page 3: Cloudy with a chance of change

Discussion Topics

• What is Cloud Computing?

• How did we get to Cloud Computing?

• Why do people want Cloud Computing?

• What makes Cloud Computing work?

Photo courtesy of florin_mogos http://www.flickr.com/photos/florin_mogos/2523984446/

Page 4: Cloudy with a chance of change

Cloud Computing Confusion

Cloud Computing is a

major tech buzz word today…

Photo courtesy of Dru! http://www.flickr.com/photos/druclimb/457930888/

but it lacks any standard definition whereby it can be measured or quantified

Page 5: Cloudy with a chance of change

Cloud Computing Quotes

• Cloud computing is Internet-based computing (wikipedia: Cloud_Computing)

• Cloud computing is a type of computing that is comparable to grid computing (webopedia: Cloud Computing)

• Cloud computing—not to be confused with grid computing, utility computing, or autonomic computing—involves the interaction of several virtualized resources (Rackspace)

Photo courtesy of James Jordan http://www.flickr.com/photos/jamesjordan/2751393381/

Page 6: Cloudy with a chance of change

A Brief History of Cloud ComputingMainframe Computing

Centralized infrastructure, Dumb terminals, High controlHigh Unit Cost of expansion

ClientServer

Distributed infrastructure, Distributed controlLowered Unit cost of expansion, flexibility

ApplicationServer Provider

Remote infrastructure, Managed OperationsSoftware runs on 2nd party infrastructurePurchase operational expertise

SaaS…PaaS…IaaS…

Remote infrastructure, Managed OperationsConsumer: Purchase solution not software/infrastructureDeveloper: Develop software to run on 3rd party infrastru.

CloudComputing

Public meme applied to matters of software which runs on 3rd party infrastructure, leveraging the internet. Ongoing discussion about Private Cloud vs. Public Cloud

High Complexity

Internet

Photo courtesy of Lisa Nolan http://www.flickr.com/photos/lisanolan/503198966/

Page 7: Cloudy with a chance of change

Often Confused Terms

• SaaS – Software as a Service (Gmail, Salesforce.com)• PaaS – Platform as a Service (Force.com)• IaaS – Infrastructure as a Service (Amazon EC2, S3)

Photo courtesy of Chop1n http://www.flickr.com/photos/chop1n/372428498/

Page 8: Cloudy with a chance of change

What’s Cloud Computing All About?

Purchase computing capacity at maximum price efficiency per

computing unit

Deploy computing at minimum levels to meet

application requirements “as

needed”

Scale up/down to meet actual demand

Cloud Providers Charge customers for actual

capacity used, not servers purchased or

managed

Photo courtesy of Chocoloategirl64 http://www.flickr.com/photos/chocolategirl64/887763318/

Page 9: Cloudy with a chance of change

Cloud Computing Technology• Virtualization

– Divide up economically efficient servers to consumable VM images and deploy across one or many clients to optimally consume server capacity

– Enables horizontal scaling – adding capacity by adding more virtual machines• Self Service Tools

– Allow customers to see and manage their virtual machines and have control over how/when they are running and their status

– Allow customers to select a standard VM image or customize their own VM image to meet their requirements

• Billing Mechanism– Measure the number of units that a customer actually uses and submit an invoice

for the related price for that consumption• Dynamic Load Balancing

– Effectively manage infrastructure utilization across a varying number of machines to ensure traffic is evenly distributed

– Allow adding/removing VMs from the load balancer as demand dictates

Photo courtesy of MorBCN http://www.flickr.com/photos/bcnbits/2383740252/

Page 10: Cloudy with a chance of change

Cloud Computing Example

• Application peaks at 3 CPU and 8 GB RAM(1 hour/day)

• Normally it runs at 2 CPU and 4 GB RAM (11 hours/day)

• Overnight it runs at 1 CPU and 2 GB ram (12 hours/day)

• How do I provision hardware for this application?

Photo courtesy of Reini68 http://www.flickr.com/photos/stansich/433484931/

Page 11: Cloudy with a chance of change

Simple Cloud Computing Math

Traditional (On Premise)• Purchase 4 CPU server with

10 GB RAM for $9,000• Spend $10,000 per year in

salary cost supporting the server.

• 3 year cost = $39,000 (702,000,000 VND)

• $0.37 per available CPU Hour (105,120 CPU Hours)

Cloud Computing• Purchase 40,515 CPU Hours

at $0.27 per hour• Total Cost = $11,081

(199,453,125 VND)• 28.4% of On Premise

Cloud Provider • Pays $46,000 for 8CPU/12 GB

RAM machine = 210,240 CPU Hours

• Charges 25% premium/margin• Sells remaining CPU Hours to

other clients

Photo courtesy of Paraflyer http://www.flickr.com/photos/paraflyer/452122094/

Page 12: Cloudy with a chance of change

More Cost Details

Photo courtesy of Whirling Phoenix http://www.flickr.com/photos/kelloggphotography/3941066064/

Page 13: Cloudy with a chance of change

Further Questions to Ask

• After 1 year the application peaks at 5 CPUs and 18 GB RAM. How do I scale?

• I launch a second product which requires a constant 2 CPUs and 4 GB RAM. How do I provision it?

• I don’t want a hardware failure to bring down my application. How do I plan for High Availability?

Photo courtesy of Alles_schlumph http://www.flickr.com/photos/29487767@N02/3592571491/

Page 14: Cloudy with a chance of change

Application Considerations

• Stateless applications

• Services Orientation

• Strong decoupling of application layers

• OS Agnostic – Use Cloud APIs (abstraction)

• Standardization over customization

Photo courtesy of Kables http://www.flickr.com/photos/kables/6324973/

Page 15: Cloudy with a chance of change

Questions & Answers

Photo courtesy of *sapiel http://www.flickr.com/photos/saipal/199661563/