Week 1 Lecture - 1-5 CC - Watermark
Week 1 Lecture - 1-5 CC - Watermark
CloudComputing-Overview
PROF.SOUMYAK.GHOSH
DEPARTMENTOFCOMPUTERSCIENCEANDENGINEE
RING IIT KHARAGPUR
Introduction
• TheACMComputingCurricula2005defined"computing"as
"Inageneralway,wecandefinecomputingtomeananygoal-
orientedactivity requiring, benefiting from, or creating computers.
Thus, computing includes designing and building hardware and
software systems for a wide range of purposes; processing,
structuring, and managing various kinds of information; doing
scientific studies using computers; making computer systems behave
intelligently; creating and using communications and entertainment
media; finding and gathering information relevant to any particular
purpose, and so on. The list is virtually endless, and the possibilities
are vast."
2
CloudComputingCourse-Overview
I. IntroductiontoCloudComputing
i. OverviewofComputing
ii. CloudComputing(NISTModel)
iii. Properties,Characteristics&Disadvantages
iv. RoleofOpenStandards
II. CloudComputing Architecture
i. Cloudcomputingstack
ii. ServiceModels (XaaS)
a. InfrastructureasaService(IaaS)
b. PlatformasaService(PaaS)
c. Softwareasa Service(SaaS)
iii. DeploymentModels
III. ServiceManagementinCloudComputing
i. ServiceLevel Agreements(SLAs)
ii. CloudEconomics
IV. ResourceManagementinCloudComputing
CloudComputingCourse(contd.)
V. DataManagementinCloudComputing
i. LookingatData,Scalability&CloudServices
ii. Database&DataStoresinCloud
iii. LargeScaleDataProcessing
VI. CloudSecurity
i. InfrastructureSecurity
ii. DatasecurityandStorage
iii. IdentityandAccessManagement
iv. AccessControl,Trust,Reputation,Risk
VII. CaseStudyonOpenSourceandCommercialClouds,CloudSimulator
VIII. ResearchtrendinCloudComputing,FogComputing
TrendsinComputing
• DistributedComputing
• Grid Computing
• ClusterComputing
• UtilityComputing
• CloudComputing
5
DistributedComputing
6
Centralizedvs.DistributedComputing
Earlycomputingwasperformedonasingleprocessor.Uni-processorcomputing can be
called centralizedcomputing.
7
DistributedComputing/System?
• Distributedcomputing
– Fieldofcomputingsciencethatstudiesdistributedsystem.
– Useofdistributedsystemstosolvecomputationalproblems.
• Distributedsystem
– Wikipedia
• Thereareseveralautonomouscomputationalentities,
each of which has its own local memory.
• Theentitiescommunicatewitheachotherbymessage
passing.
– OperatingSystemConcept
• Theprocessorscommunicatewithoneanotherthroughvarious
communication lines, such as high-speed buses or telephone
lines.
• Eachprocessorhasitsownlocal memory.
8
ExampleDistributedSystems
• Internet
• ATM(bank)machines
• Intranets/Workgroups
• Computinglandscapewillsoonconsistofubiquitous
network-connected devices
9
ComputersinaDistributedSystem
• Workstations:Computersusedbyend-userstoperform
computing
• ServerSystems:Computerswhichprovideresourcesand
services
• PersonalAssistanceDevices:Handheldcomputersconnectedto
the system via a wireless communication link.
10
CommonpropertiesofDistributedComputing
– Faulttolerance
• Whenoneorsomenodesfails,thewholesystemcanstillworkfineexceptperformance.
• Needtocheckthestatusofeachnode
– Eachnodeplaypartialrole
• Eachcomputerhasonlyalimited,incompleteviewofthesystem.
• Eachcomputermayknowonlyonepartofthe input.
– Resourcesharing
• Eachusercansharethecomputingpowerandstorageresourceinthesystemwithother users
– LoadSharing
• Dispatchingseveraltaskstoeachnodescanhelpshareloadingtothewholesystem.
– Easytoexpand
• Weexpecttousefew timewhenaddingnodes.Hopetospendnotimeif possible.
– Performance
• Parallelcomputingcanbeconsideredasubsetofdistributedcomputing
11
WhyDistributedComputing?
• Natureofapplication
• Performance
– Computingintensive
• Thetaskcouldconsumealotoftimeoncomputing.Forexample,
ComputationofPivalueusingMonteCarlosimulation
– Dataintensive
• Thetaskthatdealswithalargeamountorlargesizeoffiles.Forexample,
Facebook, LHC(Large Hadron Collider) experimental data processing.
• Robustness
– NoSPOF(SinglePointOfFailure)
– Othernodescanexecutethesametaskexecutedonfailed
node.
12
13
CLOUDCOMPUTING
CLOUDCOMPUTINGOVERVIEW(contd..)
PROF.SOUMYAK.GHOSH
DEPARTMENTOFCOMPUTERSCIENCEANDENGINEE
RING IIT KHARAGPUR
WhyDistributedComputing?
• Natureofapplication
• Performance
– Computingintensive
• Thetaskcouldconsumealotoftimeoncomputing.Forexample,
ComputationofPivalueusingMonteCarlosimulation
– Dataintensive
• Thetaskthatdealswithalargeamountorlargesizeoffiles.Forexample,
Facebook, LHC(Large Hadron Collider) experimental data processing.
• Robustness
– NoSPOF(SinglePointOfFailure)
– Othernodescanexecutethesametaskexecutedonfailed
node.
2
Distributedapplications
• Applicationsthatconsistofasetofprocessesthataredistributedacrossa
network of machines and work together as an ensemble to solve a
common problem
• Inthepast,mostly“client-server”
• Resourcemanagementcentralizedattheserver
• “PeertoPeer”computingrepresentsamovementtowardsmore“truly”
distributedapplications
3
Clientsinvokeindividualservers
4
Atypicaldistributedapplicationbasedonpeerprocesses
5
GridComputing
6
GridComputing?
• Pcwebopedia.com
– A form of networking. unlike conventional networks that focus on communication
amongdevices,gridcomputingharnessesunusedprocessingcyclesofallcomputersin a
network for solving problems too intensive for any stand-alone machine.
• IBM
– Gridcomputingenablesthevirtualizationofdistributedcomputinganddataresources such
as processing,networkbandwidthand storage capacity to create a singlesystem image,
granting users and applicationsseamless access to vast IT capabilities. Just as
anInternetuserviewsaunifiedinstanceofcontentviatheWeb,agriduseressentially sees a
single, large virtual computer.
• SunMicrosystems
– Grid Computing is a computing infrastructure that provides dependable,
consistent,pervasiveandinexpensiveaccesstocomputationalcapabilities
7
ElectricalPowerGridAnalogy
ElectricalPowerGrid Grid
• Users (or electrical appliances) get access to • Users (or client applications) gain access to computing
electricity through wall sockets with no care or resources (processors, storage, data, applications, and
so on) as needed with little or no knowledge of where
consideration for where or how the electricity those resources are located or what the underlying
is actually generated. technologies, hardware, operating system, and so on
are
• “The power grid” links together power plants • “The Grid"links together computing resources (PCs,
of many different kinds workstations, servers, storage elements) and provides
the mechanism needed to access them.
8
GridComputing
Whenvuse
1. Sharemorethaninformation:Data,computingpower,applicationsin
dynamic environment, multi-institutional, virtual organizations
2. Efficientuseofresourcesatmanyinstitutes.Peoplefrommanyinstitutions
workingtosolveacommonproblem(virtualorganisation).
3. Joinlocalcommunities.
4. Interactionswiththeunderneathlayersmustbetransparentandseamless to
the user.
9
NeedofGridComputing?
• Today’s Science/Research is based on computations, data analysis, data
visualization & collaborations
• ComputerSimulations&Modellingaremorecosteffectivethan
experimentalmethods Mathematicalmodelingofsystems
• Scientific and Engineering problems are becoming more complex & users
need moreaccurate,precisesolutionstotheirproblemsinshortestpossible time
• DataVisualizationisbecomingveryimportant
• Exploitingunderutilizedresources
10
Whouses GridComputing?
11
TypeofGrids
• ComputationalGrid:Thesegridsprovidesecureaccesstohugepoolofsharedprocessing
power suitable for high throughput applications and computation intensive computing.
• DataGrid:Datagridsprovideaninfrastructuretosupportdatastorage,datadiscovery,data
handling,datapublication,anddatamanipulationoflargevolumesofdataactuallystoredin
various heterogeneous databases and file systems.
• Collaboration Grid: With the advent of Internet, there has been an increased demand for
better collaboration. Such advanced collaboration is possible using the grid. For instance,
personsfromdifferentcompaniesinavirtualenterprisecanworkondifferentcomponentsof a CAD
project without even disclosing their proprietary technologies.
12
TypeofGrids
• NetworkGrid:ANetworkGridprovidesfault-tolerantandhigh-performancecommunication
services. Each grid node works as a data router between two communication points,
providing data-cachingand other facilities to speed up the communications between such
points.
• Utility Grid: This is the ultimateform of the Grid, in which not only data and computation
cycles are shared but software or just about any resource is shared. The main services
provided through utility grids are software and special equipment. For instance, the
applicationscanberunononemachineandalltheuserscansendtheirdatatobeprocessed to that
machine and receive the result back.
13
Grid Components
Source:KajariMazumdar“GRID:ComputingWithoutBorders”DepartmentofHighEnergyPhysicsTIFR,Mumbai. 14
ClusterComputing
15
WhatisClusterComputing?
• Aclusterisatypeofparallelordistributedcomputer
system,whichconsistsofacollectionofinter-connectedstand-
alonecomputers
workingtogetherasasingleintegratedcomputingresource .
• Keycomponents ofaclusterinclude multiple standalone
computers(PCs,Workstations,orSMPs),operatingsystems,
high-performanceinterconnects, middleware,parallel
programmingenvironments,andapplications.
16
ClusterComputing?
• Clusters are usually deployed to improve speed and/or reliability
overthatprovidedbyasinglecomputer,whiletypicallybeingmuch
more cost effective than single computer the of comparable speed
or reliability
• Inatypicalcluster:
– Network:Faster,closerconnectionthanatypical
network (LAN)
– Lowlatencycommunicationprotocols
– LooselycoupledthanSMP
17
TypesofCluster
• HighAvailabilityorFailoverClusters
• LoadBalancingCluster
• Parallel/Distributed ProcessingClusters
18
ClusterComponents
• Basicbuildingblocksofclustersarebrokendownintomultiple
categories:
• ClusterNodes
• ClusterNetwork
• NetworkCharacterization
19
KeyOperationalBenefitsofClustering
• System availability:offer inherent high system availabilitydue to
theredundancyofhardware,operatingsystems,andapplications.
• Hardware fault tolerance:redundancy for most system
components(eg.disk-RAID),includingbothhardwareand
software.
• OS and application reliability: runmultiplecopiesoftheOSand
applications, and through this redundancy
• Scalability.addingserverstotheclusterorbyaddingmoreclusters
tothenetworkastheneedarisesorCPUtoSMP.
• Highperformance:(runningclusterenabledprograms)
20
Utility Computing
21
“Utility”Computing?
• UtilityComputingispurelyaconceptwhichcloudcomputingpracticallyimplements.
• Thismodelhastheadvantageofalowornoinitialcosttoacquirecomputerresources;
instead, computational resources are essentially rented.
• The word utility is used to make an analogy to other services, such as electrical power,
that seek to meet fluctuating customer needs, and charge for the resources based on
usageratherthan on a flat-rate basis.This approach,sometimes knownas pay-per-use
22
“Utility”Computing?
• "Utility computing" has
usuallyenvisionedsome
form of virtualization so
that the amount of
storage or computing
power available is
considerablylargerthan
that of a single time-
sharing computer.
Source:AlanMcSweeney,“TheEconomicsofUtilityComputing”
23
“Utility”Computing?
a) Pay-for-usePricingBusinessModel
b) DataCenterVirtualizationandProvisioning
c) SolvesResourceUtilizationProblem
d) Outsourcing
e) WebServicesDelivery
f) Automation
24
UtilityComputing Example
On-DemandCyberInfrastructure
25
UtilitySolution–YourPerspective
Consumer vs Provider
Service Infrastructure
Procurement Procurement
Service Equipment
Assurance Pricing Maintenance
Resource
Availability Utilization
Technology
Contractor Security SLA Refresh
Management
System
Consultants Application Admins
Sizing Capacity
Planning
Source:Perry Boster,“Utility ComputingforSharedServices”,
MassachusettsDigitalGovernmentSummit,September23rd,2004–
Boston,MA
26
UtilityComputingPaymentModels
• Samerangeofchargingmodelsasotherutilityproviders:gas,electricity,telecommunications,water,
television broadcasting
−Flatrate
−Tiered
−Subscription
−Metered
−Payasyougo
−Standingcharges
• Differentpricingmodelsfordifferentcustomersbasedonfactorssuchasscale,commitmentand
payment frequency
• Buttheprincipleofutilitycomputingremains
• Thepricingmodelissimplyanexpressionbythe providerofthecostsofprovisionoftheresourcesanda profit
margin
27
RisksinaUCWorld
• DataBackup
• DataSecurity
• PartnerCompetency
• DefiningSLA
• Gettingvaluefromchargeback
28
CloudComputing
29
CloudComputing
USNationalInstituteofStandardsandTechnologydefinesComputing as
“ Cloud computing is a model for enabling ubiquitous, 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.”
Source:http://www.smallbiztechnology.com/archive/2011/09/wait-what-is-cloud-computing.htm30l/
31
CloudComputing-Overview
Prof.SoumyaKGhosh
DepartmentofComputerScienceandEngineeri
ng IIT KHARAGPUR
1
Cloud Computing
2
Cloud Computing
USNationalInstituteofStandardsandTechnology(NIST)definesComputingas:
“ Cloud computing is a model for enabling ubiquitous, 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.”
http://www.smallbiztechnology.com/archive/2011/09/wait-what-is-cloud-computing.html
3
EssentialCharacteristics
• On-demandself-service
• Aconsumercanunilaterallyprovisioncomputingcapabilities, suchasservertimeandnetworkstorage,as
needed automatically without requiring human interaction with each service provider.
• Broadnetworkaccess
• Capabilities areavailableoverthenetworkandaccessedthroughstandard mechanismsthatpromoteuseby
heterogeneousthin or thickclient platforms (e.g., mobile phones, tablets, laptops, and workstations).
• Resourcepooling
• Theprovider’scomputingresourcesarepooledtoservemultipleconsumersusingamulti-tenant model,
withdifferent physicalandvirtualresourcesdynamically assigned andreassigned accordingtoconsumer
demand.
4
Cloud Characteristics
• MeasuredService
– Cloudsystemsautomaticallycontrolandoptimizeresourceusebyleveragingametering
capability at some level of abstraction appropriate to the type of service (e.g., storage,
processing, bandwidth, and activeuseraccounts). Resource usage can be
– monitored,controlled,andreported,providingtransparencyforboththeproviderand
consumer of the utilized service.
• Rapid elasticity
– Capabilitiescanbeelasticallyprovisionedandreleased,insomecasesautomatically,to scale
rapidlyoutward andinward commensurate with demand. To the consumer, the
capabilities available for provisioning often appear to be unlimited and can be
appropriated in any quantity at any time.
5
CommonCharacteristics
• MassiveScale
• ResilientComputing
• Homogeneity
• GeographicDistribution
• Virtualization
• ServiceOrientation
• LowCostSoftware
• AdvancedSecurity
6
CloudServicesModels
• SoftwareasaService(SaaS)
The capabilityprovided to the consumer isto usetheprovider’s applications running on a cloud infrastructure. The applications
are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email),or
a program interface.
The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems,
storage, or even individual application capabilities, with the possible exception of limiteduser-specific application configuration
settings.
e.g:GoogleSpreadSheet
• CloudInfrastructureasaService(IaaS)
Thecapabilityprovidedtoprovisionprocessing,storage,networks,andotherfundamentalcomputingresources
Consumercandeployandrunarbitrarysoftware
e.g:AmazonWebServicesandFlexiscale.
7
CloudServicesModels
PlatformasaService(PaaS)
The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or
acquiredapplications createdusingprogramminglanguages,libraries,services,andtoolssupportedby the
provider.
The consumer does not manage or control the underlying cloud infrastructure including network, servers,
operating systems, or storage, but has control over the deployed applications and possibly configuration
settings for the application-hosting environment.
8
CloudServicesModels
9
TypesofCloud(DeploymentModels)
• Privatecloud
Thecloudinfrastructureisoperatedsolelyforanorganization.
e.gWindowServer'Hyper-V'.
• Communitycloud
Thecloudinfrastructureissharedbyseveralorganizationsandsupportsaspecificgoal.
• Publiccloud
Thecloudinfrastructureismadeavailabletothegeneralpublic
e.gGoogleDoc, Spreadsheet,
• Hybridcloud
Thecloudinfrastructureisacompositionoftwoormoreclouds(private, community,orpublic)
e.gCloudBurstingforloadbalancingbetweenclouds.
10
Cloud andVirtualization
• VirtualWorkspaces:
– Anabstractionofanexecutionenvironmentthatcanbemadedynamicallyavailableto
authorizedclientsbyusingwell-definedprotocols,
– Resourcequota(e.g.CPU,memoryshare),
– Softwareconfiguration(e.g.OS).
• ImplementonVirtualMachines(VMs):
– Abstractionofaphysicalhostmachine,
– HypervisorinterceptsandemulatesinstructionsfromVMs,andallowsmanagementofVMs,
App App App
– VMWare,Xen,KVMetc.
OS OS OS
• ProvideinfrastructureAPI: Hypervisor
– Plug-instohardware/supportstructures
Hardware
VirtualizedStack
11
Virtual Machines
• VMtechnologyallowsmultiplevirtualmachinestorunonasingle
physicalmachine.
Hardware
• Performance:Para-virtualization(e.g.Xen)isveryclosetorawphysical
performance!
12
VirtualizationinGeneral
• Advantagesofvirtualmachines:
– Runoperatingsystemswherethephysicalhardwareisunavailable,
– Easiertocreatenewmachines,backupmachines,etc.,
– Softwaretestingusing“clean”installsofoperatingsystemsandsoftware,
– Emulatemoremachinesthanarephysicallyavailable,
– Timesharelightlyloadedsystemsononehost,
– Debugproblems(suspendandresumetheproblemmachine),
– Easymigrationofvirtualmachines(shutdownneededornot).
– Runlegacysystems
13
Cloud-Sourcing
• Whyisitbecomingimportant ?
– Using high-scale/low-cost providers,
– Anytime/placeaccessviawebbrowser,
– Rapidscalability;incrementalcostandloadsharing,
– CanforgetneedtofocusonlocalIT.
• Concerns:
– Performance,reliability,andSLAs,
– Controlofdata,andserviceparameters,
– Applicationfeaturesandchoices,
– InteractionbetweenCloudproviders,
– NostandardAPI–mixofSOAPandREST!
– Privacy,security,compliance,trust…
14
CloudStorage
• SeverallargeWebcompaniesarenowexploitingthefactthattheyhavedata
storagecapacitythatcanbehiredouttoothers.
– Allows data stored remotely to be temporarily cached on
desktopcomputers,mobilephonesorotherInternet-linked
devices.
• Amazon’sElasticComputeCloud(EC2)andSimpleStorageSolution(S3)arewell
knownexamples
15
AdvantagesofCloudComputing
• Lowercomputercosts:
– Noneedofahigh-powered andhigh-priced computertoruncloud computing's
web-based applications.
– Sinceapplicationsruninthecloud, notonthedesktopPC,yourdesktopPCdoesnot need
the processing power or hard disk space demanded by traditional desktop software.
– Whenyouareusingweb-basedapplications,yourPCcanbelessexpensive,witha
smallerharddisk,lessmemory,moreefficientprocessor...
– In fact, your PC in this scenario does not even need a CD or DVD drive, as no
softwareprogramshavetobeloadedandnodocumentfilesneedtobesaved.
16
AdvantagesofCloudComputing
• Improvedperformance:
– Withfewlargeprogramshoggingyourcomputer'smemory,youwillseebetter
performance from your PC.
– Computersinacloudcomputingsystembootandrunfasterbecausetheyhavefewer
programs and processes loaded into memory.
• Reducedsoftwarecosts:
– Insteadofpurchasingexpensivesoftwareapplications,youcangetmostofwhatyou need
for free.
• mostcloudcomputingapplicationstoday,suchastheGoogleDocssuite.
– betterthanpayingforsimilarcommercialsoftware
• whichalonemaybejustificationforswitchingtocloudapplications.
17
AdvantagesofCloudComputing
• Instantsoftwareupdates
– Anotheradvantagetocloudcomputingisthatyouarenolongerfacedwithchoosing
betweenobsoletesoftwareandhighupgradecosts.
– Whentheapplicationisweb-based,updateshappenautomaticallyavailablethenexttime you
log into the cloud.
– Whenyouaccessaweb-basedapplication,yougetthelatestversion withoutneedingtopay for or
download an upgrade.
• Improveddocumentformatcompatibility.
– Youdonothavetoworryaboutthedocumentsyoucreateonyourmachinebeing
compatible with other users' applications or OS.
– Therearelessformatincompatibilitieswheneveryone issharingdocumentsand
applications in the cloud.
18
AdvantagesofCloudComputing
• Unlimitedstorage capacity
– Cloudcomputingoffersvirtuallylimitlessstorage.
– Yourcomputer'scurrent1TeraBytesharddriveissmallcomparedtothehundredsofPeta Bytes
available in the cloud.
• Increaseddatareliability
– Unlikedesktopcomputing,inwhichifaharddiskcrashesanddestroyallyourvaluable data,
a computer crashing in the cloud should not affect the storage of your data.
• ifyourpersonalcomputercrashes,allyourdataisstilloutthereinthecloud,stillaccessible
– Inaworldwhere fewindividualdesktopPCusersbackuptheirdataonaregularbasis, cloud
computing is a data-safe computing platform. For e.g. Dropbox, Skydrive
19
AdvantagesofCloudComputing
• Universalinformationaccess
– Thatisnotaproblemwithcloud computing,becauseyoudonottake your
documentswithyou.
– Instead,theystayinthecloud, andyoucanaccessthemwheneveryouhavea
computer and an Internet connection
– Documentsareinstantlyavailablefromwhereveryouare.
• Latestversionavailability
– Whenyoueditadocumentathome,thatedited versioniswhatyouseewhen
youaccessthedocumentat work.
– Thecloudalwayshoststhelatestversionofyourdocumentsaslongasyouare
connected, you are not in danger of having an outdated version.
20
AdvantagesofCloudComputing
• Easiergroupcollaboration
– Sharingdocumentsleadsdirectlytobettercollaboration.
– Manyusersdothisasitisanimportantadvantagesofcloudcomputing
multipleuserscancollaborateeasilyondocumentsandprojects
• Deviceindependence
– Youarenolongertetheredtoasinglecomputerornetwork.
– Changestocomputers,applicationsanddocumentsfollowyouthroughthe
cloud.
– Movetoaportabledevice,andyourapplicationsanddocumentsarestill
available.
21
DisadvantagesofCloudComputing
• Requiresaconstantinternetconnection
– CloudcomputingisimpossibleifyoucannotconnecttotheInternet.
– SinceyouusetheInternettoconnecttobothyourapplicationsanddocuments,ifyoudonot have an
Internet connection you cannot access anything, even your own documents.
– AdeadInternetconnectionmeansnoworkandinareaswhereInternetconnectionsarefewor
inherently unreliable, this could be a deal-breaker.
• Doesnotworkwellwithlow-speedconnections
– Similarly,alow-speedInternetconnection,suchasthatfoundwithdial-upservices,makes cloud
computing painful at best and often impossible.
– Web-basedapplicationsrequirealotofbandwidthtodownload,asdolargedocuments.
22
DisadvantagesofCloudComputing
• Featuresmightbelimited
– Thissituationisboundtochange,buttodaymanyweb-basedapplicationssimply are
not as full-featured as their desktop-based applications.
• Forexample,youcandoalotmorewithMicrosoftPowerPointthanwithGoogle
Presentation's web-based offering
• Canbe slow
– Evenwithafastconnection,web-basedapplicationscansometimesbeslowerthan
accessing a similar software program on your desktop PC.
– Everythingabouttheprogram,fromtheinterfacetothecurrentdocument,hasto
besentbackandforthfromyourcomputertothecomputersinthecloud.
– Ifthecloudservershappentobebackedupatthatmoment,orif theInternetis
havingaslowday,youwouldnotgettheinstantaneousaccessyoumightexpect from
desktop applications.
23
DisadvantagesofCloudComputing
• Storeddatamightnotbesecured
– Withcloudcomputing,allyourdataisstoredonthecloud.
• ThequestionsisHowsecureisthecloud?
– Canunauthorizedusersgainaccesstoyourconfidentialdata?
• Storeddatacanbelost!
– Theoretically,datastoredinthecloudissafe,replicatedacrossmultiplemachines.
– Butontheoffchancethatyourdatagoesmissing,youhavenophysicalorlocalbackup.
• Putsimply,relyingonthecloudputsyouatriskifthecloudletsyoudown.
24
DisadvantagesofCloudComputing
• HPCSystems Highperformancesystem
– Notclearthatyoucanruncompute-intensiveHPCapplicationsthatuseMPI/OpenMP!
– Schedulingisimportantwiththistypeofapplication
• asyouwantalltheVMtobeco-locatedtominimizecommunicationlatency!
• GeneralConcerns
– Eachcloudsystemsusesdifferentprotocols anddifferentAPIs
• maynotbepossibletorunapplicationsbetweencloudbasedsystems
– AmazonhascreateditsownDBsystem(notSQL92),andworkflowsystem(many
popular workflow systems out there)
• soyournormalapplicationswillhavetobeadaptedtoexecuteontheseplatforms.
25
EvolutionofCloudComputing
Businessdriversforadoptingcloud
computing
Reasons
• Themainreasonforinterest incloudcomputingisduetothefactthat
public clouds can significantly reduce IT costs.
• From and end user perspective cloud computing gives the illusion of
potentiallyinfinitecapacitywithabilitytoscalerapidlyandpayonlyfor the
consumed resource.
• Incontrast,provisioningforpeakcapacityisanecessitywithinprivate data
centers, leading to a low average utilization of 5-20 percent.
27
IaaSEconomics
Inhouseserver Cloudserver
PurchaseCost $9600(x86,3QuadCore,12GB 0
RAM, 300GB HD)
Cost/hr(over3years) $0.36 $0.68
Costratio:Cloud/Inhouse 1.88
Source:EnterpriseCloudComputingbyGautamShroff
28
Benefitsfortheenduserwhileusingpubliccloud
• High utilization
• Highscalability
• Noseparatehardwareprocurement
• Noseparatepowercost
• NoseparateITinfrastructureadministration/maintenancerequired
• PubliccloudsofferuserfriendlySLAbyofferinghighavailability(~99%)andalso
provide compensation in case of SLA miss.
• Userscanrentthecloudtodevelopandtestprototypesbeforemakingmajor
investmentsintechnology
29
Benefitsfortheenduserwhileusingpubliccloud
• Inordertoenhanceportabilityfromonepubliccloudtoanother,several
organizationssuchasCloudComputingInteroperabilityForumandOpen
Cloud Consortium are coming up with standards for portability.
• Fore.g.AmazonEC2andEucalyptussharethesameAPIinterface.
• Softwarestartupsbenefittremendouslybyrentingcomputingandstorage
infrastructure on the cloud instead of buying them as they are uncertain
about their own future.
30
BenefitsforSmallandMediumBusinesses (<250employees)
Source:http://www.microsoft.com/en-us/news/presskits/telecom/docs/SMBCloud.pdf
31
Benefitsofprivatecloud
• Costof1serverwith12coresand12GBRAMisfarlowerthanthe cost of
12 servers having 1 core and 1 GB RAM.
• Confidentialityofdataispreserved
• Virtualmachinesarecheaperthanactualmachines
• Virtualmachinesarefastertoprovisionthanactualmachines
32
EconomicsofPaaSvsIaaS
• Considerawebapplicationthatneedstobeavailable24X7,but
wherethetransactionvolumeisunpredictableandcanvaryrapidly
• UsinganIaaScloud,aminimalnumberofserverswouldneedtobe
provisionedatalltimestoensureavailability
• Incontrast,merelydeployingtheapplicationonPaaScloudcosts
nothing. Depending upon the usage, costs are incurred.
• ThePaaScloudscalesautomaticallytosuccessfullyhandleincreased
requests to the web application.
Source:EnterpriseCloudComputingbyGautamShroff
33
PaaSbenefits
• Noneedfortheusertohandlescalingandloadbalancingof
requests among virtual machines
• PaaS clouds also provide web based Integrated Development
Environmentfordevelopmentanddeploymentofapplicationon
the PaaS cloud.
• Easiertomigratecodefromdevelopmentenvironmenttothe
actual production environment.
• Hencedeveloperscandirectlywriteapplicationsonthecloudand
don’thavetobuyseparatelicensesofIDE.
34
SaaSbenefits
• Userssubscribetowebservicesandwebapplicationsinsteadof
buying and licensing software instances.
• Fore.g.GoogleDocscanbeusedforfree,insteadofbuying
document reading softwares such as Microsoft Word.
• Enterprises can use web based SaaS Content Relationship
Managementapplications,insteadofbuyingserversandinstalling
CRM softwares and associated databases on them.
Customerrelationshipmanagement
35
Benefits,asperceivedbytheITindustry
36
Factorsdrivinginvestmentincloud
Source:http://www.cloudtweaks.com/2012/01/infographic-whats-driving-investment-in-cloud-
computing/
37
Factorsdrivinginvestmentincloud
Source:http://www.cloudtweaks.com/2012/01/infographic-whats-driving-investment-in-cloud-computing/
38
Purposeofcloudcomputingin organizations
• ProvidinganITplatformforbusinessprocessesinvolvingmultipleorganizations
• Backingupdata Enterpriseresourceplanning
• RunningCRM,ERP,orsupplychainmanagementapplications
• Providingpersonalproductivityandcollaborationtoolstoemployees
• Developingandtestingsoftware
• Storingandarchivinglargefiles (e.g.,videooraudio)
• Analyzingcustomeroroperations data
• Runninge-businessore-governmentwebsites
Source:http://askvisory.com/research/key-drivers-of-cloud-computing-activity/
39
Purposeofcloudcomputingin organizations
• Analyzingdataforresearchanddevelopment Putanend
• Meetingspikesindemandonourwebsiteorinternal systems
• Processingandstoringapplicationsorotherforms
• Runningdata-intensivebatchapplications(e.g.,dataconversion,riskmodeling,
graphics rendering)
• Sharinginformationwiththegovernmentorregulators
• Providingconsumerentertainment,informationandcommunication(e.g.,music,
video,photos,socialnetworks)
Source:http://askvisory.com/research/key-drivers-of-cloud-computing-activity/
40
Topcloudapplicationsthataredrivingcloudadaptation
• MailandMessaging
• Archiving
• Backup
• Storage
• Security
• VirtualServers
• CRM(CustomerRelationshipManagement)
• Collaborationacrossenterprises
• HostedPBX(PrivateBranchExchange)
• VideoConferencing
Source:http://www.itnewsafrica.com/2012/09/ten-drivers-of-cloud-computing-for-south-african-businesses/
41
42
CLOUDCOMPUTING
CLOUDCOMPUTINGARCHITECTURE
PROF.SOUMYAK.GHOSH
DEPARTMENTOFCOMPUTERSCIENCEANDENGINEE
RING IIT KHARAGPUR
Context:HighLevelArchitecturalApproach
Source:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing%20Architecture%20-
%20Gerald%20Kaefer.pdf
2
MajorbuildingblocksofCloudComputing
Architecture
• TechnicalArchitecture:
– StructuringaccordingtoXaaSstack
– Adoptingcloudcomputingparadigms
– Structuringcloudservicesandcloudcomponents
– Showingrelationshipsandexternalendpoints
– Middlewareandcommunication
– Managementandsecurity
• DeploymentOperationArchitecture:
– Geo-locationcheck(Legalissues,exportcontrol)
– OperationandMonitoring
Ref:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing
%20Architecture%20-%20Gerald%20Kaefer.pdf
3
CloudComputingArchitecture-XaaS
Source:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing%20Architecture
%20-%20Gerald%20Kaefer.pdf
4
XaaS Stackviews: CustomerviewvsProviderview
Source:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing%20Architecture
%20-%20Gerald%20Kaefer.pdf
5
MicrosoftAzurevsAmazonEC2
Source:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing%20Architecture
%20-%20Gerald%20Kaefer.pdf
6
Architectureforelasticity
Source:http://www.sei.cmu.edu/library/assets/presentations/Cloud%20Computing%20Architecture
%20-%20Gerald%20Kaefer.pdf
7
ServiceModels(XaaS)
CombinationofService-OrientedInfrastructure(SOI)andcloud
computing realizes to XaaS.
XasaService(XaaS)isageneralizationforcloud-relatedservices
XaaSstandsfor"anythingasaservice"or"everythingasaservice“
XaaSreferstoanincreasingnumberofservicesthataredelivered
over the Internet rather than provided locally or on-site
XaaSistheessenceofcloudcomputing.
8
ServiceModels(XaaS)
9
ServiceModels(XaaS)
Source:CloudSecurityandPrivacy:An
EnterprisePerspectiveonRisksandCompliancebyTimMatherandSubraKumaraswamy
10
ServiceModels(XaaS)
MostcommonexamplesofXaaSare
SoftwareasaService(SaaS)
PlatformasaService(PaaS)
InfrastructureasaService(IaaS)
OtherexamplesofXaaSinclude
BusinessProcessasaService(BPaaS)
Storageasaservice(anotherSaaS)
Securityasaservice(SECaaS)
Databaseasaservice(DaaS)
Monitoring/management asaservice(MaaS)
Communications,contentandcomputingasaservice(CaaS)
Identityasaservice(IDaaS)
Backupasaservice(BaaS)
Desktopasaservice(DaaS)
11
RequirementsofCSP(CloudServiceProvider)
• Increaseproductivity
• Increaseendusersatisfaction
• Increaseinnovation
• Increaseagility
12
ServiceModels(XaaS)
• Broadnetworkaccess(cloud)+resourcepooling(cloud)+
business-driveninfrastructureon-demand(SOI)+service-
orientation (SOI) = XaaS
• Xaasfulfilsallthe4demands!
Source:UnderstandingtheCloudComputingStack:PaaS,SaaS,IaaS©Dive
rsityLimited,2011
13
ClassicalServiceModel
AlltheLayers(H/W,OperatingSystem,DevelopmentTools,Applications)Managedbythe
Users
Data
Usersbearsthecostsofthehardware,maintenanceandtechnology.
Managedbyuse
Runtime
Eachsystemisdesignedandfundedforaspecificbusinessactivity:custombuild-to-order Middleware
O/S
Systemsaredeployedasaverticalstackof “layers”whicharetightlycoupled,sonosingle part
Virtualization
can be easily replaced or changed
r
Servers
Prevalentofmanualoperationsforprovisioning,management Storage
Result:LegacyIT Network
Source:Dragan,“xaaSasaModernInfrastructureforeGoverementBusinesMo
delintheRepublicof Croatia”
14
KeyimpactofcloudcomputingforITfunction:
FromLegacyITtoEvergreenIT
SimplifiedIT SimplifiedIT Stack
Stack
End-userdevices
End-userdevices
Application Application
DedicatedInfrastructure DedicatedInfrastructure
LegacyIT EvergreenIT
15
ClassicModelvs.XaaS
16
ClientServerArchitecture
Source:Wikipedia
17
18
CLOUDCOMPUTING
CLOUDCOMPUTINGARCHITECTURE
PROF.SOUMYAK.GHOSH
DEPARTMENTOFCOMPUTERSCIENCEANDENGINEE
RING IIT KHARAGPUR
ClientServerArchitecture
Source:Wikipedia
2
Clientserverarchitecture
• Consistsofoneormoreloadbalancedservers
servicing requests sent by the clients
• Clientsandserversexchangemessagein
request-response fashion
• Clientisoftenathinclientoramachinewith low
computational capabilities
• Servercouldbealoadbalancedclusterora
stand alone machine.
3
ThreeTierClient-ServerArchitecture
Source:Wikipedia
4
ClientServermodelvs.Cloudmodel
Clientservermodel Cloudcomputingmodel
• Simpleservicemodelwhere • Variety of complex service
server services client models,suchas,IaaS,PaaS,
requests SaaS can be provided
• May/maynotbeload • Loadbalanced
balanced
• Theoreticallyinfinitely
• Scalabletosomeextentina scalable
cluster environment.
• Virtualizationisthecore
• Noconceptofvirtualization concept
5
CloudServices
Source:http://www.opengroup.org/soa/source-book/socci/
extend.htm#figure2
6
Cloudservicemodels
Source:http://www.cs.helsinki.fi/u/epsavola/seminaari/Cloud%20Service
%20Models.pdf
7
Simplifieddescriptionofcloudservicemodel
s
SaaSapplicationsaredesignedforendusersandare
delivered over the web
PaaS is the set of tools and services designed to make
codinganddeployingapplicationsquicklyandefficiently
IaaSisthehardwareandsoftwarethatpowersitall–
servers, storage, network, operating systems
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-
the-Cloud-Computing-Stack.pdf
8
TransportationAnalogy
• Byitself,infrastructureisn’tuseful–itjustsitstherewaiting for
someone to make it productive in solving a particular
problem. Imagine the Interstate transportation system in
the U.S. Even with all these roads built, they wouldn’t be
useful without cars and trucks to transport people and
goods.Inthisanalogy,theroadsaretheinfrastructureand the
cars and trucks are the platform that sits on topof the
infrastructureandtransportsthepeopleandgoods.These
goods and people might be considered the software and
information in the technical realm
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-the-Cloud-
Computing-Stack.pdf
9
SoftwareasaService
• SaaSisdefinedassoftwarethatisdeployedovertheinternet.
With SaaS, a provider licenses an application to customers
either as a service on demand, through a subscription, in a
“pay-as-you-go” model, or (increasingly) at no charge when
there is opportunity to generate revenue from streams other
than the user, such as from advertisement or user list sales.
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-the-
Cloud-Computing-Stack.pdf
10
SaaScharacteristics
• Webaccesstocommercialsoftware
• Softwareismanagedfromcentrallocation
• Softwareisdeliveredina‘onetomany’model
• Usersnotrequiredtohandlesoftwareupgradesandpatches
• ApplicationProgrammingInterfaces(API)allowforintegration
between different pieces of software.
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-the-Cloud-
Computing-Stack.pdf
11
ApplicationswhereSaaSisused
• Applications where there is significant interplay between
organizationandoutsideworld.E.g.emailnewslettercampaign
software
• Applicationsthathaveneedforwebormobileaccess.E.g.mobile
sales management software
• Softwarethatisonlytobeusedforashorttermneed.
• Softwarewheredemandspikessignificantly.E.g.Tax/Billing
softwares. Putanend
• E.g.ofSaaS:SalesForceCustomerRelationshipManagement(CRM)
software
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-
the-Cloud-Computing-Stack.pdf
12
ApplicationswhereSaaSmaynotbethebest
option
• Applicationswhereextremelyfastprocessingof
realtimedataisneeded
• Applicationswherelegislationorotherregulation
does not permit data being hosted externally
• Applicationswhereanexistingon-premisesolution
fulfills all of the organization’s needs
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-the-
Cloud-Computing-Stack.pdf
13
PlatformasaService
• Platform as a Service (PaaS) brings the benefits that
SaaS bought for applications, but over to the software
development world. PaaS can be defined as a
computing platform that allows the creation of web
applications quickly and easily and without the
complexityofbuyingandmaintainingthesoftwareand
infrastructure underneath it.
• PaaSisanalogoustoSaaSexceptthat,ratherthanbeing
software delivered overthe web, itisaplatformfor the
creation of software, delivered over the web.
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-
the-Cloud-Computing-Stack.pdf
14
CharacteristicsofPaaS
Services to develop, test, deploy, host and maintain applications in the same
integrateddevelopmentenvironment.Allthevaryingservicesneededtofulfillthe
application development process.
Webbaseduserinterfacecreationtoolshelptocreate,modify,testanddeploy
differentUIscenarios.
Multi-tenantarchitecturewheremultipleconcurrentusersutilizethesame
development application.
Builtinscalabilityofdeployedsoftwareincluding loadbalancing andfailover.
Integrationwithwebservicesanddatabasesviacommonstandards.
Supportfordevelopmentteamcollaboration–somePaaSsolutionsinclude
project planning and communication tools.
Toolstohandlebillingandsubscriptionmanagement
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-
the-Cloud-Computing-Stack.pdf
15
ScenarioswherePaaSisused
PaaSisespeciallyusefulinanysituationwheremultipledevelopers will
be working on a development project or where other external
parties need to interact with the development process
PaaSisusefulwheredeveloperswishtoautomatetestingand
deploymentservices.
Thepopularityofagilesoftwaredevelopment,agroupofsoftware
development methodologies based on iterative and incremental
development, will also increase the uptake of PaaS as it eases the
difficulties around rapid development and iteration of software.
PaaSExamples:MicrosoftAzure,GoogleAppEngine
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-
the-Cloud-Computing-Stack.pdf
16
ScenarioswherePaaSisnotideal
• Wheretheapplicationneedstobehighlyportableinterms of
where it is hosted.
• Whereproprietarylanguagesorapproacheswouldimpact on
the development process
• Whereaproprietarylanguagewouldhinderlatermovesto
anotherprovider – concerns are raised about vendor lock
in
• Whereapplicationperformancerequirescustomizationof
the underlying hardware and software
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/
Understanding-the-Cloud-Computing-Stack.pdf
17
InfrastructureasaService
18
CharacteristicsofIaaS
• Resourcesaredistributedasaservice
• Allowsfordynamicscaling
• Hasavariablecost,utilitypricingmodel
• Generallyincludesmultipleusersonasingle
piece of hardware
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/Understanding-the-
Cloud-Computing-Stack.pdf
19
ScenarioswhereIaaSmakessense
Wheredemandisveryvolatile–anytimetherearesignificantspikes
andtroughsintermsofdemandontheinfrastructure
Forneworganizationswithoutthecapitaltoinvestinhardware
Wheretheorganizationisgrowingrapidlyandscalinghardware
would be problematic
Wherethereispressureontheorganizationtolimitcapital
expenditure and to move to operating expenditure
Forspecificlineofbusiness,trialortemporaryinfrastructuralneeds
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/
Understanding-the-Cloud-Computing-Stack.pdf
20
ScenarioswhereIaaSmaynotbethebest
option
• Whereregulatorycompliancemakesthe
offshoringoroutsourcingofdatastorageand
processing difficult
• Where the highest levels of performance are
required,andon-premiseordedicatedhosted
infrastructure has the capacity to meet the
organization’sneeds
Source:http://broadcast.rackspace.com/hosting_knowledge/whitepapers/
Understanding-the-Cloud-Computing-Stack.pdf
21
SaaSproviders
Source:http://www.cs.helsinki.fi/u/epsavola/seminaari/Cloud%20Service
%20Models.pdf
22
FeaturecomparisonofPaaSproviders
Source:http://www.cs.helsinki.fi/u/epsavola/seminaari/Cloud%20Service
%20Models.pdf
23
FeaturecomparisonofIaaSproviders
Source:http://www.cs.helsinki.fi/u/epsavola/seminaari/Cloud%20Service
%20Models.pdf
24
XaaS ADRMOVSSN
SaaS PaaS IaaS
Managedby
Managedbyuse
Applications DataRuntime Middleware O/S Virtualization Servers Storage
Applications Network
Applications
DataRuntime Middleware O/S Vir
Data
user
Runtime
Managed byservice
Middleware O/S
Managed byservice
Managed byservice
Virtualization
Servers
Storage
Network
25
RoleofNetworkingincloudcomputing
• Incloudcomputing,networkresourcescanbe
provisioned dynamically.
• Someofthenetworkingconceptsthatformthecore of
cloudcomputingareVirtual Local AreaNetworks,
Virtual Private Networks and the different protocol
layers.
• Examplesoftoolsthathelpinsettingupdifferent
networktopologiesandfacilitatevariousnetwork
configurations are OpenSSH, OpenVPN etc.
Source:http://www.slideshare.net/alexamies/networking-concepts-and-tools-
for-the-cloud
26
Networkingindifferentcloudmodels
Source:http://www.slideshare.net/alexamies/networking-concepts-and-tools-
for-the-cloud
27
NetworkFunctionVirtualization
Definition:“Network Functions Virtualisation aims to transform the way that network
operators architect networks by evolving standard IT virtualisation technology to
consolidate many network equipment types onto industry standard high volume servers,
switchesandstorage,whichcouldbelocatedinDatacentres,NetworkNodesandintheend
userpremises,asillustratedinFigure1.Itinvolvestheimplementationofnetworkfunctions in
software that can run on a range of industry standard server hardware, and that can be
movedto, or instantiatedin, various locations in the network asrequired, without the need
for installation of new equipment.”
Source:https://portal.etsi.org/nfv/
nfv_white_paper.pdf
NetworkFunctionVirtualization
Source:https://portal.etsi.org/nfv/
nfv_white_paper.pdf
30