Chapter 2 Cloud Computing
Chapter 2 Cloud Computing
Chapter 2 Cloud Computing
CS
Chapter 2 Cloud Computing
1
Publish
Inform scale
Interact
web
Integrate
Transact
Discover (intelligence)
Semantic
discovery
Automate (discovery)
HPC, cloud
Data-intensive
time
deep web
Challenges
3
Enter the cloud
Cloud computing is Internet-based computing, whereby
shared resources, software and information are
provided to computers and other devices on-demand,
like the electricity grid.
The cloud computing is a culmination of numerous
attempts at large scale computing with seamless access
to virtually limitless resources.
on-demand computing, utility computing, ubiquitous
computing, autonomic computing, platform
computing, edge computing, elastic computing, grid
computing, …
4
What is Cloud Computing?
Inaddition, the platform provides on
demand services, that are always on,
anywhere, anytime and any place.
Pay for use and as needed, elastic
scale up and down in capacity and
functionalities
The hardware and software services
are available to
general public, enterprises,
corporations and businesses markets
5
Cloud Computing Characteristics
Common Characteristics:
Essential Characteristics:
On Demand Self-Service
Broad Network Access Rapid Elasticity
Resource Pooling Measured Service
6
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
Cloud Xteristics
Cloud computing is an umbrella term used to refer
to Internet based development and services
A number of characteristics define cloud data,
applications services and infrastructure:
Remotely hosted: Services or data are hosted on remote
infrastructure.
Ubiquitous: Services or data are available from anywhere.
Commodified: The result is a utility computing model
similar to traditional that of traditional utilities, like gas
and electricity - you pay for what you would want!
7
Basic Cloud Characteristics
The “no-need-to-know” in terms of the
underlying details of infrastructure, applications
interface with the infrastructure via the APIs.
The “flexibility and elasticity” allows these
systems to scale up and down at will
utilising the resources of all kinds
CPU, storage, server capacity, load balancing, and
databases
The “pay as much as used and needed” type of
utility computing and the “always on!,
anywhere and any place” type of network-
based computing.
8
Cloud Service Models
SalesForce CRM
LotusLive
Google
App
Engine
9
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance
SaaS Maturity Model
Level 1: Ad-Hoc/Custom –
One Instance per
customer
Level 4: Scalable,
Configurable & Multi-
Tenant-Efficient
10
Source: Frederick Chong and Gianpaolo Carraro, “Architectures Strategies for Catching the Long Tail”
Software as a Service (SaaS)
SaaS is a model of software deployment
where an application is hosted as a service
provided to customers across the Internet.
Saas alleviates the burden of software
maintenance/support
but users relinquish control over software
versions and requirements.
Terms that are used in this sphere include
Platform as a Service (PaaS) and
Infrastructure as a Service (IaaS)
11
Cloud Computing Service Layers
Services Description
Services – Complete business services such as
Services PayPal, OpenID, OAuth, Google Maps, Alexa
Focused
Hosting – Physical data centers such as those run
Hosting by IBM, HP, NaviSite, etc.
12
12
Enabling Technologies
Cloud
Cloudapplications:
applications:data-intensive,
data-intensive,
compute-intensive,
compute-intensive,storage-intensive
storage-intensive
Bandwidth
WS
Services interface
64-bit
13
processor
Virtualization
Virtual workspaces:
An abstraction of an execution environment that can be made
dynamically available to authorized clients by using well-defined
protocols,
Resource quota (e.g. CPU, memory share),
Software configuration (e.g. O/S, provided services).
Implement on Virtual Machines (VMs):
Abstraction of a physical host machine,
Hypervisor intercepts and emulates instructions from VMs, and
allows management of VMs, App App App
VMWare, Xen, etc. OS OS OS
Hypervisor
Provide infrastructure API:
Hardware
Plug-ins to hardware/support structures
Virtualized Stack
Virtual Machines
VM technology allows multiple virtual machines to run on a single
physical machine.
Hardware
Denali
etc.
Performance: Para-virtualization (e.g. Xen) is very close to raw physical
performance! 15
Cloud-Sourcing
Why is it becoming a Big Deal:
Using high-scale/low-cost providers,
Any time/place access via web browser,
Rapid scalability; incremental cost and load sharing,
Can forget need to focus on local IT.
Concerns:
Performance, reliability, and SLAs,
Control of data, and service parameters,
Application features and choices,
Interaction between Cloud providers,
No standard API – mix of SOAP and REST!
Privacy, security, compliance, trust…
17
Cloud Taxonomy
18
Cloud Storage
Several large Web companies are now
exploiting the fact that they have data storage
capacity that can be hired out to others.
allows data stored remotely to be temporarily
cached on desktop computers, mobile phones or
other Internet-linked devices.
Private
Public
Community
Hybrid
21
Opportunities and Challenges
The use of the cloud provides a number of
opportunities:
It enables services to be used without any
understanding of their infrastructure.
Cloud computing works using economies of scale:
Itpotentially lowers the outlay expense for start up
companies, as they would no longer need to buy their own
software or servers.
Cost would be by on-demand pricing.
Vendors and Service providers claim costs by establishing an
ongoing revenue stream.
Data and services are stored remotely but accessible
from “anywhere”.
22
Opportunities and Challenges
In parallel there has been backlash against cloud computing:
Use of cloud computing means dependence on others and that could possibly
limit flexibility and innovation:
The others are likely become the bigger Internet companies like Google and IBM,
who may monopolise the market.
Some argue that this use of supercomputers is a return to the time of mainframe
computing that the PC was a reaction against.
Security could prove to be a big issue:
It is still unclear how safe out-sourced data is and when using these services
ownership of data is not always clear.
There are also issues relating to policy and access:
If your data is stored abroad whose policy do you adhere to?
What happens if the remote server goes down?
How will you then access files?
There have been cases of users being locked out of accounts and losing access to
data.
23
What is the purpose and benefits?
Cloud computing enables companies and
applications, which are system infrastructure
dependent, to be infrastructure-less.
By using the Cloud infrastructure on “pay as used
and on demand”, all of us can save in capital and
operational investment!
Clients can:
Put their data on the platform instead of on their own
desktop PCs and/or on their own servers.
They can put their applications on the cloud and use the
servers within the cloud to do processing and data
manipulations etc.
24
Advantages of Cloud Computing
Lower computer costs:
You do not need a high-powered and high-priced computer
to run cloud computing's web-based applications.
Since applications run in the cloud, not on the desktop PC,
your desktop PC does not need the processing power or hard
disk space demanded by traditional desktop software.
When you are using web-based applications, your PC can be
less expensive, with a smaller hard disk, less memory, more
efficient processor...
In fact, your PC in this scenario does not even need a CD or
DVD drive, as no software programs have to be loaded and
no document files need to be saved.
25
Advantages of Cloud Computing
Improved performance:
With few large programs hogging your computer's
memory, you will see better performance from your PC.
Computers in a cloud computing system boot and run
faster because they have fewer programs and processes
loaded into memory…
Reduced software costs:
Instead of purchasing expensive software applications,
you can get most of what you need for free-ish!
most cloud computing applications today, such as the Google Docs suite.
better than paying for similar commercial software
which alone may be justification for switching to cloud applications.
26
Advantages of Cloud Computing
Instant software updates:
Another advantage to cloud computing is that you are no longer
faced with choosing between obsolete software and high upgrade
costs.
When the application is web-based, updates happen automatically
available the next time you log into the cloud.
When you access a web-based application, you get the latest version
without needing to pay for or download an upgrade.
33
Disadvantages of Cloud Computing
Stored data might not be secure:
With cloud computing, all your data is stored on the cloud.
The questions is How secure is the cloud?
Can unauthorised users gain access to your confidential
data?
Stored data can be lost:
Theoretically, data stored in the cloud is safe, replicated
across multiple machines.
But on the off chance that your data goes missing, you
have no physical or local backup.
Put simply, relying on the cloud puts you at risk if the cloud lets
you down. 34
Disadvantages of Cloud Computing
HPC Systems:
Not clear that you can run compute-intensive HPC applications
that use MPI/OpenMP!
Scheduling is important with this type of application
as you want all the VM to be co-located to minimize communication
latency!
General Concerns:
Each cloud systems uses different protocols and different APIs
may not be possible to run applications between cloud based systems
Amazon has created its own DB system (not SQL 92), and
workflow system (many popular workflow systems out there)
so your normal applications will have to be adapted to execute on these
platforms.
35
Grid Technology:
Emerging enabling technology.
Natural evolution of distributed systems and the Internet.
Middleware supporting network of systems to facilitate
sharing, standardization and openness.
Infrastructure and application model dealing with sharing of
compute cycles, data, storage and other resources.
Publicized by prominent industries as on-demand computing,
utility computing, etc.
Move towards delivering “computing” to masses similar to
other utilities (electricity and voice communication).”
Now,
36
It is a changed world now…
Explosive growth in applications: biomedical informatics, space
exploration, business analytics, web 2.0 social networking: YouTube,
Facebook
Extreme scale content generation: e-science and e-business data deluge
Extraordinary rate of digital content consumption: digital gluttony: Apple
iPhone, iPad, Amazon Kindle
Exponential growth in compute capabilities: multi-core, storage,
bandwidth, virtual machines (virtualization)
Very short cycle of obsolescence in technologies: Windows Vista
Windows 7; Java versions; CC#; Phython
Newer architectures: web services, persistence models, distributed file
systems/repositories (Google, Hadoop), multi-core, wireless and mobile
Diverse knowledge and skill levels of the workforce
You simply cannot manage this complex situation with your traditional IT
infrastructure:
37
The Future
Many of the activities loosely grouped together under
cloud computing have already been happening and
centralised computing activity is not a new phenomena
Grid Computing was the last research-led centralised
approach
However there are concerns that the mainstream
adoption of cloud computing could cause many
problems for users
Many new open source systems appearing that you can
install and run on your local cluster
should be able to run a variety of applications on these
systems
38