Presentation is loading. Please wait.

Presentation is loading. Please wait.

Intro to Cloud Computing. Source:

Similar presentations


Presentation on theme: "Intro to Cloud Computing. Source:"— Presentation transcript:

1 Intro to Cloud Computing

2 Source: http://www.free-pictures-photos.com/

3 Cloud Computing No longer the next big thing – the current big thing – Began in 2007 – IBM and Google “Blue Cloud” – Name cloud inspired by cloud symbol representing internet in diagrams

4 What is Cloud Computing? But what is it? Everyone has a different opinion on what it is Is it trendy? “The computer industry is the only industry that is more fashion-driven than women’s fashion” – Larry Ellison

5 Questions to answer What clouds have you used today (yesterday)? What is a cloud?

6 Cloud Computing Characteristics So what are its characteristics? Names describe it: On-demand computing, pay as you go, software as a service, utility computing Usually costs $$$, but cost-effective Virtualization Distributed and highly parallel approach Elastic Replication, replication, replication …

7 Applications What does cloud computing actually do? – Consider applications you may currently be running on laptop, desktop, phone, server – Cloud has them also, or can potentially bring them to you – Brings applications, views, manipulates, shares data

8 Cloud Computing Everyone has an opinion on what to use a cloud for – Applications on the internet – email, tax prep – Storage for business, personal data – Web services for photos, maps, GPS – Rent a virtual server, load software on it, turn it on /off, clone it if sudden workload demand – Store, secure data for authorized access (really?) – Use a platform including OS, Apache, MySQL, Python, PHP

9 What is Cloud Computing? Cloud is a metaphor for the internet Internet is:

10 Clouds Allow access to applications other than on local computer or internet connected device Instead, company hosts your application - Advantages? – No more licenses, service packs, etc. – Less hardware, etc. – Can access anywhere but as long as have internet connection

11

12 Potential Problems Internet connection Cloud site failure Sensitive information Application integration – (exchange info when local and on cloud)

13 Cloud Components 3 components – Clients – Datacenter – Distributed servers

14 Cloud Components Clients – Mobile Phones, PDAs – Thin no internal hard drives, lets servers do all work, displays info – Thick Laptops, web browsers – Which is the best? lower costs, security, power consumption, easy to replace, less noise

15 Data Center – Collection of servers – In large room in your building, across world Distributed Servers – Distributed data centers geographically disparate Robust if failure Dynamic datacenter so can increase as needed

16 Data Centers Redundancy – Redundancy is the key to the success of clouds – Google approach – cheap components that fail, so replicate all processing and storage Efficiency Utilization Management Virtualization

17 Questions to answer this semester IS CLOUD COMPUTING JUST A BUSINESS MODEL AND NOT A COMPUTING MODEL? IS THERE ANYTHING NEW IN CLOUD COMPUTING OR IS IT JUST DISTRIBUATED COMPUTING WITH A DIFFERENT NAME? IS IT REALLY ALL ABOUT MONEY??

18 The same old things or New contributions? Different from previous models ( Sun white paper ): – Information technology as service over the network – Services that are encapsulated, have API, available over network (both compute and storage resources) – Efficiency above all – Tools to handle 80% of use cases Others?

19 The same old things or New contributions? – Can use own data center or clouds – Illusion resources are infinite – Predominant model – Infrastructure as service IaaS – Builds on established trends driving cost of delivery – Increases speed and agility for sketching application architecture to actual deployment – Virtualization, on-demand deployment, internet delivery of services and open source software

20 Different view on what is new about clouds Build on established practices, but changes how we – Invent, develop, deploy, scale, update, maintain and pay for application and infrastructure

21 Virtualization What is virtualization? – Software implementation of a computer that executes programs like a physical machine – Installation of one machine runs on another – All software runs on a server within virtual machine – Abstracts hardware so software stacks can be deployed without tied to specific physical server – AMD-Virtualization and Intel Virtualization Technologies (IVT) extensions made it doable

22 Virtualization Can – Share computer among multiple users – Run applications and different operating systems on same machine – Isolate users from each other and control program – Emulate software and/or hardware on another machine Full virtualization – First appeared in 1967 with IBM CP-40 system – Complete installation of one machine runs on another – emulate entire system

