towards building a cloud platform for service oriented ... · service deployment tool other tools...

46
OW2 Meeting Towards Building a Cloud Platform for Service Oriented Software Development Hailong Sun (Assistant Professor) Beihang University Sept. 21, 2010

Upload: others

Post on 08-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Towards Building a Cloud Platform for Service Oriented Software Development

Hailong Sun (Assistant Professor)Beihang University

Sept. 21, 2010

Page 2: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

AgendaMotivationExisting workThe state of the artConclusion

Page 3: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Traditional software development

RequirementSpecification Design Coding Test Deployment

- the support of various development tools

- the runtime environment for both test and production running

- Usually, developers who should focus on application logic development have to take care of these issues themselves

Page 4: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service–oriented software design & developmentBasic approach

Improve the productivity of software development through reusing of loosely-coupled services over Internet

Applications

ComponentServices

Infrastructure

Key issuesService management Service compositionRuntime management

Service oriented software development

Page 5: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Many tools and middleware involvedTools

Business process modelerService composition toolVerification and test toolService deployment toolMonitoring tool

MiddlewareService containerComposite service execution engine (workflow engine)Service bus

Page 6: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

ProblemsThe extra work for developers

Install and configure various development toolsInstall and configure runtime supporting middlewareObtain and maintain underlying resources

MachinesNetworks

However they should focus on “development”.

Dev.→Service!

Page 7: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

The crux of cloud computingService

IaaS: Infrastructure as a ServicePaaS: Platform as a ServiceSaaS: Software as a Service

Can we make use of cloud computing to save developers from the extra work?

An online development environmentA hosting platformAn on-demand infrastructure service

Page 8: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service-oriented software architecture

Infrastructural resources

Software Production and Running

Applications

IaaS

PaaS

SaaS

Page 9: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

R&D goalBuilding a cloud platform for service oriented software development

Instant development without installing toolsInstant deployment without installing middlewareInstant running without knowing the underlying resources

Page 10: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Moving towards a cloud platformOnline application development

Browser-based IDEBusiness process centric developmentOnline sharing of software services

Transparent deployment and runningSimilar to Google AppEngine

Page 11: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

AgendaMotivationExisting workThe state of the artConclusion

Page 12: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Existing R&D work on service oriented development

Trustie project: SOARProLine (Service oriented software production line)

SOARWare : SOARProLine+Service resource managementDesign and developmentRuntime support

Page 13: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

SOARBase Active service collecting

Service mining

Service info. collecting

Service development

tool

Business process

modeling tool

Service choreography

tool

Service test & verification

tool

Service deployment

toolOther tools

Software

modeling and

development

Service Reg./Discovery

deploy

SaaS-oriented Software Service Provisioning and Consuming Environment

Online modeling and development Service provisioningService access

Service Info. Mgmt.

MonitoringService

evolution mgmt. Service running

and evolution

Service Bus

Service Container

Composite service engine

Service Oriented SPL

Architecture of SOARWare

Page 14: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

1. SOARBase: service managementService resources

Atomic servicesComposite services (business process)

FunctionalityCollectingService miningService recommendationRegistration & searchMgmt of service attributes (QoS)

AvailabilityResponse timeReputation

Page 15: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service Oriented SPLService Oriented SPL

Developer

Intermediate assets

Business model

Web service Execution model

Composite service

Business requirement

Software product

2. Service oriented software production line

Page 16: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service oriented SPLSPL config & management tool

Configue software production processMgmt. of software production processAssign and Mgmt. of production tasksMgmt of intermediate assets

Various software production toolsBP modeling toolService choreographyService encapsulationTest and verification…

Page 17: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

BPIDE-Business Process IDECollaboration between multi-roles

Domain expertsApp. analystsService developers

A suite of toolsModeling toolService encapsulationService choreographyVerification toolTesting tools

Page 18: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

3. Service running and evolutionService bus

Message exchangingQoS-aware service schedulingMonitoring of composite service engines and service instances

Service containerAxis2 poweredEasy service deploymentContainer management

Composite service engineDistributed processing of BPMN serviceDynamic service evolution

Page 19: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service Invocation Proxy

