The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar...

40
The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering West Virginia University, Morgantown, West Virginia, USA, 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 م ي ح ر ل ا ن م ح ر ل له ا ل م ا س ب له ل ول ا س ى ر عل لام س ل وا! لاة ص ل له ، وا ل مد ح ل ا

description

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 3 What is Cloud Computing

Transcript of The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar...

Page 1: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1

Hany H. AmmarLANE Department of Computer Science and Electrical

EngineeringWest Virginia University, Morgantown, West Virginia, USA,

Cloud Computing: Benefits and Challenges

A Key Note PresentationThe 20th International Conference on Computer

Theory and Applications (ICCTA 2010) , Alexandria, Egypt , October 24, 2010

الرحيم الرحمن الله بسمالله رسول على والسالم والصالة ، لله الحمد

Page 2: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 2

OUTLINE

• 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

Page 3: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 3

What is Cloud Computing

Page 4: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 4

What 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.

Page 5: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 5

What 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 optionAmazon Elastic Compute Cloud (Amazon EC2) web service

provides resizable compute capacity in the cloudDesigned to make web-scale computing easier for developers.

Page 6: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 6

What 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)

Page 7: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 7

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_COLAB_Sept2007.pdf

Page 8: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 8

OUTLINE

• 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

Page 9: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 9

Example: University of Florida Campus Grid

Page 10: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 10

Example: University of California Campus Grid

Page 11: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 11

What 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@home, Climateprediction.net, Rosetta@home, Folding@home, World Community Grid, and many, Folding@home (http://boinc.berkeley.edu/download.php)

Uses Screensavers (windows) or low-priority process (linux)

Page 12: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 12

What 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

Page 13: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 13

What 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.

Page 14: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 14

OUTLINE

• 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

Page 15: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 15

Benefits 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 dependentVirtual resource set (VRS): is built on top of PRS

to run in multivendor cloud

Page 16: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

Infrastructure-as-a-Service Providers

Lenk et al, CLOUD’09, May 23, 2009, Vancouver, CanadaThe 20th International Conference on Computer Theory and Applications (ICCTA 2010) 16

Page 17: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 17

Benefits of Cloud Computing

Platform as a service (PaaS): Java or .NET

Page 18: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

Platform as a service Providers

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 18

Page 19: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 19

Benefits of Cloud Computing Software as a service (SaaS): e.g Gmail, Google Docs, Matlab,

Page 20: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

Software-as-a-Service Providers.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 20

Page 21: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 21

Benefits 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 departmentsat 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”

Page 22: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

Human-as-a-Service Providers

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 22

“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.

Page 23: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 23

Benefits of Cloud ComputingThe Big Picture of the Cloud Layered Architecture

Page 24: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 24

Benefits 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.

Page 25: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 25

OUTLINE

• 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

Page 26: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 26

Challenges of Cloud Computing

Providing Support for both Service Users and Service Providers

Page 27: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 27

Challenges 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

Page 28: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 28

Challenges of Cloud Computing: Build and Test Workflow, Challenges at all three levels

Page 29: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 29

Challenges of Cloud Computing: Build and Test Tasks Require complex environments

Page 30: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 30

Challenges of Cloud ComputingModel-Driven Design

Interdisciplinary Development teams:

End-to-End Collaboration &

Change Management

Konstantinou et alpropose an approach and architecture for compositionand deployment of virtual software services in cloud environments.VTDC’09, June 15, 2009, Barcelona, Spain., ACM 978-1-60558-580-2/09/06

Page 31: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 31

Challenges of Cloud ComputingCloud Management and Control

Page 32: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 32

Challenges 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/

Page 33: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 33

Challenges of Cloud Computing Examples of Current Support

AbiCloud Supports SaaS

http://abicloud.org/display/abiCloud/Home

Page 34: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 34

Challenges 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/

Page 35: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 35

Challenges 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 US$1 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

Page 36: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 36

OUTLINE

• 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

Page 37: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 37

Making 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

Page 38: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 38

Making 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

Page 39: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 39

Conclusions 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.

Page 40: The 20th International Conference on Computer Theory and Applications (ICCTA 2010) 1 Hany H. Ammar LANE Department of Computer Science and Electrical Engineering.

The 20th International Conference on Computer Theory and Applications (ICCTA 2010) http://iccta.aast.edu/index.php 40

خيرا الله وجزاكم