What We Can Do in the Cloud (1) -Tutorial for Cloud Computing Course- Mikael Fernandus Simalango WISE Research Lab Ajou University, South Korea
Overview qtoday s highlight:» Cloud Services and Cloud Management Services» Virtualization Primer» Perspectives of a Cloud Computing Project» Detailed Views of Existing Cloud Solutions» WISE on Cloud (only for Ajou students)
Cloud Services and Cloud Management Services
Cloud Services qcore: API cloud services Application service SaaS (Software as a Service) Platform service PaaS (Platform as a Service) Infrastructural service IaaS (Infrastructure as a Service) qextra: XaaS (X as a Service) Privacy as a Service, Test a Service, Accounting as a Service, CRM as a Service, Repository as a Service,, IT as a Service
Cloud Services (cont d) qcloud Services and Cloud Layers Cloud service types Cloud layers SaaS (Software as a Service) Application layer PaaS (Platform as a Service) Platform layer IaaS (Infrastructure as a Service) Infrastructure layer Virtualization layer HW
Cloud Services (cont d) qsaas (Software as a Service):» Software deployed as a hosted service and accessible by users over the internet Used on-demand and charged on utility basis» Examples of SaaS providers:
Cloud Services (cont d) qpaas (Platform as a Service):» Platforms built on top of virtualized infrastructure that can be used to deploy applications» Examples of PaaS solutions: Apache Hadoop Google App Engine Amazon Elastic MapReduce
Cloud Services (cont d) qiaas (Infrastructure as a Service):» Computing infrastructure (servers, storage, network) delivered on-demand and charged on utility basis» Examples of public IaaS providers: Amazon EC2 Rackspace cloud Joyent Gogrid
Cloud Services (cont d) qhow about private IaaS providers?» Private duality: Single tenancy Stricter SLA constraints» Private cloud: a cloud formed on top of internal infrastructure and/or privileged cloud infrastructure offered by public cloud provider Private cloud Internal infrastructure: Server-network-storage Provider infrastructure: Server-network-storage
Cloud Services (cont d) qbuilding a private cloud:» Virtualize legacy infrastructure APP APP APP APP APP MW APP MW OS MW OS MW OS MW OS OS MW OS HW HW HW Hypervisor HW» Integrate with public cloud infrastructure for more elasticity Requires cloud federation for resource orchestration Cloud management services can be necessary
Cloud Management Services qcloud management services:» Services that enable management functionalities to core cloud services Mostly management of cloud infrastructure (IaaS management): VM management Traffic management Load balancing and replication Fault recovery High availability management Performance monitoring etc
Cloud Management Services (cont d) qexamples of cloud infrastructure management services:» Open source solutions: Open Nebula Eucalyptus» Commercial solutions: Zeus Platform computing
Virtualization Primer
Virtualization Primer qvirtualization:» Provides abstraction and encapsulation of physical resources» Enables a pool of virtual machines that can be instantiated, terminated, migrated, suspended, deployed, copied, and destroyed qvirtualization is not a cloud service but it is a key enabler to cloud computing
Virtualization Primer qvirtual Machine Manager or Hypervisor:» A software-based actor that is responsible for virtualizing physical resources and managing communication between underlying hardware and instantiated virtual machines qtypes of hypervisor:» Type 1 hypervisor: runs directly on hardware» Type 2 hypervisor: runs on a host operating system
Virtualization Primer qtype 1 hypervisor: APP MW OS HW + Hypervisor = VM APP MW OS VM VM APP APP MW MW OS OS Hypervisor HW qexamples: Xen, KVM, VMWare ESXi, Citrix XenServer, Microsoft Virtual Server
Virtualization Primer qtype 2 hypervisor: APP MW OS HW + Hypervisor = APP MW VM VM APP APP MW MW OS OS Hypervisor OS HW qexamples: Oracle VirtualBox, Vmware Workstation, Microsoft Virtual PC, etc
Perspectives of a Cloud Computing Project
Perspectives of a Cloud Computing Project qtwo sides of a coin: + Innovation + Optimization + Invention + Ingenious solution
Perspectives of a Cloud Computing Project qplanning the project: Preliminary survey Define the problem to attack Define nature of project Invention Innovative project Set benchmark solution Find holes, missing features Innovation Inventive project Theoretical model Develop solution Performance and gain validation Model validation Testing Benchmarking
Perspectives of a Cloud Computing Project qsample project: Project Dummy A Problem: How can I know the topic that is hot on the net today? Domain: Data mining and information retrieval Nature of project: Innovation Benchmark solution: Twitter s trending topic Proposed solution: -Combine Twitter s trending topic with other sources: daily newspapers, social networking sites such as Facebook -Use ensemble method to get better conjecture of today s trending topic Test and deployment: Build Java code and deploy on GoogleAppEngine Crawl analysis is conducted on Amazon EC2
Perspectives of a Cloud Computing Project qproject Dummy A workflow: Twitter s trending topic World s trending topic URL list: 1. cnn.com 2. news.com.au 3. bbc.co.uk 4. Synonym-based classifier {Term_i,rank} Crawler Word filter Synonym-based classifier {Term_i,rank} Integrator classifier Synonym-based classifier {Term_i,rank}
Perspectives of a Cloud Computing Project qsample project: Project Dummy B Problem: How can we automate VM provisioning on hybrid cloud? Domain: VM management Nature of project: Invention Theoretical model: Put the definitions, lemmas, and theorems here Proposed solution: -Method and apparatus for automating VM provisioning on hybrid cloud using cloud supervising agent Test and deployment: Build architectural design and implementation of cloud supervising agent using Java MPI and test on existing IaaS clouds
Perspectives of a Cloud Computing Project qwhich way are you going?» Reflect your current understanding in cloud computing» Beware of the timeline» Match project complexity with your current knowledge, development skill, and available time
Detailed Views of Existing Cloud Solutions
Detailed Views of Existing Cloud Solutions qmore in discussion:» Amazon Web Services (IaaS and PaaS)» Eucalyptus Community Cloud (IaaS)» OpenNebula (IaaS)» Google App Engine (PaaS)» Apache Hadoop (PaaS)» Github (SaaS)
Detailed Views of Existing Cloud Solutions: Amazon Web Services qfor first-timers:» http://aws.amazon.com Login Signup
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qaws Management Console Amazon cloud services
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qamazon cloud services you may use in your project:» Amazon S3 (Simple Storage Service) -> bucketbased file storage system» Amazon EC2 (Elastic Compute Cloud) -> virtual computing environment on Amazon s infrastructure» Amazon Elastic MapReduce -> Amazon s platform for MapReduce implementation using Hadoop
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qamazon EC2: Create a virtual computing environment by using AMI (Amazon Machine Image)
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qamazon EC2: Each running AMI instance will have a public IPv4 address and be accessible via SSH
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qamazon Elastic MapReduce: Admin panel
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qamazon Elastic MapReduce: Job flow wizard
Detailed Views of Existing Cloud Solutions: Amazon Web Services (cont d) qbe careful with your financial expense when using AWS:» E.g. :Amazon EC2 standard Linux small ondemand instance, data in 10TB/m, data out 10TB/m in November 2010 $0.085/h or approx. 100 won/h (base) ~$0.1/GB or approx. 120 won/gb (data in) ~$0.15/GB or approx. 175 won/gb (data out) Monthly price: 30*24*$0.085 + 10*1024*$0.1 + 10*1024*$0.15 = $2621.2 ~ 3.040.350 won Plus the price of data storage in S3
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qeucalyptus: open-source cloud management software that implementes IaaS-style cloud computing using the existing Linux-based infrastructure qfor first-timers:» http://open.eucalyptus.com
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qeucalyptus Community Cloud:» A sandbox environment that can be used to testdrive and experiment with Eucalyptus» Free of charge (currently)» Register at: http://open.eucalyptus.com/communitycloud
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qfeatures of Eucalyptus Community Cloud: (20100913)
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qecc administrative GUI:
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qecc sample command line tool:
Detailed Views of Existing Cloud Solutions: Eucalyptus Community Cloud qwhen you may consider using Eucalyptus Community Cloud:» You want to get more familiar with IaaS cloud» Data processing in your project is bursty and not really big (the testbed is limited to 5GB of storage, 4 running instances, and 6 hours of instance lifetime)
Detailed Views of Existing Cloud Solutions: Github qgithub: version control system with social capabilities such as commenting and tagging qif you have ever heard of CVS and SVN, then Github also serves similar purpose but with different flavor qhosting an open source public project on Github is free qfor first timers:» http://github.com
Detailed Views of Existing Cloud Solutions: Github qsample project hosted on Github (Jquery):
Detailed Views of Existing Cloud Solutions: Github qwhen you may consider using github for your projects:» You want feedback from others about your code» You want your code to get more exposure» You are a fan of social application» You don t like SVN or CVS
WISE on Cloud
This section is not available in this public release
Special Notice q All company logos are copyrighted to the corresponding companies q The images in the header of title slide were taken from quickstart.com and incomingit.com q The image on the right top of each content slide was taken from sevensheaven.nl q The coin figure was taken from ancients.info