23 Virtualization Virtual Machine VM – isolated guest OS installation within a normal host OS – Object of deployment Virtual Machine Image – – Static data containing software (OS, apps, data files) the VM will run once started – Used to create VM instance – Typically stored on disk Virtual Machine Instance – – Running virtual machine – Started from image, runs OS and processes, computes, etc. – dynamic object you can interact with – snapshot of a VM at a given time

24 Virtualization Virtual Appliance – virtual machine that includes software partially or fully configured to perform a specific task VMs are deployed – copy image from Appliance Library to machine (hypervisor) with specific Virtual Appliance configuration

25 Virtualization Hypervisor – Virtual Machine Manager VMM One level higher than supervisory program Installed on server hardware Easily create copies of existing environments Can exist on same servers or different machines Single server multiple OS instances, minimize CPU idle time Hardware Operating System App Traditional Stack Hardware OS App Hypervisor OS Virtualized Stack

26 Virtualization Application needs a VM on which to run in a cloud Application will be associated with that VM Entire user interface resides in single window – Provide all facilities of OS inside a browser Program must continue running even as number of users grows Communication model is many-to-many

27 Paravirtualization Virtualization may not be efficient Paravirtualization instead – uses resources efficiently – Doesn’t emulate entire system like in full (e.g. BIOS, drive) – OS adjusted to work in virtual machine – Better performance, only emulate some elements

28 Tux -Linux penguin Windows

29

30 Paravirtualization Better scaling, but Sacrifices security and flexibility – New deployment now available – Allows multiple OS to run on a single hardware device at same time – Software running inside VM is limited to the resources and abstractions provided by VM – Guest OS has control of underlying hardware – Cannot break out of environment Best deployed when – Disaster recovery, Migration to new system, Capacity increases

31 Paravirtualization Better scaling, but Sacrifices security and flexibility – New deployment now available – Allows multiple OS to run on a single hardware device at same time – Software running inside VM is limited to the resources and abstractions provided by VM – Guest OS has control of underlying hardware – Cannot break out of environment Best deployed when – Disaster recovery, Migration to new system, Capacity increases

32 Virtualization Company has a temporary surge in business, use cloud instead of invest in new computing equipment Elastic computing

33 Elastic Use what you need – Hardware, platform (OS), software Cloud computing is not one-size-fits-all Cloud infrastructure used depends on application – Massive number of servers needed OR – Only need one server to run small job

34 What Motivated Cloud Computing Initial motivation: – Web-scale problems Solutions: – Large data centers How to access: – Highly-interactive Web applications (thin client) Next Step: – Different models of computing

35 Initial motivation: Web-Scale Problems Characteristics: – Definitely data-intensive – May also be processing intensive Examples: – Crawling, indexing, searching, mining the Web – “Post-genomics” life sciences research – Other scientific data (physics, astronomers, etc.) – Sensor networks – Web 2.0 applications – …

36 How much data? Google processes 20 PB – 10 15 a day (2008) in 2012? 24 PB CERN’s LHC will generate 15 PB a year Facebook – 2.5 Pb, growing at 15TB per day in 2012? 25 TB 1000 times volume of mail delivered by USPS Sloan Digital Sky Survey – 0.5 PB /month in 2015 “all words ever spoken by human beings” ~ 5 EB – 10 18 LARGE data is the next frontier

37 Improvements since ‘80s Disk capacity – From 10s MB to several TB – orders of magnitude Latency – 2X Bandwidth – 50X

38 Solution: Large Data Centers Web-scale problems? Throw more machines at it! Decades ago – computing power in mainframes in computer rooms Personal computers changed that Now, network data centers with centralized computing are back in vogue In the future businesses will not need to invest in a data center

39 Maximilien Brice, © CERN

40 Large Data Centers Although Google famous for innovating web searching, Google’s architecture as much a revolution – Instead of few expensive servers, use many cheap servers ($5000 instead of $100,000) 1/2M servers in ~ 12 locations) With thin, wide network – Derive more from scale of the whole than any one part – no hub Cloud – robust and self-healing – Uses a lot of power Need cheaper power solutions

41 The Result: Different Computing Model “Why do it yourself if you can pay someone to do it for you?”

