21
Provisioning/Deployment CDDLM-WG (Configuration Description, Deployment and Lifecycle Management) December 4, 2003 Takashi Kojo, NEC

Provisioning/Deployment CDDLM-WG (Configuration Description, Deployment and Lifecycle Management) December 4, 2003 Takashi Kojo, NEC

Embed Size (px)

Citation preview

Provisioning/Deployment

CDDLM-WG (Configuration Description, Deployment and Lifecycle Management)

December 4, 2003

Takashi Kojo, NEC

Provisioning   Cycle

Analysis/Projection

Resource Allocation Plan

Deployment

Execution/Monitor

• Conceptual Loop for Optimizing Resource Allocation In Real World • The Cycle consists of variety of Loops

• Long Loop like Annual/Quarterly Planning• Short Loop like Urgent Allocation for Surge Peak Load• Even Shorter Loop will be Implemented by Policy Automation of the Grid

• Activities includes• Manual Intelligence• Manual Labor• System’s Automated

Provisioning Processes and Activities

Analysis/Projection

Resource Allocation Plan

Execution/Monitor

Deployment

Quarterly Plan New Customer Load Balancing Etc.

Business Processes

Activities

Application and Infrastructure

AnalysisProjection

Resource Allocation Plan

DeploymentExecution/Monitor

Analysis/Projection

Resource Allocation Plan

DeploymentExecution/Monitor

Application Provisioning

Infrastructure Provisioning

• Application: Grid Services, Legacy Applications, Web Contents, DB Schema• Infrastructure:

Middleware (Application Server, Web Server, DBMS,…)Hardware (Server, Storage, Network Switch, Firewall,…)

Server

OS

DBMS

DB Schema

Server

OS

AppServer

Applications

Server

OS

WebServer

Contents

Network Switch

VLANSet up

VLANSet up

Provisioning Target System(Ex. Web Three Tier)

Account Management, Security Management

Configuration Management

Configuration TemplateConfiguration Template

Network

Provisioning with Policy Automation

Eval/Analysis Deploy

Res Alloc/Config

Exec/Monitor

AP

DATA

Conf

Server Server・・・・・・OS OS

M/W M/W

・・・・・・

・・・・・・AP DATA

OS

M/W

Config. D

escrip

ition

Config. D

escrip

ition

Fault Management, Performance Management

Target ConfigurationTarget Configuration

NetworkServer Server・・・・・・OS OSM/W M/W

・・・・・・・・・・・・

AP DATAMonito

rMonito

r

Feedback Execution Model

Deployment Model

Periodical Load PatternFailure Recovery

ResourceAllocation

ProvisioningCycle

★Automated Resource Allocation based on Policy on Load Change or Failure★Automated Configuration, Deployment and Execution

★Automated Resource Allocation based on Policy on Load Change or Failure★Automated Configuration, Deployment and Execution

ProvisioningProvisioningGridGrid

Provisioning GridApplication

(Demand)

Infrastructure

(Supply)

Business Process

Automation Business Process

Automation

Resource

Allocation Plan

Deployment

Execution

/Monitor

Analysis/

Projection App

licat

ion

Pro

visi

onin

g

  A

pplic

atio

n G

rid

Infr

astr

uctu

re P

rovi

sion

ing

Infr

astr

uctu

re G

rid

Scope of CDDLM

Scope of PE

Program Execution Components

Job Management

WS-DM(CMM)

Resource Broker

Resource Manager

DeploymentLifecycle Management

Resource Configuration

Scheduler

ResourceReservation

DeploymentRequest

Initiate/Terminate

Register

Resource Types• Data Access• Bandwidth• Server• Storage

Scope of CDDLM

Monitor Status

Canididate set Generator ?

Data Provisioning ?DAIS?

Monitoring Service ?

Job Factory?Job Service?

DemandSupply

Program ContentsContainer

Program ContentsContainer

CDDLM(Configuration Description, Deployment and Lifecycle Management)

XML based Component Description

Class Files

Composition

Deployment

Web ServerWeb Server

App. ServerApp. Server

DB ServerDB Server

DB Schema

Application

Web Contents

Initiate/TerminateLifecycleManagement

CDDLM Wrapper

End of OGSA-WG

CDL to Deployable Format

Front End Language

XML Based CDL

Deployment Contents Format(Extended JAR)

Deployed Contents(Target Environment)

Deployment Contents

XML BasedCDL

SF-CDL

CDL3

CDL4

Program: Class Files,…Web Contents: HTML, JSP,…DB Contents: Schema,…

Keyword XML Tag

Unresolved References= XML-CDL

Resolved References

RR-CDLRR-CDLUR-CDL RR-CDL

Transform

Resolve

Use Case: Resource Broker and CDDLM

ParamDefinition

CDL

UR-CDLConfiguration Description

(Host Names: Unresolved Parameter)

Allocation Component(Host Name : IP Address Pairs)

Host MachineBroker

Gather&

resolve

RR-CDL

Deployment ContentsIP Addresses Allocated

Agreement

Resource Requestor (Client)

XML-based CDLbased on SmartFrog

Simple Mapping of SF syntax to XML

<attribute name=“Name” value=“Value”/>

<attribute name=“Name1” extends=“Reference”> <attribute name=“Name2” value=“Value2”/> <attribute .../> ....</attribute>

<attribute name=“Name”> <vector> <element value=“value”/><element>...</element> </vector></attribute>

Component

Vector

Example(manual pp.13-14)

<attribute name="SFService"/> <attribute name="portNum" value="4047"/> <attribute name="hostname" value="adhost.smartfrog.org"/> <attribute name="administrators"> <vector> <element value="patrick"/> </vector> </attribute></attribute><attribute name="UseableService" extends="SFService"> <attribute name="portNum" value="4048"/> <attribute name="users"> <vector><element value="fred"/><element value="harry"/></vector> </attribute></attribute>

Reference Model

• Alternatives:– SmartFrog Reference

• use as-is (ROOT, PARENT..)• uri like syntax

– Namespace– XPath/XPointer

SmartFrog ReferenceExample

<attribute name="sfConfig"/>

<attribute name="foo“ ... />

<attribute name="bar” .../>

<attribute name="baz">

<attribute name="ref1" reference="ROOT:sfConfig:bar:b"/>

<attribute name="ref2" reference="foo:jan"/>

<attribute name="ref3" reference="ref2"/>

</attribute>

</attribute>

(Manual p.16)

The Top Level Definition: sfConfig• Instead of stating:

– <attribute name=“sfConfig”/>

• we can define– <system/>

• as the top level definition

<system> <attribute name="d1" extends="def1"/> ....</system>

Component Model(Prim, Compound)

<attribute name=“xxx” extends=“Prim”/>

<attribute name=“xxx” extends=“Compound”/>

can be

<component name=“xxx”/>

<component name=“p” extends=“Printer”> <attribute name=“name” value=“myPrinter”/></component>

sfClass

• Component should be defined as Service instead of Java class

• Reference should be service URI instead of Java class name– Not: <attribute name=“sfClass”

value=“classname”/>– But: <component service=“uri”/>

Component Definition Example

<component name="StatusMonitor" service="uri"/><component name="LogMonitor" service="uri"/><system service="uri"> <component name="log" extends="LogMonitor"/> <component name="status"

extends="StatusMonitor"/></system>

(Manual pp.36-37)

Issues

• Reference Model– SmartFrog reference model can be used– But we should make best use of Namespace and

XPath/XPointer (to avoid reinventing wheels)

• Component Model– Components should be services instead of Java

classes– The interface (sfDeploy(), etc) should be redefined

as WSDL