introduction to cloud computing · the cloud itself is a set of hardware, networks, storage,...
TRANSCRIPT
1
Introduction to Cloud Computing
Dr. Qassim Nasir Associate Professor University Of Sharjah
June 2012
2
Outline Ø Definition
Ø Architecture
Ø Why Cloud Computing
Ø Services
Ø Types
Two Technologies for Agility Virtualization:
The ability to run multiple operating systems on a single physical system and share the underlying hardware resources*
Cloud Computing: “The provisioning of services in a timely (near on instant), on-demand manner, to allow the scaling up and down of resources”**
The cloud itself is a set of hardware, networks, storage, services, and
interfaces that enable the delivery of computing as a service. Cloud services include the delivery of software, infrastructure, and storage over the Internet (either as separate components or a complete platform) based on user demand (Cloud computing for Dummies)
** Alan Williamson, quoted in Cloud BootCamp March 2009
* VMware white paper, Virtualization Overview
4
What Computing Paradigms Are There? Ø Personal Computing Ø Reconfigurable Computing
Ø Autonomic Computing
Ø Mobile Computing
Ø Utility Computing
Ø Blue Group: Distributed Computing
Ø Green Group
Cloud Computing Evolution
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$%&'#(
)'*+%**,- '( $,+&%.,/
6
What is parallel computing ? Ø Calculations of large problems are divided into smaller parts and carried
out simultaneously/concurrently on different processors.
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$ %& '#(#))*) +,-./$%01
CPU..…
instructions
Problem
time
Problem
..…
instructions
CPU
CPU
CPU
..…
..…
time
!"#$%#"&'()* (+ #",-. /,(0#.1* ",. 2'3'2.2 ')&( *1"##., /",&* ")2
$",,'.2 (%& *'1%#&").(%*#45$()$%,,.) () 2'++.,.)& /,($.**(,*6
7
parallel computing Ø All have access to a shared memory that is used to exchange
information between processors
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#"$$%$ &'()*+,-.
!"" #$%& $''&(( )* $ /0"#%1 (%('#2
)#$) +( ,(&- )* &.'#$/0&
+/1*23$)+*/ 4&)5&&/ 62*'&((*2(Shared Memory
Hybrid Distributed-Shared Memory
Uniform Access… (UASM)Non-Uniform Access… (NUASM)
Source: https://computing.llnl.gov/tutorials/parallel_comp/
8
Super computing Thousands of processors , Used for compute‐intensive problems- introduced in the 1960s
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$ %&'#(
)#($& *'+(#,-./
!"#$%&'(% #) *+#,-%%#+%
.%-( )#+ ,#/*$0- 1'0-'%12- *+#34-/%
5&6% 1'%0-&( #) 7-&+%888
1'0+#($,-( 1' 0"- 9:;<%
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$ %&'#(
)#($& *'+(#,-./
!"#$%&'(% #) *+#,-%%#+%
.%-( )#+ ,#/*$0- 1'0-'%12- *+#34-/%
5&6% 1'%0-&( #) 7-&+%888
1'0+#($,-( 1' 0"- 9:;<%
9
Grid computing Grid computing (or the use of a computational grid) is applying the resources of many computers in a network to a single problem at the same time - usually to a scientific or technical problem that requires a great number of computer processing cycles or access to large amounts of data.
10
Utility computing • Utility computing is the packaging of computing resources, such as computation, storage and services, as a metered service similar to a traditional public utility (such as electricity, water, natural gas, or telephone network).
• This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resources are essentially rented - turning what was previously a need to purchase products (hardware, software and network bandwidth) into a service.
11
Virtualization • Virtualization is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system, a storage device or network resources.
• Virtual machines (VMs): • Key enabling virtualization technology • Initial developments in the early 70s • Sharing of mainframe computers by multiple legacy O/Ss
• “A virtual machine is taken to be an efficient, isolated, duplicate copy of the real machine”
12
Computing Services Ø Remote Hosting: Smaller organizations immediately saw
the value in outsourcing the care and feeding of these servers to experts
Ø Hosting Services: Co-location services, which only provide physical facilities, Internet connection, uninterruptible power, and climate control; the client provides and owns the equipment and is responsible for system administration.
13
Computing Services
Ø Virtual private servers, in which virtualization technology is employed to allow multiple logical servers to share a single physical server owned, supplied, and maintained by the hosting service. Virtual firewalls ensure security
Ø Dedicated hosting services, also called managed hosting services, in which the service provider owns and manages the machine, leasing full control to the client. Management of the server typically includes monitoring (to ensure the server continues to work effectively), backup services, installation of security patches, and various levels of technical support, and may include a physical firewall.
14
15
Definition Technology Laboratory offers definition of Cloud Computing ”Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. The cloud model of computing promotes availability.” Ø The big players in cloud computing are Google, Amazon, and, of late, Microsoft and IBM. Maybe Oracle/Sun, maybe HP will join them. Rack- space, GoGrid, and AT&T want in too.
16
Cloud Computing Attributes Ø Service-based Ø Scalable and elastic
Ø Shared
Ø Metered by use
Ø Use of Internet technologies
17
Cloud Computing participants • The end user doesn’t really have to know anything
about the underlying technology. • Business management needs to take responsibility for
overall governance of data or services living in a cloud. Cloud service providers must provide a predictable and guaranteed service level and security to all their constituents.
• The cloud service provider is responsible for IT assets and maintenance.
• Cloud services must enable multi-tenancy — different companies sharing the same underlying resources.
18
Cloud Computing characteristics ✓ Elasticity and the ability to scale up and down ✓ Self-service provisioning and automatic
deprovisioning ✓ Application programming interfaces (APIs) ✓ Billing and metering of service usage in a pay-as-
you-go model
19
Cloud Computing Benefits Ø It is agile, with ease and speed of
deployment Ø Its cost is use-based, and will likely be
reduced Ø In-house IT costs are reduced Ø Capital investment is reduced Ø The latest technology is always delivered Ø The use of standard technology is
encouraged and facilitated
20
Elasticity and scalability ✓ The service provider can’t anticipate how customers will use
the service. One customer might use the service three times a year during peak selling seasons, whereas another might use it as a primary development platform for all of its applications.
✓ Therefore, the service needs to be available all the and it has
to be designed to scale upward for high periods of demand and downward for lighter ones
✓ Scalability also means that an application can scale when
additional users are added and when the application requirements change. This ability to scale is achieved by providing elasticity
21
Self-service provisioning ✓ Customers can easily get cloud services without going
through a lengthy process. The customer simply requests an amount of computing, storage, software, process, or other resources from the service provider.
✓ Contrast this on-demand response with the process at a
typical data center. When a department is about to implement a new application, it has to submit a request to the data center for additional computing hardware, software, services, or process resources. These internal procurement processes can take a long time, depending on company policies.
22
Application programming interfaces (APIs) ✓ Cloud services need to have standardized APIs. These
interfaces provide the instructions on how two application or data sources can communicate with each other.
✓ A standardized interface lets the customer more easily link
a cloud service, such as a customer relationship management system with a financial accounts management system, without having to resort to custom programming.
✓ A cloud environment needs a built-in service that bills
customers. Even free cloud services (such as Google’s Gmail or Zoho’s Internet-based office applications) are metered.
23
Performance monitoring and measuring ✓ A cloud service provider must include a service
management environment. A service management environment is an integrated approach for managing physical environments and IT systems.
✓ Service management has to consider key issues, such as performance of the overall system, including security and performance. The organization would expect the cloud provider to prove that it has met its obligations.
✓ Many cloud service providers give customers a dashboard so they can monitor the level of service they’re getting from their provider. Also, many customers use their own monitoring tools to determine whether their service level requirements are being met.
24
Performance monitoring and measuring ✓ A cloud service provider must include a service
management environment. A service management environment is an integrated approach for managing physical environments and IT systems.
✓ Service management has to consider key issues, such as performance of the overall system, including security and performance. The organization would expect the cloud provider to prove that it has met its obligations.
✓ Many cloud service providers give customers a dashboard so they can monitor the level of service they’re getting from their provider. Also, many customers use their own monitoring tools to determine whether their service level requirements are being met.
25
Architecture
26
Architecture Ø Client (end user): web browser or an APP
Ø Service: functions in cloud computing
Ø Application: backbone of service
Ø Platform: software infrastructure for applications, e.g., Windows Azure, Google App Engine, VMware Foundry, Heroku.
Ø Storage: disks, tapes, optical, memory, etc
Ø Infrastructure: IT hardware and facilities
27
Why Cloud Computing Ø The milk/cow example
Ø The power/power plant example
Ø The restaurant example
Ø From business point of view, most of time it is better to rent than buy.
28
Why Cloud Computing Ø No capital expenses needed
Ø Customers only pay a fee for what are used
Ø Flexible capacity and feature sets
Ø No risk of obsolescence
Ø No facilities and engineering cost incurred
Ø Guaranteed business continuity and disaster recovery
29
Services Ø Software as a Service (SaaS):The capability provided to the
consumer in this highest level is to use the provider’s applications running on a cloud infrastructure.
Ø Infrastructure as a Service (IaaS): he capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications.
Ø Platform as a Service (PaaS): The capability provided to the consumer in this intermediate level is to deploy onto the cloud infrastructure consumer-created or acquired applications developed using programming languages and tools supported by the provider.
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$% !#&'$()*+ ,-./)0-1
23.-- 451)0 1-./)0-16
,#7(85.- 51 5 ,-./)0- 9,::,; &#%-"
!""# $%&'()% *&'+#,&
<"5(7#.& 51 5 ,-./)0- 9<::,; &#%-"
-,./0,&1 '2 3 4'5"($/6) ".3$2'&5 2'& 4(#$'5 #'2$+3&,
7,0,.'"5,6$ 3# 3 #,&0/4,
=*7.51(.$0($.- 51 5 ,-./)0- 9=::,; &#%-"
-,./0,& '2 4'5"($,& /62&3#$&(4$(&, 3# 3 #,&0/4,
>::,? (3- ")1( 0#*()*$-1 (# +.#8@
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$% !#&'$()*+ ,-./)0-1
23.-- 451)0 1-./)0-16
,#7(85.- 51 5 ,-./)0- 9,::,; &#%-"
!""# $%&'()% *&'+#,&
<"5(7#.& 51 5 ,-./)0- 9<::,; &#%-"
-,./0,&1 '2 3 4'5"($/6) ".3$2'&5 2'& 4(#$'5 #'2$+3&,
7,0,.'"5,6$ 3# 3 #,&0/4,
=*7.51(.$0($.- 51 5 ,-./)0- 9=::,; &#%-"
-,./0,& '2 4'5"($,& /62&3#$&(4$(&, 3# 3 #,&0/4,
>::,? (3- ")1( 0#*()*$-1 (# +.#8@
Services
31
SaaS Ø A software distribution model in which applications are hosted by vendor or service provider and made available to users over Internet.
Ø Network-based management and access to commercially available software from central locations rather than at each user’s site.
Ø Application delivery follows a one-to-many model as opposed to a traditional one-to-one model.
Ø Centralized administration
Ø Examples: Gmail/Hotmail, Google Docs, TurboTax, iCube online OS, etc
32
SaaS Benefits: Ø No powerful computer needed.
Ø No installation needed.
Ø Automated update and patch management services.
Ø Data compatibility across the enterprise (All users have the same version of software).
Ø Facilitated, enterprise-wide collaboration.
Ø Global accessibility.
33
IaaS Ø The delivery of computer infrastructure (servers, storage, networking components) as a service.
Ø The IaaS provider owns the equipment and is responsible for housing, running and maintaining it.
Ø The client typically pays on a per-use basis.
Ø Examples: Amazon EC2, Joyent, GoGrid, Dropbox
34
IaaS Benefits: Ø Ready access to a preconfigured environment
Ø Use of latest technology for equipment
Ø Secured “sand-box” computing platform
Ø Ability to manage service peaks and valleys
Ø No capital investments needed
Ø Reduced time, cost and complexity in adding new features and capacities
35
PaaS Ø Delivery of computing platform and solution stack as a service.
Ø Mainly used by developers to build and deploy their applications.
Ø Examples: Windows Azure, Google App Engine, VMware Foundry, Heroku.
36
PaaS Benefits: Ø Fast and cost-effective application development and delivery.
Ø Deliver new applications to markets via web browsers.
Ø Users pay only for what they use.
37
PaaS The PaaS form of rent-a-cloud is available commercially from • Amazon.com (see www.amazon.com/gp/browse.html?
node=201590011), • Google (see http://code.google.com/appengine), • Sun (zembly.com for creating and hosting social applications, and • Network.com for pay-as-you-go comput- ing), • Microsoft (with Azure; see http://www.microsoft.com/azure/win-
dowsazure.mspx), • IBM with IBM Cloud (http://www-03.ibm.com/press/ us/en/pressrelease/
22613.wss), • GoGrid, Joyent, Rackspace, VMware (through its partners), and others;
these now also offer storage and virtual servers that IT can access on demand.
Deployment Models
Carnegie Mellon
Spring 2010 ©15-319 Introduction to Cloud Computing
!"#$% &' ()&*+% ,-./0
1*2)34
153678$
9"253+
Ø Private Cloud: The cloud infrastructure is operated solely for an organization. It may be managed by the organization or a third party and may exist on premise or off premise.
Ø Community Cloud: The cloud infrastructure is shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be managed by the organizations or a third party and may exist on premise or off premise
Deployment Models
Ø Public Cloud: The cloud infrastructure is made available to the general public or a large industry group and is owned by an organization selling cloud services.
Ø Hybrid Cloud: The cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load-balancing between clouds).
Deployment Models
Ø Built for the exclusive use of one client, providing the utmost control over data, security, and Quality of Service (QoS).
Ø Built and managed by a company’s own IT professionals or by a cloud provider.
Private Cloud
Ø A cloud vendor makes all the resources like applications and storage available to general public over the Internet.
Ø Run by third party.
Ø Hosted away from customer premises.
Public Cloud
Ø Combines both public and private cloud.
Ø Ability to augment a private cloud with the resources of a public cloud.
Hybrid Cloud
42 Implementing and Developing Cloud Computing Applications
!
"#$ %&&%!'(()*+&,*-./
Software as a Service (SaaS) is a type of cloud computing that delivers a sin-gle application through the browser to many, (potentially thousands or tensof thousands) of customers using a multitenant architecture. On the cus-tomer side, it means no upfront investment in servers or software licensing;on the provider side, with just one app to maintain; costs are low comparedto conventional hosting. APIs are also increasingly available in the cloud;they enable developers to exploit functionality of others over the Internet,rather than developing, hosting, and delivering it themselves, a topic we dis-cuss in Chapter 9. Table 3.1 shows some cloud service providers and the ser-vices that they offer:
Table 3.1 Cloud service providers and their offerings (a partial list).
!
01-23+, %415*+4/ 6*.7
Strike Iron Address verification, sales tax calculation, SMS and e-mail alerts
www.strikeiron.com
Xignite Financial data feeds www.xignite.com/
Google Maps Embedded maps http://goo.gl/uD1N
Google Voice Place calls, send SMS, download voicemails/recorded messages
http://goo.gl/xcWl
Salesforce.com Sales management, ser-vice management
www.salesforce.com/
Force.com Cloud development platform
www.salesforce.com/platform/
Yahoo BOSS Open search Web ser-vices platform.
http://goo.gl/6pTx
Bloomberg Financial data http://goo.gl/8as1
USPS Address information, tracking
http://goo.gl/ckNg
NetSuite Financials, CRM, inven-tory, and e-commerce
www.netsuite.com
RightNow Technologies
Customer experience across the Web, social networks, and contact center
www.rightnow.com/
Chap3.fm Page 42 Thursday, September 30, 2010 7:04 AM