cloud computing - distributed systems group€“ e.g. google app engine, microsoft azure, … •...

42
Cloud Computing Ivona Brandic, Philipp Leitner Arbeitsgruppe für Verteilte Systeme Institut für Informationssysteme Technische Universität Wien

Upload: ngoduong

Post on 27-May-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Cloud Computing

Ivona Brandic, Philipp Leitner Arbeitsgruppe für Verteilte Systeme

Institut für Informationssysteme Technische Universität Wien

Cloud Computing

Compu&ngPowerasaconfigurable,payableService

Cloud Computing - Definitions

•  Cloud computing is a pay-per-use model for enabling convenient, on-demand network access to a shared pool of configurable and reliable computing resources (e.g., networks, servers, storage, applications, services) that can be rapidly provisioned and released with minimal consumer management effort or service provider interaction.

•  The cloud model is comprised of five key characteristics, three delivery models, and four deployment models.

3 Source: Peter Mell, Tim Grance NIST, Information Technology Laboratory

Why Cloud Computing

•  Old wine in new bottles?

4

5 Cloud Characteristics

•  On-demand self-service •  Ubiquitous network access •  Resource pooling •  Rapid elasticity •  Pay per use

5

3 Delivery Models

•  Cloud Software as a Service (SaaS) –  Use provider’s applications over a network –  E.g., Salesforce.com,…

•  Cloud Platform as a Service (PaaS) –  Deploy customer-created applications to a cloud –  E.g. Google App Engine, Microsoft Azure, …

•  Cloud Infrastructure as a Service (IaaS) –  Rent processing, storage, network capacity, and other

fundamental computing resources –  E.g. Elastic Computer Cloud (EC3), Simple Storage

Service (S3), Simple DB,….

6

SaaP

•  SaaP –  Google Application Engine

•  Google Mail, Google Calendar, Picasa, Google Talk, Google Docs, ….

7

4 Cloud Deployment Types

•  Private cloud – enterprise owned or leased •  Community cloud – shared infrastructure for

specific community •  Public cloud – Sold to the public, mega-scale

infrastructure •  Hybrid cloud – composition of two or more

clouds

8

Cloud Characteristics

Cloud computing often leverages: •  Massive scale •  Virtualization •  Free software •  Autonomic computing •  Multi-tenancy •  Geographically distributed systems •  Advanced security technologies

9

Cloud Technologies

•  Virtualization •  Grid technology •  Service Oriented

Architectures •  Distributed

Computing •  Broadband Networks

•  Browser as a platform •  Free and Open

Source Software •  Autonomic Systems •  Web 2.0 •  Web application

frameworks •  Service Level

Agreements (SLAs)

10

Virtualization

•  Host operating system that provides an abstraction layer for running virtual “guest” operating systems

•  “hypervisor” or “virtual machine monitor” •  Enables guest OSs to run in isolation of other

OSs •  Run multiple types of Oss •  Increases utilization of physical servers •  Enables portability of virtual servers between

physical servers

11

Grid Computing

•  Distributed parallel processing across a network •  Resouce negotiation •  Coordination of independent resources •  Virtual Organizations (VO)s •  Uses open standards and interfaces •  Non trivial Quality of Service •  Facilitates interconnection of heterogeneous

computers/host/clusters •  Distribution across large geographical

boundaries •  Loose coupling of computers 12

Web Application Frameworks

•  Enables dynamic web sites •  Facilitates web and DB related programming

operations (e.g., web services support) –  Creation of Web 2.0 applications –  Supported by most major software languages

•  Separation of business logic from the user interface

•  Authentication, Authorization,…

13

Web Services

•  Stateless web interaction •  Describe encapsulated units of work which are

available over the network –  Interfaces –  SOAP, WSDL, … WS-* standards

•  Standard based interfaces and protocols –  e.g., SOAP, WSDL, WS-Security –  Management of stateful Web Services (Web Service

Resource Framework) –  WS-Transaction, Choreography, Workflows –  Hierarchical web services

•  Loosely coupling 14

Multi-tenancy

•  Level 1: Ad- Hoc/Custom

