Cloud Computing

1,435 views
1,350 views

Published on

Introduction to cloud computing, with a short presentation of Amazon EC2, Windows Azure and Google AppEngine. Originally presented at Simula Research Laboratory 26 March 2009.

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,435
On SlideShare
0
From Embeds
0
Number of Embeds
20
Actions
Shares
0
Downloads
292
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Cloud Computing

  1. 1. Moving to the clouds a cloud computing introduction March 26 2009 Christian Mikalsen
  2. 2. Outline • Introduction and some background • Cloud characteristics • Infrastructure (Amazon EC2) • Platforms (Azure, AppEngine, Scalr) • Challenges • Case study: Cloud search service 2
  3. 3. Cloud computing 3
  4. 4. Cloud computing • Software as a Service • Web 2.0 with “Internet-centric services” • Gmail, SalesForce, Google Apps • Infrastructure/Platform as a Service • Access computational resources on demand • My focus! 4
  5. 5. Background
  6. 6. Grid computing • Often found in scientific environments. • Motivation: high performance, improving resource utilization. • Aims to create illusion of a simple, yet powerful computer out of a large number of heterogeneous systems. • Jobs are submitted and distributed on nodes in the grid. 6
  7. 7. Grid computing 7
  8. 8. Grid vs. cloud computing Area Grid Cloud Motivation Performance, capacity Flexibility and scalability Infrastructure Owned by participants Provided by third party Business model Share costs Pay-as-you-go Virtualization In some cases Prevalent On-demand infrastructure, Typical applications Research, batch jobs web applications Advantages Mature technology Low entry barrier, flexible Initial investment, less Open issues, third-party Disadvantages flexibility dependence 8
  9. 9. Virtualization • “Abstraction of computer resources” • Run multiple virtual machines on a physical machine. • Controlled by a Virtual Machine Monitor (VMM), often called a hypervisor. • HW/SW/hybrid implementations possible. • Enabling technology for cloud computing. 9
  10. 10. Virtualization • Provides... • flexibility to evolve underlying hardware • flexibility to dynamically provision VMs • isolation (security and performance) • improved hardware utilization • (load balancing by migration) 10
  11. 11. Virtualization • Paravirtualization • OS is aware of and communicates with hypervisor. • Allows for more efficient virtualization by replacing slow mechanisms (such as HW interrupts). • Open source Xen hypervisor is commonly used in cloud computing. 11
  12. 12. Cloud computing
  13. 13. Motivation • Pay-as-you-go (utility computing) • No initial investments • Reduced operational costs • Scalability • Exploit variable load and bursts • Scalable services provided • Availability (replication, avail. zones) 13
  14. 14. Cloud ontology SaaS PaaS IaaS Toward a Unified Ontology of Cloud Computing. Youseff, Lamia, University of California, Santa Barbara. 14
  15. 15. Use cases • Scientific experiments • Web services with bursts or variable load • “Black friday” • Slashdot-effect • Temporary infrastructure • Test environments • Projects 15
  16. 16. Cloud characteristics • Scale-out, not scale-up • Horizontal scaling (add more servers) • Requires different development approach • Loose coupling • Required for dynamic scaling • Sandboxed environment • Limits/constraints 16
  17. 17. Cloud characteristics • Failures will occur • Instances can crash/disappear/migrate • Requires proper state management • Unknown physical infrastructure/topology • Variable bandwidth/latency/locality etc. • Currently little support for QoS • Development and platform constraints 17
  18. 18. Infrastructure and platforms
  19. 19. Amazon EC2 • Infrastructure as a Service provider, and current market leader. • Data centers in USA and Europe • Different regions and availability zones • Uses Xen hypervisor • Users provision instances in classes, with different CPU, memory and I/O performance. 19
  20. 20. Amazon EC2 • Users provision instances with an Amazon Machine Image (AMI), packaged virtual machines. • Instances ready in 10-20 seconds. • Amazon provides a range of AMIs • Users can upload and share custom AMIs, preconfigured for different roles. • Supports Windows, OpenSolaris and Linux 20
  21. 21. Amazon EC2 • Flexible, but low-level (roll-your-own) • No built-in load balancing or scaling (yet) • Integrated with services: • Simple Storage Service (S3) • Scalable Queue Service (SQS) • SimpleDB • and more... 21
  22. 22. Amazon EC2 • Control interface • HTTP REST/SOAP API • Command line tools • Eclipse plugin • Able to implement external monitoring and scaling using interface. 22
  23. 23. Amazon EC2 • Pricing based on instance hours • + bandwidth charges • + service charges (S3, SQS etc.) • SLA w/ some availability guarantees 23
  24. 24. Eucalyptus • Open source cloud implementation from University of California, Santa Barbara. • Makes it possible to host a private cloud on your hardware. • Compatible with EC2 interfaces. • Intended for research and experimentation. • Limited support for services like S3. 24
  25. 25. Windows Azure • Platform as a Service (in pre-release) • “Cloud OS” • .NET libraries for managed code like C# • Web and worker roles (w/queues) • Topology described in metadata • Live upgrades (w/upgrade zones) 25
  26. 26. Google AppEngine • Platform as a Service • Target: Web applications • Provides custom Python runtime environment, with a specialized version of the Django framework. • Integrated with Google data store (Bigtable), and other “Internet-scale” infrastucture. 26
  27. 27. Challenges and case study
  28. 28. Cloud challenges • Bandwidth and latency • Lack of standards and portability • “Black box”-implementations • Security and lack of control • Immature tool and framework support • Legal issues (ownership, auditing etc.) • Limited Service Level Agreements (SLAs) 28
  29. 29. Cloud search service • Case study in cooperation with FAST. • Some customers have up to hundred servers dedicated to FAST ESP. • Motivation • Exploit variance in traffic and load • Reduce operational costs 29
  30. 30. Cloud search service • Can a search service feasibly be offered in a cloud environment? • Requires acceptable response time • Must be scalable (on and across servers) • Develop architectural model and perform benchmarks. • Focus on search, not indexing etc. 30
  31. 31. Cloud search service 31
  32. 32. Response time • Perceived response time should be under 400-500ms for end users, also under load. • Some latency is unavoidable due to HTTP requests between client and cloud, and cloud and cloud storage service. • What kind of response time can be expect from the cloud storage service? 32
  33. 33. Throughput • What kind of throughput can we expect in our cloud search service? • How is the throughput limited by the cloud storage service? 33
  34. 34. Cloud search service • Work in progress... • Break down response time further, and isolate bottlenecks. • Test alternative index locations (EBS, SimpleDB...) • Suggest a reasonable architecture for a cloud search service. 34
  35. 35. Questions? 35

×