Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

18
Performance Measurement Points Sockets, plain text and grid services Paul Mealor

Transcript of Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Page 1: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Performance Measurement Points

Sockets, plain text and grid services

Paul Mealor

Page 2: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Menu

• First stage PMP

• Grid Services

• Grid Services PMP

Page 3: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

First stage PMP

• First step

• Simple protocols and implementation

• Cron used as the scheduler

• One single schedule that we overwrite

• Required security: add in SSL/Shibboleth/whatever

Page 4: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

First stage PMP

PMP control interface

crontabCron

Wrapper

Tool

DB

Database frontend (MySQL? Web

service?)

Server-side component

Page 5: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

First stage PMP - schedules

0 */2 * * * iperf –c some.server.edu• Crontab style schedule times• Tool names to use

– Only authorised tools with wrapper scripts may be used

• Parameters to pass– The wrapper script will do any required

checking

• Arbitrary commands cannot be executed

Page 6: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Questions

• Get scheduler to specifically control server-side tools– YTL has a framework for asking for a server

tool to be started– But maybe the scheduler already thinks about

server side stuff

• No particularly good way to do inter-PMP schedule negotiations

Page 7: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

A brief introduction to Grid Services

• OGSA (Open Grid Services Architecture)• OGSI (Open Grid Services Infrastructure)• An extension of web services

– Mandated functions plus extension to WSDL

• Provides– Service data– Notification– Registry interface– Instance creation via factories & lifetime management

• Implementation: Globus Toolkit 3– Framework for creating new services, plus some example and

implementations of job managers &c.

Page 8: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

A brief introduction to Grid Services

• Imagine one of the OGSA/OGSI piccies here

Page 9: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Port types, operations & service data

• GridService– findServiceData, setServiceData,

requestTerminationBefore, requestTerminationAfter, destroy

– interface, serviceDataName, factoryLocator, gridServiceHandle, gridServiceReference, findServiceDataExtensibility, setServiceDataExtensibility, terminationTime,

• NotificationSource– subscribe– notifiableServiceDataName

• NotificationSink– deliverNotification

• NotificationSubscription– Service data: subscriptionException,

sinkLocator

• Factory– createService– createServiceExtensibility

• ServiceGroup– Service data:

membershipContentRule, entry• ServiceGroupEntry

– Service data: memberServiceLocator, content

• ServiceGroupRegistration– add, remove

• HandleResolver– findByHandle

Page 10: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

A brief introduction to Grid Services

• Globus Toolkit 3– Java– Communications via XML (JAX-RPC – SOAP)– Servlets can run in, say, Tomcat or in custom

test container– GSI security directly supported

• Plugging in Shibboleth may be tricky

Page 11: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

OGSA PMP

• Using Globus Toolkit 3– Which is based on pre-April 5 version of OGSI

• Permanent, persistent PMP interface– No sense of a non-persistent component to a PMP

(maybe)

• Can still use Cron as the scheduler– But backends could talk to anything

• Clients talk about metrics and measurements– PMP thinks about tools

Page 12: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

OGSA PMP with Cron backend

Grid serviceport type

PMPport type Im

plem

enta

tion

ScheduleWriter

config

ScheduleWriter

configcrontab

Cron

WrapperTool

Service data

Manipulateschedule

Subscription

WSDL

Page 13: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

SchedulerCustom

registry

OGSA PMP - Discovery

Grid serviceport type

PMPport type Im

plem

enta

tion

Registryport type

Customport type

Register

Service data query results

SchedulerProject-specific query results

Write schedule

•Standard registry interface can be re-used in completely different registries, but exactly the same PMP

Page 14: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

An OGSA client

• Stubs and beans can be created from WSDL

• Search for PMPs in a registry– The registry may not be entirely public

• Call PMP functions via stubs– SOAP-RPC behind the scenes

• The OGSA client would be a scheduler

Page 15: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Problems and Questions

• Tools which require a server and a client– Original plan was to force OGSA client to match up

the server and client– Maybe much better for PMPs to negotiate

• Clever PMPs– Perform scheduling on the PMPs– All PMPs negotiate all the time– Loads of problems– Can we design the protocols to deal with it if/when it

comes?

Page 16: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Problems and Questions

• Deleting or changing schedules– Should this be allowed?– Need good security with it

• Can we make use of the factory system?– If an OGSA client wants to add part of a

schedule, maybe that should create a new instance of a PMP schedule

– Might simplify schedule updating– Do we want loads of instances sitting around?

Page 17: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

Notes from yesterday

• What I’ve described is probably more like the PMC interface

• But there’s no particular reason the PMP itself couldn’t be a Grid Service– Registration process needn’t be to a globally-

accessible registry– But maybe the overheads are unacceptable

Page 18: Performance Measurement Points Sockets, plain text and grid services Paul Mealor.

End