•  Level 2: Configurable Level 3: Configurable, Multi-Tenant-Efficient

•  Level 4: Scalable, Configurable, Multi- Tenant-Efficient

15 Source: Peter Mell, Tim Grance NIST, Information Technology Laboratory

Examples for the Virtualization Middleware •  OpenNebula

–  Partly developed by the European Union’s Reservoir project

•  Zimory –  Developed by …

•  VMWare Vcloud –  Further development of the Globus Tooklits

•  Aneka Clouds –  University of Melbourne

•  VieSLAF –  Vienna University of Technology

16

OpenNebula

•  Transform a distributed infrastructure into a flexible virtual infrastructure

•  Adapt it to the changing demands of the the service workload

•  OpenNebula is a distributed virtualization layer

•  Decouple the service from the physical infrastructure

17 Ruben S. Montero: OpenNebula: Open Source Virtual Machine Manager for Cluster Computing

OpenNebula System Overview

18

Dynamic Provision of Computational Cluster

19

Cloud Business Models

•  Maximize Return On Investment (ROI), Minimize expenses

•  Conversion of fixed costs as the baseline operational expenses of running business into variable costs or costs which are volume-related, as for example in case of pay-per-use models

•  Exhibit rather deferring Capital Expenditures (CAPEX), which are expenditures creating future benefits e.g., buying new servers

•  Costs are moved towards Operating Expenses (OPEX), which are cost for running products, businesses, or infrastructures. earlier Return of Investment (ROI), especially in case of short-term business goals

20

Cloud-Like Environments Problems / Research Issues

•  5 key cloud characteristics: –  On demand self-service, ubiquitos network access, resource

pooling, rapid elasticity, pay per use expected quality

–  Frequent user interactions may become an obstacle for the success of Cloud computing application of autonomic computing

•  Establishment of SLAs –  different SLA protocols

–  different negotiation strategies

–  different security mechanism

•  Non-matching SLA templates

15.06.2009 21 GMAC'09

Managed through an autonomic process

Case Study: Cloud Computing

•  Services are configured on demand, reconfigured

•  Self-* characteristics •  Automatic SLA

management •  Self-governance •  …

Services

Source: “Buyya, Yeo, Venugopal, Broberg, Brandic. Cloud Computing and Emerging IT Platforms: Vision, Hype and Reality for Delivering Computing as 5th Utility, Elsevier Science 2009.”

Negotiation bootstrapping &

service mediation

Comparison of Cloud platforms

23

System Property

Amazon Elastic Compute Cloud

(EC2)

Google App Engine

Microsoft Azure

Sun Network.com (Sun

Grid)

Manjrasoft Aneka

Focus IaaS IaaS/PaaS IaaS/PaaS IaaS PaaS

Service Type Compute, Storage (Amazon S3) Web application Web and non-web

application Compute Compute

Virtualisation OS Level running on a Xen hypervisor Application container OS level through

Fabric controller

Job management system (Sun Grid Engine)

Resource Manager and Scheduler

Dynamic Negotiation of QoS Parameters

None None None None SLA-based Resource Reservation

User Access Interface

Amazon EC2 Command-line Tools

Web-based Administration Console

Windows Azure portal Job submission scripts, Sun Grid Web portal

Workbench, Web-based portal

Web APIs Yes Yes Yes Yes Yes

Value-added Service Providers Yes No Yes Yes No

Programming Framework

Customizable Linux-based Amazon Machine Image (AMI)

Python .NET framework Solaris OS, Java, C, C++, FORTRAN

APIs supporting different programming models in C# and other .Net supported languages

Source: “Buyya, Yeo, Venugopal, Broberg, Brandic. Cloud Computing and Emerging IT Platforms: Vision, Hype and Reality for Delivering Computing as 5th Utility, Elsevier Science 2009.”

Apps.

Heterogeneity of Grids and Clouds

SLA Template

X

SLA Template

Y

Consumer Provider

How to map between different SLA templates ? DB

DB DB

… Cloud or Grid

Apps. WS

SLA Negotiation Strategy A

Negotiation Strategy B

How to map between different negotiation strategies ?

Autonomic Process

