1 / 13

The Cloud Platform: A Vision for the Science of Cloud Computing for the Next Decade

The Cloud Platform: A Vision for the Science of Cloud Computing for the Next Decade. Chandra Krintz Computer Science Dept. Univ. of California, Santa Barbara http://www.cs.ucsb.edu/~ckrintz http://appscale.cs.ucsb.edu NSF Cloud Workshop March 17, 2011. public cloud computing.

Jims
Download Presentation

The Cloud Platform: A Vision for the Science of Cloud Computing for the Next Decade

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Cloud Platform: A Vision for the Science of Cloud Computing for the Next Decade Chandra Krintz Computer Science Dept. Univ. of California, Santa Barbara http://www.cs.ucsb.edu/~ckrintz http://appscale.cs.ucsb.edu NSF Cloud Workshop March 17, 2011

  2. public cloud computing • 3 types: as-a-Service (aaS) • Infrastructure: Amazon Web Services (EC2, S3, EBS) • Virtualized, isolated (CPU, Network, Storage) systems on which users execute entire runtime stacks • Fully customer self-service • Open APIs (IaaS standard), scalable services • Platform: Google App Engine, Microsoft Azure • Software: Salesforce.com

  3. private / open-source cloud computing • 3 types: as-a-Service (aaS) • Infrastructure: Amazon Web Services (EC2, S3, EBS) • Open IaaS offerings exist for private/hybrid use • Eucalyptus – Amazon AWS API emulation on private cluster, transparent hybrid solution • Other APIs: Rackspace/OpenStack, CloudStack, OpenNebula • Platform: Google App Engine, Microsoft Azure • Software: Salesforce.com

  4. public cloud computing • 3 types: as-a-Service (aaS) • Infrastructure: Amazon Web Services (EC2, S3, EBS) • Virtualized, isolated (CPU, Network, Storage) systems on which users execute entire runtime stacks • Fully customer self-service • Open APIs (IaaS standard), scalable services • Platform: Google App Engine, Microsoft Azure • Scalable program-level abstractions via well-defined interfaces • Enable construction of network-accessible applications • Process-level (sandbox) isolation, complete software stack • Software: Salesforce.com • Applications provided to thin clients over a network • Customizable

  5. why focus on the platform (PaaS) ? • The platform is the cloud runtime • Just as IaaS (infrastructure) is the cloud operating system (OS) • Platform abstracts complex, low-level details of IaaS • Impacts development as well as system/application behavior

  6. why focus on the platform (PaaS) ? • The platform is the cloud runtime; IaaS is the cloud “OS” • Platform abstracts complex, low-level details of IaaS • Impacts development and system/application behavior • Programmer productivity (target: developer vs sys admin) • Development, debugging, testing, configuration, deployment • “Write-once/Run-anywhere” for the cloud • Portability (across an growing sea of IaaS APIs / consoles) • Lockin avoidance and ability to “test-drive” public cloud offerings • Public/private/hybrid choice, thus competition • Broaden developer base: scientists, financial experts, data analysts, educators, … • Via a variety of high-level programming languages, frameworks, and IDE support

  7. why focus on the platform (PaaS) ? • The platform is the cloud runtime; IaaS is the cloud “OS” • Platform abstracts complex, low-level details of IaaS • Impacts development and system/application behavior • Availability of application-level knowledge/behavior/events • Profiling/monitoring/sampling • Individual services, applications, application workloads • Bug isolation and debugging support • Security and performance anomolies • Multi-tenent interference and compatibility • System wide resource availability, capability, performance • Control: dynamic performance and cost adaptation • SW updates, scheduling, placement, cost, optimize/specialize • Cross-cloud (hybrid) execution and service use • Can coordinate with & provide feedback to IaaS layer

  8. platform design apps & app components • Cloud platform provides • Multi-language API implementation • Local/private implementations • Via available public cloud services • App/Resource monitoring • Optimization/adapation • Elasticity (growing/shrinking of application components on demand) • Interoperation with IaaS • SLA (re-)negotiation • VM starting/stoping • VM reuse • Configuration/deployment of and access to services • Cross/multi-cloud (hybrid) support • Backup/recover of data • Access to different services • User locality • Fault tolerance, high availability • Pluggable, extensible, scalable, performant … APIs API imple- mentation cloud platform IaaS, virtualized clusters Python Ruby Java . . .

  9. platform design apps & app components • APIs • Emulate popular/standard public cloud interfaces • Engender user community • Evaluate using real applications • Initial app domain: web services • Data management • Database, key-value store, files/blobs, transactional semantics, caching • Users • Messaging, email, authentication • Tasking • Response-driven • Background / periodic • Web access • Fetch, export, user interaction • Data analytics • Map-reduce … APIs API imple- mentation cloud platform Monitoring Elasticity Opt/adaptation Service config Hybrid support VM/IAAS control Fault tolerance Backup/recovery IaaS, virtualized clusters Python Ruby Java . . .

  10. appscale: enabling cloud platform research C++/MPI apps & app components Python *Ruby Java X10 R … APIs API imple- mentation appscale Monitoring Elasticity Opt/adaptation Service config Hybrid support VM/IAAS control Fault tolerance Backup/recovery Eucalyptus Amazon AWS Xen, KVM, … • Scalable, extensible distributed system • Open source, extant community • Emulates Google App Engine • Leverages existing tools/services • Automates distributed configuration and deployment using private clusters • Hybrid (public/private) cloud support

  11. appscale: enabling cloud platform research C++/MPI apps & app components Python • APIs • Data management • MySql, Cassandra, HBase, Hypertable • AWS SimpleDB, Azure SQL, Bigtable • Distributed transaction support • Memcache, blobstore • Users • Messaging, email, authentication • Tasking • Cron, task queues • Web access • Fetch, export, user interaction • Computationally intensive • Parallel/concurrency support • MPI, X10 • Distributed simulation (biochemistry) • Data analytics • Map-reduce (hadoop, pig, hive) • R, Matlab • Yahoo! S4 (streaming) • Steering: Elasticity control *Ruby Java X10 R … APIs API imple- mentation appscale Monitoring Elasticity Opt/adaptation Service config Hybrid support VM/IAAS control Fault tolerance Backup/recovery Eucalyptus Amazon AWS Xen, KVM, … • Scalable, extensible distributed system • Open source, extant community • Emulates Google App Engine • Leverages existing tools/services • Automates distributed configuration and deployment using private clusters • Hybrid cloud support

  12. appscale: enabling cloud platform research C++/MPI apps & app components Python • Potential key research directions • Data management • Multi-tenency • Specialized for domain • Optimization, specialization • Components, services, system, cloud • Programming language support • Interpreter and JIT optimizations • Cloud-aware language extensions • Debugging and testing • Software evolution and live updates • Support for other application domains • Computationally and data intensive • Fault tolerance • Elasticity, placement, scheduling • Energy awareness • Hybrid cloud support • PaaS / IaaS interoperation • Mobile device integration • Software stewardship/VM management *Ruby Java X10 R … APIs API imple- mentation appscale Monitoring Elasticity Opt/adaptation Service config Hybrid support VM/IAAS control Fault tolerance Backup/recovery Eucalyptus Amazon AWS Xen, KVM, …

  13. appscale http://appscale.cs.ucsb.edu • Thanks! • Leads: Chris Bunch, Navraj Chohan • Development and research team: Maciej Baranski, Jovan Chohan, Nupur Garg, Jonathan Kupferman, Yiming Li, Nagy Mostafa, Yoshihide Nomura (Fujitsu), Kowshik Prakasam, Bing Wei, Michal Weigel • UCSB Cloud Computing • Divy Agrawal, Amr El Abbadi, Chandra Krintz, Rich Wolski, Ben Zhao, and others http://www.cs.ucsb.edu • Support • Google, IBM Research, National Science Foundation

More Related