Cloud Computing Andrew Stromme and Colin Schimmelfing
What is cloud computing? At first glance, it appears to be a large amount of corporate- speak masquerading as a real thing to get $$ Turns out, it's not a scam... But there is still a lot of terminology/hype to wade through...
Basic Overview Cloud computing basically refers to any type of system in which 'computing resources' normally hosted in-house is instead located 'in the cloud' You're going to have to pay, but probably cheaper than doing it yourself- economies of scale, etc. NOT that is distributed computing, slightly different This could be: hosting blackboard for the college CPU-intense workloads running at an external company overflow web servers if your site goes viral
Disambiguation of terms Many, many different forms of 'cloud computing' (That term is about as vague as 'Web 2.0') Software as a Service (SaaS) Essentially when you interact with the 'cloud' and you care about the software running without glitches Example: o If Swarthmore's Blackboard were hosted off-site interact with it in the same way not need to pay an ITS salary not need to cool the server room would need to pay who hosts
Disambiguation of Terms, Part 2 Utility Computing Storage or Computing- no frills attached In the Blackboard model: interact with it in the same way now you pay someone maybe part-time not need to cool the server room would still need to pay who hosts More likely you will use it for CPU-intense or other resource intense applications Term comes from comparison to the power grid
Amazon Elastic Compute Cloud (EC2) On demand server instances Management via a web interface Storage handled by S3 Payment by the hour Fall Amazon introduces EC2 Fall EC2 drops beta status Jan Microsoft Azure released
EC2 vs Virtual Dedicated Pricing Model - Monthly vs Hourly Storage Model - Local vs S3 Scalability - None vs Server Based
Using EC2 An EC2 instance consists of: 1.Kernel (Linux 2.6.x, Windows) 2.Disk Image (AMI) 3.Storage AMI Examples: LAMP Stack Ruby on Rails Linux server Generic Windows server Drupal CMS Oracle Database server image
Load Balancing and Auto-Scaling Amazon provides an automatic load balancing service Individual requests are sent to servers with the smallest load More servers can be brought online when events are detected
Specs, rates Small Instance (Default) 1.7 GB memory, 1 EC2 Compute Unit (1 virtual core, 1 EC2 Compute Unit), 160 GB storage, 32-bit Large Instance 7.5 GB memory, 4 EC2 Compute Units (2 virtual cores, 2 EC2 Compute Units each), 850 GB storage, 64-bit Extra Large Instance 15 GB memory, 8 EC2 Compute Units (4 virtual cores, 2 EC2 Compute Units each), 1690 GB storage, 64-bit Can have up to 68.4 GB mem, 26 EC2 Compute Units
Future... Servers start to become more generic. One particular server is less important Programmers will need to write web applications that can run on many servers Pay for currently needed capacity, not the possible future capacity
References Wikipedia articles on EC2, Sun Cloud, Azure Services | amazon-ec2 Cloud Application Architectures: Building Applications and Infrastructure in the Cloud - George Reese
Rates Vary by location, OS, config, etc. (This table and the specs came from Amazon's EC2 advertising page)