Runtime Sys. Mgmt.

SOARBus

BPMN Parser

Evolution Mgmt.

Task Pool

Execution Processing

Communication with SOARBus

SOAREngine

Service deployment

Processing Result Mgmt.

SOARBase

Deploy/Unde-ploy

Communication with SOARBus

ServiceInfo Monitoring

Start/Stop

Axis2 core

SOARHome

Page 20: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Applications of SOARWareFunded by 863 program

Digital ChinaGovernment tax service

Wonders InformationE-government applications

Page 21: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

AgendaMotivationExisting workThe state of the artConclusion

Page 22: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Service compositionService composition

AS APIAS API

Infrastructure resources (compute, storage, network…)Infrastructure resources (compute, storage, network…)

Software Appliance: Service Container、BPMNEngine、App ServerSoftware Appliance: Service Container、BPMNEngine、App Server

SA org. and mgmt.SA org. and mgmt.

CS APICS API RM APIRM API

Scheduling, running& monitoring

Scheduling, running& monitoring

Service deploymentService deployment

AppEngine(PaaS)

IaaS

Trustworthiness

Trustworthiness

Service Mgm

t.Service M

gmt.

Online development

ServiceXchange MyCloudMyCloudSaaS

AppStoreAppStore

Service Cloud Platform

Page 23: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

IaaS: software appliance provisioningSoftware appliance=VM/PM+ middleware

Dynamic provisioningManageability

FunctionsDynamic deployment/un-deployment of SAsLifecycle managementMonitoringLogging

Service ContainerService Container

BPMNEngineBPMNEngine

App ServerApp ServerAgent

VM/PM

SA ManagerSA Manager

Page 24: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

App Engine: hosting environment

KernelKernel

Lightweight service bus

Lightweight service bus

AS deploymentAS deployment

AS invocationAS invocation

CS deploymentCS deployment

CS invocationCS invocation

CS monitoringCS monitoring

Load balancingLoad balancing

Data managementData managementSoftware appliancemanagement

Software appliancemanagement

SA ManagerSA Manager

Page 25: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

SaaS

Atomic Service APIAtomic Service API Composite Service APIComposite Service API Runtime APIRuntime API

AppEngine(PaaS)

Online development

ServiceXchange MyCloudMyCloud AppStoreAppStore

SaaS

Online App Access

… API… API

Page 26: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

ServiceXchangeA production version of SOARBase

www.servicexchange.cnResearch work behind the scene

Service crawlingService mining: clustering and conntectabilityService recommendationTrustworthiness managementTagging

Published at ICWS, WI, JOS, ATC…

Page 27: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

MyCloudPersonalized development environment

Service subscriptionApp development tools

Instant development tools: BPIDELite- a light-weight BPMN editor and service composition tool suite.Instant deployment interface

Instant running-Virtual runtime environmentMyServiceContainerMyBPMNEngineOnline monitoring tool

Page 28: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

BPIDELiteFlex-based development toolset

BPMN-based business process modelingService choreographyInstant deployment

Page 29: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

MyServiceContainerVirtual service container

Service deployment/un-deploymentWSDL file browsingService invocation

Page 30: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

MyBPMNEngineVirtual composite service execution engine

BPMN compliantCS deployment BPMN model browsingService invocation

Page 31: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Online monitoringFlex-based composite service monitoring

Instance stateIntermediate state (similar to debugging)

Page 32: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

App StoreApplication management

App publishingApp categorizingApp search

Page 33: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

AgendaMotivationExisting workThe state of the artConclusion

Page 34: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Conclusion and future workConclusion

We aim at building a cloud platform for service oriented software developmentInstant service for developers

Instant developmentInstant deploymentInstant running

Future workRicher online development toolsBetter multi-tenant support

Load balancingSeparationDependability

Dynamic resource provisioning: incorporate existing IaaStechnologies

Page 35: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Appendix-iVIC

Page 36: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

36

iVICThe Internet-oriented Virtual Computing InfrastructureTowards resource virtualization

Design Goals (**)Support resource allocation based on VM instances