Knowledge

Sensor Actuator

monitoring

analysis planning

execution

QoS Metric Protocol

QoS Metric Protocol

Evaluation

Service Compositions

Mapping Strategies

Negotiation using VieSLAF framework

Autonomic Manager

QoS Example

Vienna Science and Technology Fund (WWTF) Project: FoSII – Foundations of Self-governing ICT Infrastructures

15.06.2009 25

Lifecycle of a self-manageable Cloud Service

Meta Negotiation

Negotiation

Post processing Execution

Self-Management

15.06.2009 26

Autonomic Process for MN and SM

Knowledge

Sensor

Actuator

monitoring

analysis

planning

execution

Definition and publication of meta-negotiation document

Execution of meta negotiation

Evaluation of existing bootstrapping strategies

Application of existing and definition of new

bootstrapping strategies

Execution of bootstrapping

Detection of SLA inconsistencies

Evaluation of existing SLA mappings

Application of existing and definition of new SLA mappings

Application of SLA mappings to fulfill successful SLA contracting

Negotiation Bootstrapping

Service Mediation

Prerequisite

Case Study: MFSS

a) Mapping: „price“ to „usage price“

b) Mapping: $ to €

a) Negotiation terms: begin time, end time, price,

b) Security: GSI c) Negotiation Protocol:

Alternate Offers d) Document Language:

WSLA e) Agreement: third

party arbitrator

activity level

A1

A2 A3

A4

A5

complex activity level

workflow level

Workflow

Scenario for Meta Negotiations

•  Pre-requisites –  Security issues –  Negotiation terms

•  Negotiation –  Documents –  Protocols

•  Agreement –  Arbitrator

publishing

meta-negotiation matching

negotiation

lookup

Service providers

Service consumer

Sample Meta Negotiation Protocol

<meta-negotiation xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance … > <entity> <ID name="1234"/> … </entity> <pre-requisite> <role name="Consumer"/> <security> <authentication name="GSI"/><authorization name="xy"/> </security> <negotiation-terms> <negotiation-term name="beginTime"/> <negotiation-term name="endTime"/> <negotiation-term name="price"/> </negotiation-terms> </pre-requisite> <negotiation> <document name="WSLA" value="uri" version="1.0”/> <document name="WS-Agreements" value="uri" version="1.0”/> <protocol name="alternateOffers" schema="uri" version="1.0” location="uri"/> </negotiation> <agreement> <confirmation name="confirmator" value="arbitrator”/> </agreement> </meta-negotiation>

Template A: - Service 1 - Service 2 - Service 3 - ... - Service n

Template A: - Service 1 - Service 2 - Service 3 - ... - Service n

Management of SLA Mappings

Template A: - Service 1 - Service 2 - Service 3 - ... - Service n

Service Consumer Service Provider

1. Assign to service category

2. Assign mappings

3. Search services

4. Assign mappings

5. Template adaptation

Service Registry

Example SLA Mapping & Mapping Scenario

<xsl:template match="/ns:SLA/ ns:ServiceDefinition/ ns:WSDLSOAPOperation/ ns:Metric[@name='calculatePrice']/ ns:Function"> <ns:Function xsi:type="Times resultType="float"> <ns:Operand> <xsl:copy> <xsl:copy-of select="@*|node()"/>

</xsl:copy> </ns:Operand> <ns:Operand> <ns:FloatScalar> 0.68096718 </ns:FloatScalar> </ns:Operand> </ns:Function> </xsl:template>

Local WSLA template

Rule From local to remote

Rule From local to remote

Rule from local to remote

XSLT transformation

Remote WSLA template

XSLT transformation

Rule From local to remote

Rule From local to remote

Rule from remote to local

+

+

XSLT transformation

Rule From local to remote

Rule From local to remote

Rule from remote to local

XSLT transformation

Local WSLA template

Rule From local to remote

Rule From local to remote

Rule from local to remote

+

+

Service consumer

Service provider

VieSLAF Framework

Registry

DB

DB DB

MN and SLA Mapping Middelware MN and SLA Mapping

Middelware

Meta-Negotiation Meta-

Negotiation Local SLA Template

