Title: Hany H. Ammar
1??? ???? ?????? ?????? ????? ??? ? ???????
??????? ??? ???? ????
Cloud Computing Benefits and Challenges A Key
Note Presentation The 20th International
Conference on Computer Theory and Applications
(ICCTA 2010) , Alexandria, Egypt , October 24,
2010
- Hany H. Ammar
- LANE Department of Computer Science and
Electrical EngineeringWest Virginia University,
Morgantown, West Virginia, USA, -
2OUTLINE
- What is Cloud Computing ?
- Examples of Campus clouds
- Benefits of Cloud Computing,
- What can we do with Cloud Computing?
- Challenges of Cloud Computing
- Making the case for Campus Clouds
- Conclusions
3Our Research Team on Cloud Computing
- Faculty
- Dr. Matthew Valenti, West Virginia University
- Dr Abdelkarim Erradi, Qatar University
- Prof. Fatma Omara, Dr. hesham Hassan, Dr Sherif
Khattab, Dr Osama Ismael, Cairo University - Dr. Walid AbdelMoez, Arab Academy of Science and
Techology, Alexandria, Egypt - Students
- Mohammed Said Saleh, Markous M. Yassa, Sana
AbdulJalil, Amr Mahmoud -
Cloud
3
4What is Cloud Computing
5What is Cloud Computing
- Resource availability is a key factor to achieve
prosperity of any society, - Particularly important are computing resources
- To attain their full potential, computing
resources need to be efficiently utilized
preferably in an aggregated manner. - The demand for computing resources can now be met
by utility computing, grid computing, and most
recently cloud computing.
6What is Cloud ComputingUtility Computing
- Utility computing providers rent capacity on
computing resources that they maintain - Metered computing analogous to electric power
(Pay per use) - Resources often virtualized and shared by
multiple tenants - Example Amazon Elastic Compute Cloud (estimated
60 USD/Month for one EC2 Instance for
24hrs/day-7days/week). Pay per use option - Amazon Elastic Compute Cloud (Amazon EC2) web
service provides resizable compute capacity in
the cloud - Designed to make web-scale computing easier for
developers.
7What is Cloud Computing Utility versus Cloud
computing
- Cloud computing not only provides raw computing
resources, but also hosts the applications that
use these resources. - Applications usually accessed via a web browser.
- User data typically stored on provider's file
systems. - Underlying computing infrastructure concealed
from user. - Example gmail servers are concealed from users
- Cloud Computing middleware systems are available
for building clouds and their applications (e.g.,
Eucalyptus and Hadoop)
8 What is Cloud Computing Cluster and Grid
Computing
- A cluster is a collection of tightly coupled
computing servers. - Usually co-located.
- A computing grid is a distributed collection of
computing servers. - While the servers may be dedicated resources,
they could be borrowed from idle desktop
computers. - A grid middleware system is needed to support the
development and assessment of service-oriented
grid systems and applications (e.g., CROWN-C)
http//www.wrgrid.org.uk/Resources/Leaflets/WRG_CO
LAB_Sept2007.pdf
9OUTLINE
- What is Cloud Computing ?
- Examples of Campus clouds
- Benefits of Cloud Computing,
- What can we do with Cloud Computing?
- Challenges of Cloud Computing
- Making the case for Campus Clouds
- Conclusions
10Example University of Florida Campus Grid
11Example University of California Campus Grid
12What is Cloud Computing Grid and Community
Computing
- Community computing projects assemble a grid of
donated CPU resources using volunteers idle
cycles - Example The BOINC software by UC Berkley is an
Open-source software for volunteer computing and
grid computing. - BOINC lets you donate your idle computer time to
science projects like SETI_at_home,
Climateprediction.net, Rosetta_at_home,
Folding_at_home, World Community Grid, and many,
Folding_at_home (http//boinc.berkeley.edu/download.p
hp) - Uses Screensavers (windows) or low-priority
process (linux)
13What is Cloud Computing Grid and Cloud Computing
- Resource Sharing
- Grid enhances fair sharing of resources across
organization. - Cloud provide resources according to demand so no
actual sharing of resources due to the isolation
through virtualization - Virtualization
- Grid virtualization covers both data and
resources (flat file and database). - Cloud adds virtualization for hardware resources
too - Security
- Grid security is not seriously explored.
- Cloud Each user has a unique access to the
virtualized environment
14What is Cloud Computing Grid and Cloud Computing
- Usability
- Clouds are easily usable hiding the deployment
details from the user. - Grid hard to manage
- Payment model
- Cloud use pay- per use model.
- Grid fixed rate per service.
- Scalability
- Both Grid and cloud deals with scalability
- Heterogeneity
- Both cloud and grid support aggregation of
heterogonous hardware and software.
15OUTLINE
- What is Cloud Computing ?
- Examples of Campus clouds
- Benefits of Cloud Computing,
- What can we do with Cloud Computing?
- Challenges of Cloud Computing
- Making the case for Campus Clouds
- Conclusions
16Benefits of Cloud Computing
- Cloud computing is a model that supports
everything as a service (XaaS), e.g, the X
changes to an I for, - Infrastructure as a Service (IaaS)
Physical resource set (PRS) is hardware
dependent or vendor dependent Virtual resource
set (VRS) is built on top of PRS to run in
multivendor cloud
17Infrastructure-as-a-Service Providers
18Benefits of Cloud Computing
- Platform as a service (PaaS) Java or .NET
19Platform as a service Providers
20Benefits of Cloud Computing
- Software as a service (SaaS) e.g Gmail, Google
Docs, Matlab,
21Software-as-a-Service Providers.
22Benefits of Cloud Computing
- Human as a service (HaaS) Amazon Mechanical Turk
(MTurk) is one of the suites of Amazon Web
Services, a crowdsourcing marketplace that
enables computer programs to coordinate the use
of Human Intelligence to perform Tasks (HITs)
which computers are unable to do - Workers can work on-line and make money by
choosing from thousands of posted HITs.
- US-based CrowdFlower has introduced a cloud labor
service that connects organizations searching
for temporary workers to refugees in Kenya , The
iPhone app helps a business outsource a basic
task, such finding a phone number for marketing
departments - at various companies and entering them into a
spread sheet. Workers in Kinya have completed
158,000 tasks, individuals earn as much as
28/week, 8 times what they get from typical jobs
in a refugee camp
23Human-as-a-Service Providers
In India Cloud Computing is projected to grow
from a 50 Million industry in 2009 to a 15
Billion Industry in 2013 S. Greengard Cloud
Computing and Developing Nations, Communications
of the ACM, May 2010.
24Benefits of Cloud ComputingThe Big Picture of
the Cloud Layered Architecture
Fig Cloud Stack
25Benefits of Cloud Computing
- The Provided services in the Cloud are the
following - Virtualized physical resources,
- Virtualized infrastructure,
- Virtualized middleware platforms
- Virtualized business applications
- Cloud computing reduces the need for advanced
hardware on the clients side - Clients can use inexpensive small Net Books and
virtually have the processing power of an
expandable Grid computing system - No need to buy a set of software or software
licenses - Data is no longer confined to the user's hard
drive, will be able to access data and
applications from anywhere at any time. There is
no more lost data due to hard drive failures - Corporations would save money on IT support, and
No need for space to house expensive hardware and
software servers.
26OUTLINE
- What is Cloud Computing ?
- Examples of Campus clouds
- Benefits of Cloud Computing,
- What can we do with Cloud Computing?
- Challenges of Cloud Computing
- Making the case for Campus Clouds
- Conclusions
27Challenges of Cloud Computing
- Providing Support for both Service Users and
Service Providers
28Challenges of Cloud Computing
- Service Providers Development Services, or Build
and Test Services, - Software Engineering Methodologies and tools
- How to manage clouds for Application Lifecycle
Management - The Cloud manager can limit projects to certain
clouds, control costs, manage security, or
supplement resources during peak use - Service Users easily usable clouds, hiding the
deployment details from the user using
virtualization, - Security and privacy are the biggest concerns
- Cost accounting data , and usage tracking for
Multiple Clouds. if the utility models were
adequate, the challenges to cloud - Computing could be solved with electricity-like
solutions, but they can not - Brynjolfsson et al, Communications of the ACM,
May 2010
29Challenges of Cloud Computing Build and Test
Workflow, Challenges at all three levels
30Challenges of Cloud Computing Build and Test
Tasks Require complex environments
31Challenges of Cloud ComputingModel-Driven Design
Interdisciplinary Development teams End-to-End
Collaboration Change Management Konstantinou
et al propose an approach and architecture for
composition and deployment of virtual software
services in cloud environments. VTDC09, June 15,
2009, Barcelona, Spain., ACM 978-1-60558-580-2/09/
06
32Challenges of Cloud ComputingCloud Management
and Control
33Challenges of Cloud Computing Examples of
Current Support for IaaS
- Apache Hadoop A Java software framework that
supports data-intensive distributed applications
and enables applications to work with thousands
of nodes and large amounts of data.
http//hadoop.apache.org/ - Nimbus is an open-source toolkit that, once
installed on a cluster, provides an
infrastructure as a Service cloud to its client
via WSRF-based or Amazon EC2 WSDL web service
APIs, http//www.nimbusproject.org/
34 Challenges of Cloud Computing Examples of
Current Support AbiCloud Supports SaaS
http//abicloud.org/display/abiCloud/Home
35Challenges of Cloud Computing Examples of
Current Support enStratus Supports SaaS,
ReliaCloud Supports IaaS
- enStratus is a SaaS-based system for managing
cloud infrastructures across multiple providers - http//www.enstratus.com/
- enStratus focuses on the deployment and ongoing
management of transactional database applications
in clouds like Amazon Web Services and
ReliaCloud. - The main features of enStratus include cloud
security and availability management. - ReliaCloud provides virtual Servers deployed
within a virtualization environment that is
architected to maximize uptime and performance.
http//www.reliacloud.com/ -
36Challenges of Cloud Computing Examples of
Current Support for PaaS and IaaS
- Sun Cloud is an on-demand Cloud computing service
operated by Sun Microsystems. The Sun Cloud
Compute Utility provides access to a substantial
computing resource over the Internet for US1 per
CPU-hour. - The Rackspace Cloud is a web application
hosting/cloud platform provider ("Cloud Sites")
that bills on a utility computing basis. It has
branched out into cloud storage ("Cloud Files")
and cloud infrastructure ("Cloud Servers"),
http//www.rackspacecloud.com/ - Kaavo provides solutions for deploying and
managing on-demand applications and workloads in
the cloud. - http//www.kaavo.com/home
37OUTLINE
- What is Cloud Computing ?
- Examples of Campus Clouds
- Benefits of Cloud Computing,
- What can we do with Cloud Computing?
- Challenges of Cloud Computing
- Making the case for Campus Clouds
- Conclusions
38Making the case for Campus Clouds
- College Campuses maintain significant
Infrastructure of computing resources in
computing Labs - This infrastructure is under utilized (many
students use laptops and Net Books) - Service Providers and Users are in need for
inexpensive computing resources
39Making the case for Campus Clouds
- Developing IaaS Campus cloud project aggregating
the computing resources of multiple college
campuses would provide the following benefits - Providing extra Revenue to colleges from service
providers and businesses - Providing students with an environment for
learning the concepts of cloud computing - Providing college systems maintenance team
(professionals and students) with the experience
of dealing with Cloud service providers and Cloud
users - Provides stronger ties between academia and
industry - Motivates the Industry to invest in academic
computing resources - Academic research will benefit from Campus clouds
40Conclusions
- Cloud computing has emerged to provide
inexpensive on-demand pay per use computing
resources - Cloud computing is closely related to grid
computing and utility computing. - Software Engineering Methodologies and tools are
needed for cloud developers (Cloud-based
Service-Oriented Engineering) - Security and privacy are the biggest concerns of
cloud computing users and developers - Campus Clouds can bring revenue for computing
resources, enhance student learning, strengthen
ties with Industry, and enhance academic
research.
41??????? ????? ?????