42 IaaS Infrastructure as a Service (IaaS) – aka Hardware as a Service (HaaS) and Utility computing – Why buy machines when you can rent cycles? – Utility computing billing – based on what used – Provides basic storage and compute capabilities as server Servers, storage systems, CPU cycles, switches, routers, etc. Ex: Amazon’s EC2Amazon’s EC2

43 IaaS Does not provide applications to customers (SaaS and PaaS do) Saves cost of purchasing Infrastructure can be scaled up or down Multiple tenants can use equipment at the same time Device independence – access systems on different hardware Low barriers to entry, example? – e.g. SambaSamba

44 IaaS Components – Service level agreements between provider and client, guarantee level of performance – Computer hardware – rented out, provider set up as a grid for scalability – Network – hardware for firewalls, routers, etc. – Internet connectivity so user can access hardware – Allows clients to run the VM they want

45 Questions How do you use this hardware? If you want to use their servers, do you have to create your own VM? Do they have VMs available? If they provide the hardware and software to use it, is it no longer IaaS?

46 Comment If you create your own VMs, etc. This is not easy …

47 PaaS Platform as a Service (PaaS) aka cloudware – Give me nice API and take care of the implementation – Supplies all resourced needed to build apps and services without having to download or install software – Provides a computing platform and solution stack E.g for web application need OS, web server, DB, prog language Provides support to create user interfaces (HTML, Javascript) Provides automatic facilities for concurrency management, scalability, failover, and security – Services include: app design, development, testing, deployment, hosting – Ex: Google Apps EngineGoogle Apps Engine

48 PaaS – Customer interacts with platform through API – Layer of software encapsulated provided as service to build higher level services – Runtime services – allows application to leverage infrastructure – Platform manages and scales – Team collaboration, web service integration, database integration, security, scalability, storage, state management, versioning

49 PaaS Supports web development interfaces – SOAP (simple object access protocol), REST (Representational state transfer), allow construction of multiple web services (mashups) – Interfaces able to access DBs, reuse services Options: – Add-on development facilities Stand-alone environments for general development Customize SaaS applications Application delivery-only environments for hosting level services (e.g. security, on-demand scalability) not development, debugging and testing

50 PaaS provides Development teams across world to work together Merge web services from multiple sources Cost savings from using built-in security, scalability and failover Cost-savings from using higher-level programming abstractions

51 Problems with PaaS Vendors used proprietary services or languages – developer may be locked in Lack of portability and interoperability – if develop on one cloud, can’t move to another (unless pay …) What if provider goes out of business?

52 Zimki – Zimki hosted JavaScript environment One of the original PaaS around 05-06 – Announced 9/2007 would close 12/2007 – Wanted to go open source, but parent company had other ideas – Interesting blog by former CEOblog

53 SaaS Software as a Service (SaaS) – web based applications – Just run it for me! – Software available on cloud for use – Application hosted as a service to customers who access via the internet – Single instance runs and services multiple end users – Ex: salesforce.com, Gmailsalesforce.com

54 SaaS Pros/Cons – Customer doesn’t have to maintain or support SW – Out of customer’s hands when hosting service changes it – Use software out of box – Instead of just paying for its once, billed – Don’t have to pay as much up front, cheaper more reliable – Stronger protection of intellectual property (no more open source …)

55 SaaS Good candidates for SaaS: – Simple task with little interaction with other systems – Customers who want high powered apps but do not want to develop Customer resource management CRM Video conferencing IT service management Accounting Web analytics Web content management

56 SaaS Unlike earlier distributed computing tools, SaaS specifically to use web tools Built with multitenant Can access from anywhere as long as have internet SaaS often used as a component of another application – mashup or plugin

57 Benefits to SaaS Everyone knows WWW, little training needed Smaller IT staff needed Easier to customize Better marketing by providers, accommodate more Web reliability Security (SSL used), don’t need VPNs (Virtual private networks on back-end) More bandwidth – low latencies

58 Applications Benefiting Hadoop tool, open-source MapReduce – NY Times converted 11 M articles, images in archive to PDF – Instead of 7 weeks, using Hadoop took 24 hours, < $300 Animoto’s mashup tool – create videos from set of images and music – Scaled from 50 to 3500 servers in 3 days – Application built to be horizontal

59 Obstacles to SaaS Specific computational need not addressed – may have to buy own Lock-in – can’t move to new vendor without penalty Open source and cheaper hardware

