the A Survey of Cloud Computing Jesse Dunietz SASS Talk Cloud service = unified-looking, networkaccessible resource pool On-demand selfservice Large, homogeneous resource pool Ubiquitous access over network Room for ondemand increase of resources Cloud service looks like single, localeindependent entity Self-monitoring for provider and consumer The central ideas of CC are not new. • The grand vision: J.C.R. Licklider’s “intergalactic computer network” (1963) • Utility computing • “If computers of the kind I have advocated become the computers of the future, then computing may someday be organized as a public utility just as the telephone system is a public utility…The computer utility could become the basis of a new and important industry.” --John McCarthy (1961) • Mainframes desktop computing utility/cloud Grid computing: an intermediate step • Grid is “a system that: • coordinates resources that are not subject to centralized control • using standard, open, general-purpose protocols and interfaces • to deliver nontrivial qualities of service” (--Ian Foster) • Distributed, parallelised computation • Loosely coupled • Extension of clustering • Computing as accessible as the electric grid • E.g. Folding@Home, SETI@Home (BOINC) Grid computing: an intermediate step Recent years have seen an explosion of cloudlike services. • 1999: salesforce.com • 2002: Amazon Web Services • 2005: Zoho Office • 2006: Amazon EC2 • 2007: Gmail/Google Apps • 2009: Chrome OS announced Recent years have seen an explosion of cloudlike services. Cloud computing depends on many recent software technologies. • Late 1990’s: widespread broadband Internet • Late 1990’s: OS virtualisation • Xen hypervisor developed at Cambridge CL! • 2005-2006: Intel/AMD offer hardware-assisted virtualization • Server farm management (scaling) “As a service” (XaaS) is the new computing paradigm. Google Docs, Photoshop Express J2EE, Google App Engine Amazon EC2, GoGrid, Microsoft Azure Infrastructure Software Platform Cloud deployments come in all shapes and sizes. • Private cloud • Public cloud • e.g. Amazon • Community cloud • e.g. http://www.scienceclouds.org • Hybrid CC has obstacles, but offers many benefits. Disadvantages Advantages Privacy Cost savings Reliability HW/OS independence ([S|I]aaS) Migration Server security Legal issues “Thin” clients for wimpy devices Account security Update speed Lock-in (loss of control) New uses for cloud technology are constantly popping up. • Rich web applications • Computing as a utility (IaaS) • New “back office” functionality applications • E.g. Apple Push Notification Service • Anywhere, anytime computing Not everyone’s head is in the clouds. • A few treasures from Richard Stallman: • • “[The] term [‘cloud computing’] is too nebulous to refer to anything in particular. If it has any meaning, it can only be, ‘Don't pay attention to who controls your data or your computing. Just trust every company.’” “The issue I've raised is about a more specific kind of scenario: Software as a Service. We can avoid it, and avoiding it is the only way to maintain our freedom.” • Another from Oracle CEO Larry Ellison: • Cloud computing has been defined as “everything that we currently do” and will have no effect except to “change the wording on some of our ads” • Recent outages reduced trust in reliability • Greenpeace has complained about energy usage CC is still full of unsolved problems. • Interoperability, generic design blueprint • Making sporadic self-healing converge on consistency • Formal models for “loose coupling” vs. brokenness “Everything we think of as a computer today is really just a device that connects to the big computer that we are all collectively building.” -- Tim O’Reilly, CEO, O’Reilly Media