Gridbus Broker

Party 2

1. Publishing

Service Consumer Service Provider

2. Publishing, Querying

5. Negotiation

API

WSDL

6. Service Invocation

Local SLA Template

Party 1

Amadeus Workflow

Alternate Offers

Negotiation Strategy

Aneka

Alternate Offers

Negotiation Strategy

4. Session Establishment

3. Matching

Handshaking

Measurement Service

Adaptation Service

Lerning functions

MN Middleware & Dependency Injection

Implementation of MN and SLA Mapping Middleware

•  Publishing of MN docs

•  Integration into existing clients

•  Dependency injection •  Successfully tested

with Gridbus Broker and Amadeus workflows

•  Implemented as a bunch of WCF services

•  Based on role model

MN Middleware SLA Mapping Middleware

WCF services

Service Description

RegistryAdministator Provides methods for the manipulation of the database where administrator rights are required e.g., creation of template categories.

Accounting Used for the creation of consumer’s and provider’s accounts.

Provider Used for the management of template categories and to maintain data of already published services.

WSLAMapping Used for the management of SLA mappings by service consumer and service provider. SLA mappings can be specified for SLAAttributes and SLAELements.

WSLAQuerying Service consumers may search for appropriate services through this service and define appropriate SLA-mappings.

Adaptability Used for specification and maintaining of adaptability functions which are used by the parties, service provider and service consumer, to define their requests about adding, updating or even deleting of SLAParameters in some template category.

Monitoring Service

•  Starts after publishing into category •  SLAs are parsed and it is identified which SLA have to

be monitored and how •  Periodically measured parameters vs. measurement on

request –  Parameter pool

•  Methods: –  Knock in –  Retrieve measured parameters from parameter pool

•  Composite Metrics –  Availability, service request time

•  Resource Metrics –  Service uptime, number of service invocations

Adaptation Service

•  Templates should reflect the majority of SLA templates used by consumers and providers

•  Remote Templates are adapted based on submitted SLA Mappings

•  Registry administrator may define learning functions –  E.g., How often a SLA parameter has to occur

•  Once an adaptation is done, all SLA templates are assigned to a new revision

•  Monitoring is of SLA parameters is restarted

Meta Negotiation and SLA Mapping Middleware

Case Study: Amadeus Workflows & ANEKA

User Interface

Meta Negotiation and SLA Mapping Middleware

SLA Mapping

Local SLA Template

MND

Meta Negotiation and SLA Mapping Middleware

SLA Mapping

Local SLA Template

MND

Participant specific Negotiation and Planning

Component

Workflow Planner

Negotiator

XML config file

XML config file

Event Notification Component

Workflow Planning and Execution Tool

SLA Mapping SLA

Mapping

MND MND

WF

ANEKA

Workflow Modeling

Literature

•  R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic. Cloud Computing and Emerging IT Platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility. Future Generation Computer Systems, Volume 25, Issue 6, June 2009, Pages 599-616, 2009. http://dx.doi.org/10.1016/j.future.2008.12.001

•  Ivona Brandic, Dejan Music, Schahram Dustdar. Service Mediation and Negotiation Bootstrapping as First Achievements Towards Self-adaptable Grid and Cloud Services. Grids meet Autonomic Computing Workshop 2009 - GMAC09. In conjunction with the 6th International Conference on Autonomic Computing and Communications Barcelona, Spain, June 15-19, 2009.

•  Attila Kertész, Gábor Kecskeméti, Ivona Brandic. An SLA-based Resource Virtualization Approach for On-demand Service Provision. VTDC 2009 - The 3rd International Workshop on Virtualization Technologies in Distributed Computing. In conjunction with the 6th International Conference on Autonomic Computing and Communications Barcelona, Spain, June 15-19, 2009.

40

Exam

•  Mo, Tu, 29/30 June 2009 •  Oral Exam •  Assignment via DSG Teaching Tool

41

Questions & Contact information

Ivona Brandic Distributed Systems Group

Information Systems Institute Vienna University of Technology

Austria email: [email protected]

http://www.infosys.tuwien.ac.at/staff/ivona/