60 Future of SaaS Move all processing power to the cloud and carry ultralight input device – Already happening? E-mail Google Docs Implications for Microsoft, software as purchasable local application – Windows Live (Microsoft’s cloud) – Adobe web based photoshop

61 IaaS, PaaS, SaaS

62 With IaaS – Provider doesn’t know what you are going to do with HW – Just ask for resources, including OS (VMs) – So you can specify how many machines, how many VMs per machine, etc. – Can create your own PaaS, or SaaS on Iaas

63 IaaS, PaaS, SaaS With PaaS – Ask for specific web services, DBs, etc. – Restricted to using only those, can modify only within constraints of platform – System decides what hardware and how many VMs you get, e.g. scaling With SaaS – Just say which software and you use it – WHAT IMPACT ON SW DEVEVELOPERS?

64 Impact on Software Developers Shifts responsibility for architecture decisions from architects to developers Developer creates initial composition on virtual machine using providers API – see how scales and evolves to accommodate workload changes – Used to create new threads, now can create new virtual machines – When do one versus the other?

65

66 Impact on Software Developers Developer: – Chooses load balancer, DB server, Web server – configures each component to make custom image – Layers code into new architecture – Chooses pattern for the images and deploys them – Secure high available Web application up and running

67

68 Cloud Providers - Amazon Amazon – One of the first to offer cloud services to public Elastic Compute Cloud EC2 – VM and CPU cycles – Which as a service? – IaaS Simple Storage Service S3 – Store items up to 5GB Simple Queue Service (SQS) – Alows machines to talk to each other using message passing API – Which as a service?

69 Amazon Simple DB – Web service for running queries on structured data in RT – Works with S3 and EC2 to store, process, query – Use command line to use – Linux – Root privilege – Applications written on own machine and uploaded to cloud – http://aws.amazon.com http://aws.amazon.com Cost: http://aws.amazon.com/products/

70 Cloud Provider - Google Google – App Engine Offers online documents and spreadsheets, developers can build features for these and other online SW using app engine Web apps reduced to core set of features and good framework for delivering them Can’t even write file in own directory Removed file write feature out of Python Must use Google’s DB to store data Which as a service?

71 Google Handy debugging features Write a layer of python between user and DB http://code.google.com/appengine/ – Cost? http://cloud.google.com/pricing/

72 Cloud Provider - Microsoft Microsoft – Windows Azure Operating System that allows clients to run Windows apps and store files and data Service hosting, low-level scalable storage, networking Which service? – Azure Services Platform Developers can establish user identities, manage workflows, synchronize data Includes: – Windows Azure

73 Microsoft Microsoft SQL Services – DB services and reporting Microsoft NET Services – Service-based implementations of the.NET framework Live Services – To share, store and synchronize documents, photos, and files Microsoft Sharepoint Services and Dynamics CRM Services – For collaboration, solution development for business Browser-based Office – not all features? http://www.windowsazure.com Cost? – http://www.windowsazure.com/en-us/pricing/calculator/ http://www.windowsazure.com/en-us/pricing/calculator/

74 When should you use Cloud Computing? Consider – Cost/benefit ratio – Speed of delivery – How much capacity will be used – Whether data is regulated – Organizations corporate IT structure

75 Scenarios Cloud Storage – One of first cloud offerings – 100s of cloud storage vendors – But what about security? Compute clouds – Amazon EC2, Google App Engine, Berkeley Open Infrastructure for Network Computing – May not be good for large organizations, do not offer monitoring and governance capabilities – Amazon offers enterprise-class support

76 Scenarios Cloud Applications – Utilize software apps that rely on cloud infrastructure P2P (BitTorrent and Skype) Web apps (Facebook and YouTube) SaaS (Google Apps) Software plus services (MS Online Services)

77 When not to use a Cloud Server Control – If you need control over everything running, e.g. amount of memory, CPU, hard drive specs or interfaces, cloud not for you Hardware Dependencies – If you need specific drivers, chips, etc. – Cloud may not have or may change chipsets in future

78 When not to use a Cloud Cost – Over time cloud may cost more Lack of need – If current solution OK, don’t worry about fashion Integration with existing apps – Should not have one locally and one on cloud Security, speed, reliability problems Latency Concerns – Slower in the cloud

79 When not to use a Cloud Throughput Demands – Cost increases and throughput increases E.g. high def video over 100 sources