To provide another software encapsulate methodImage creation, dissemination and optimizationContainer for VM Images: Load VM images dynamically

To provide internet-scale resource allocation and adaptionWide-Area Network VM Migration

Support the network application virtualizationLinking virtual machine instances via virtual network overlays

vHaaS: virtualized Hardware as a Service

vSaaS: virtualized Software as a Service

Page 37: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

37

Assistant designing tools

Backendmodule

Integrated manage view

design

Virtual running environmentdeploy、monitor、schedule

Physical resources

install

1. vHaaS

Page 38: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

38

MotivationTo support wide-area resource sharing, like department, organization, city, or anything bigger than an officeunderlying resource may not be in the same LAN (link, subnet)

Current VM technology lacks in support of WAN MigrationNetwork Problem: VM’s IP address will be unavailable to other Internet hostStorage Problem: Hosts must share a network storage, which is inefficient for WAN hosts

AppAppProvide Service

Migration transparent to UserMigration transparent to User

Page 39: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

39

Similar problem with Mobile IPMobile IP deals with actual physical device movementVM migration only involve with runtime-state movement

Our solution: Hypervisor Controlled Mobile IPHyperMIP: Hypervisor Controlled Mobile IP

Combine Proxy-mode mobile-ip stack with hosts VM Migration:VM does not need to install Mobile IP stackVMMs manage Network restoration for VM

Page 40: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

40

Network performance ofVM1 (HyperMIP) and VM2 (non‐HyperMIP)

Network restoration time of live migration

Network traffic during live migration(w. HyperMIP)

Topology for Exp1: Network Performance

Topology for Exp2: Network restoration time of migration

Service down-time In MigrationAverage 3.1s across two LANs

~400ms overhead than migration in LAN 2.7s

Service down-time In MigrationAverage 3.1s across two LANs

~400ms overhead than migration in LAN 2.7s

Network PerformanceNo significant overhead for Web Server

workload and File Server workload (<1%)

Network PerformanceNo significant overhead for Web Server

workload and File Server workload (<1%)

Page 41: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

41

ProblemTo migrate VM, two host must share NAS

Otherwise migration downtime is unacceptableNAS is infeasible among distributed resources

NAS disk performance is limited by network bandwidthSolution: MigLoop, two level Vdisk(remote/local)

NAS

VMVM

VDiskVDisk

VMVMMigrate

VMVM

VDiskVDiskVMVM

Migrate

HTTP/FTP/NFS

VMVM

Lvl1 VDiskLvl1

VDisk

VMVMMigrate

VDiskVDisk

Lvl2 VDiskLvl2

VDiskLvl2

VDiskLvl2

VDisk

Poor disk performancePoor disk performance Long migration down-time

Long migration down-time

Better performance, less down-time

Better performance, less down-time

Page 42: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

42

Virtual Disk Performance Migration Performance

Disk Performance In MigrationMigLoop vs Loop overhead < ~6%

Disk Performance In MigrationMigLoop vs Loop overhead < ~6%

Disk PerformanceMigLoop vs Loop DBench overhead

<2.1%

Disk PerformanceMigLoop vs Loop DBench overhead

<2.1%

Page 43: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

43

iVIC ClientsvProcess ServersvSpace Servers

vSpace User Storage

vStore (Software Libs)

Presentation

Streaming

ApplicationStreaming

Subscribe, Pay per use…

Page 44: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

44

From you laptopBy using browser with iVIC Client Plugins.

By plug a USB Flash Disk into any computer.

From you mobile phoneBy install an iVIC Mobile Client.

Page 45: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

iVIC PlatformProgrammable virtual computingenvironmentLow cost, high flexibility and reliabilityVirtualized Software as a Service

Key technologiesVM Migration over WAN P2P based iVIC-VPNVM high availabilitySoftware streaming

ApplicationsSoftware labMassive data processing (MapReduce)HPC - vClusterHigh scalability web hosting

Summary of iVIC

Page 46: Towards Building a Cloud Platform for Service Oriented ... · Service deployment tool Other tools Software modeling and development S e r v i c e R g. D i s c o v e r y deploy SaaS-oriented

OW2 Meeting

Q&A