80 When not to use a Cloud Legislative Issues – Laws and policy allow freer access to data on a cloud than private server FBI can access data without warrant or owner’s consent Geopolitical concerns – If in Canada, cannot store data on U.S. cloud – Why? (because of patriot act…) – What about storing your data on clouds outside of USA?

81 When not to use a Cloud Health data – HIPAA data could comingle on a server with another organization’s data – Still - MS HealthValue and Google Health on the way – Penalties:

82 Benefits Scalability Simplicity – don’t have to configure new equipment Knowledgeable vendors More internal resources – hire less people Security – strict privacy policies, employ proven cryptographic methods

83 Limitations Certain applications not ready – Needs lot of bandwidth to communicate (expensive) – Effort to integrate with other applications – Mashup – May not be compatible with variety browsers and operate using SSL – Cannot communicate securely – SECURITY

84 Types of Clouds Public, Private, Hybrid Clouds Names do not necessarily dictate location Type may depend on whether temporary or permanent

85 Public Clouds 3 rd party, applications from different customers mixed together Typically hosted away from customer premises Can create a virtual private data center for single client within public cloud – Located in same facility

86

87 Private Cloud Built for exclusive use of one client – utmost control over data, service, QOS Company owns infrastructure – may be located at enterprise or at colocation Built and managed by enterprise IT or cloud provider

88

89 Hybrid Cloud Combine both private and public models Augment private cloud with public resources – Good for surge computing – How to distribute data across both – Best for smaller data

90

91 Community Clouds Shares infrastructure among several organizations from specific community with same concerns Hosted Internally or externally Can be managed internally or by 3 rd party Cost spread over members of community

92 Can you create your own local/private cloud? IaaS Local – if stored in-house Private – only used by enterprise Everyone wants to be compatible with AWS EC2 (most popular public cloud) APIs consistent with AWS API so can reuse tools, images and scripts

93 Open-source Clouds Open-source cloud wars - Why do they all have “stack” in their name? – Because are moving up the stack from layer 1 (physical) to layer 7 (applications) of the OSI (Open Systems Interconnection) model So how do they make money? All of them use hypervisors

94 Open-source Clouds - Hypervisors Hypervisors – KVM, Xen, Vmware, Oracle VM Run on a host OS, but can emulate using virtualization many guest OSs – E.g. KVM host must be Linux, but supports guest Oss Linux, Windows, Solaris, BSD

95 Open-source Clouds - Hypervisors – KVM: host OS has to be Linux Can’t use in older CPUS before virtualization extensions – Xen: been around a lot longer Can use on machines that don’t have virtualization extensions Currently better performance EC2 uses Xen – VMware Geared towards performance

96 Open-source Clouds – OpenStack OpenStack Started by Rackspace (storage files) and NASA in 2010 Both Ubuntu and Red Hat distributions Hypervisors: KVM, Xen and VMware (2 days ago)

97 Open-source Clouds OpenStack – Started by Rackspace (storage files) and NASA in 2010 – Both Ubuntu and Red Hat distributions – Hypervisors: KVM, Xen and VMware (2 days ago) CloudStack being revived under Apache CloudStack – OpenStack owner (Citrix) now own CloudStack (2009) and dropped OpenStack – More “Amazon like” – Hypervisors: KVM, vSphere, XenServer, Oracle VM – Better for enterprises

98 Open-source Clouds OpenNebula – Developed 2008 – European – Xen, KVM, Vmware – Interfaces: EC2, OGF OCCI, vCloud Nimbus – Developed 2009 – EC2/S2 compatible – Xen, KVM – Combine with OpenStack, Amazon, others

99 Open-source Clouds – Eucalyptus Eucalyptus “Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems” Developed 2008 VMware, Xen, KVM Ubuntu, Red Hat, RHEL, CentOS, Fedora, other flavors of Linux Only project based on GPL (GNU general SW license) and not ASL (Apache SW license) Implement AWS API on top of Eucalyptus AWS agrees to support Eucalyptus, users can migrate workloads between the two, applications compatible with both

100 Our Private Local Cloud - Fluffy Fluffy uses Eucalyptus First assignment – Friday Find a group 2-3 people (preferably 3)


Download ppt "Intro to Cloud Computing. Source:"

Similar presentations


Ads by Google