41
Basics of Grid Middleware – 2 (with an introduction to OMII- Europe) Mike Mineter NeSC-TOE

Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

Embed Size (px)

Citation preview

Page 1: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

Basics of Grid Middleware – 2(with an introduction to OMII-Europe)

Mike Mineter

NeSC-TOE

Page 2: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

2EU project: RIO31844-OMII-EUROPE

Contents

• Convergence of Web Services and Grids• Current state of production grids• (Some of the) emerging standards• Response of the OMII-Europe project

Acknowledgement: many of these slides are reused from presentations created by the NeSC-TOE team for

NGS courses

Page 3: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

3EU project: RIO31844-OMII-EUROPE

Goal of talk

• To explore the– Multiple grids and diverse middleware in production

use– Emerging standards

• …. and the OMII-Europe response– building bridges between grids

Page 4: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

4EU project: RIO31844-OMII-EUROPE

Service orientation – software components that are…

• Accessible across a network

• Loosely coupled, defined by the messages they receive / send

• Service description that can be used to create client software

• Based on standards (for which tools do / could exist)

• Developed in anticipation of new uses

Service

Service

Service

Service

Service

Service

Client

Page 5: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

5EU project: RIO31844-OMII-EUROPE

Using service B from service A

Web services container

service A: consumes B

TCP/IP

Messages

O/S

Web services container

service B

O/S

A Bmessages

Page 6: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

6EU project: RIO31844-OMII-EUROPE

Using service B from service A

Web services container

service A: consumes B

TCP/IP

Messages

O/S

Web services container

service B

O/S

A Bmessages

These messages define service B

Page 7: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

7EU project: RIO31844-OMII-EUROPE

Using service B from service A

Web services container

service A: consumes B

TCP/IP

Messages

O/S

Web services container

service B

O/S

A Bmessages

http, https

• Commonly used for WS - original purpose: carry HTML

• HTTP request methods

•GET : specify a URL

•POST: key-value pairs

• Defaults to port 80

• HTTPS: encrypts / decrypts

Page 8: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

8EU project: RIO31844-OMII-EUROPE

Messages in XML

Using service B from service A

Web services container

service A: consumes B

TCP/IPO/S

Web services container

service B

O/S

A Bmessages

http, https

XML

eXtendable Markup Language•Human readable (sort of) – so not

tied to one architecture• Extendable: can define new data types, belong to “namespaces”,

expressed by schemas

Page 9: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

9EU project: RIO31844-OMII-EUROPE

Messages in XML

WSDL

Web services container

service A: consumes B

TCP/IPO/S

Web services container

service B

O/S

A Bmessages

http, https

Service B is described by WSDL, “Web Service Description

Language”. Includes:•Where: “ end point” URL where B

receives messages•What: Message definitions

•How: “Bindings” to use service

Page 10: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

10EU project: RIO31844-OMII-EUROPE

Messages in XML

WSDL

Web services container

service A: consumes B

TCP/IPO/S

Web services container

service B

O/S

A Bmessages

http, https

Service B is described by WSDL, “Web Service Description

Language”. Includes:•Where: “ end point” URL where B

receives messages•What: Message definitions

•How: “Bindings” to use serviceAPI’s for B

•API’s are derived from the WSDL by tools •Developer adds code for specific client•NO API LIBRARY SUPPLIED

Page 11: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

11EU project: RIO31844-OMII-EUROPE

SOAP

SOAP

Web services container

service A: consumes B

TCP/IPO/S

Web services container

service B

O/S

A Bmessages

http, https

API’s for B

XML-based messaging protocol Header: extendable for security, accounting,.. Body: message content

Page 12: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

14

Enabling Grids for E-sciencE

INFSO-RI-508833

HTTP message

(JAVA) Web Services

A

B.Op

(a,b)

invoke

creturn

B

Insert the web into the invoke and into the return

Consumes B(client)

Stack

Sk

eleton

Provides B(server)

Ret(c)Soap envelope

AB-stub Stack B

Bs.Op

(a,b)

invoke

……

B.Op

(a,b)

invoke

…c

return

c

return …

Web

Soap envelope

HTTP message

Op(a,b)

WSDL for B

Soap envelope

Java program with 2 classes

Page 13: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

15

Real Web Service InvocationReal Web Service Invocation

Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s02.html

Discover

Describe

Invoke

Page 14: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

16

Enabling Grids for E-sciencE

INFSO-RI-508833

WS-I core of Web Services

• WS-I (Interoperability) delivers practical guidance, best practices and resources for developing interoperable Web services solutions.

• http://www.ws-i.org/

Open standards:• SOAP: protocol for message passing• Web Service Description Language: to describe services• UDDI: Universal Description, Discovery and Integration• WS-Security: incorporates security

Page 15: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

17EU project: RIO31844-OMII-EUROPE

Web Services Grid Technology

Grid Services• Commerce-driven

• Standards

• Tools

• Research driven

• Data-intensive

• Compute intensive

• Collaboration – sharing of resources

October 2001 View

Open Grid Services Architecture

Page 16: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

18EU project: RIO31844-OMII-EUROPE

2007 View

WSRF – Web Services Resource Framework

WS-Notification

Web Services– Basis for defining standards for different services– For services on grids:

• Need to manage state – interact with resources

• Need to be notified of change of state

Page 17: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

© 2004 IBM Corporation© 2004 University of Chicago 19

context

Inte

rface

WebService

messageid

message

Using a Web service to access a WS-Resource

id

address

resource

resource

Endpoint ReferenceEndpoint Reference

The WS-Resource framework model

Run-time environment

Page 18: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

© 2004 IBM Corporation© 2004 University of Chicago 20

IBM

WS-Resource Properties• Resource state and metadata

“Projected” as an XML document• Query and Set operations

WS-Resource LifeTime• Explicit destruction or

“Soft state” time-to-live • Provides for cleanup

of resource instancesresource

<ProcessorProperties><ProcID>5A34C1DE03</ProcID><ProcArchitecture>Power6.2</ProcArchitecture><ProcSpeedMIPS>400</ProcSpeed><ProcCacheMB>256<ProcCache><ProcRunning>1</ProcRunning>

</ProcessorProperties>

The WS-Resource framework model

Page 19: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

21

Enabling Grids for E-sciencE

INFSO-RI-508833

Acknowledgements: some slides are from

http://www.nesc.ac.uk/action/esi/contribution.cfm?Title=385

Page 20: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

22EU project: RIO31844-OMII-EUROPE

• Among middleware that uses WSRF/ WS-N:

– Globus Toolkit 4

– UNICORE

Page 21: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

23

CustomWeb

ServicesWS-Addressing, WSRF,

WS-Notification

CustomWSRF Web

Services

GT4WSRF Web

Services

WSDL, SOAP, WS-Security

User Applications

Reg

istr

yA

dmin

istr

atio

n

GT

4 C

onta

iner

Globus Toolkit 4 Web Services Core

Thanks to J. Schopf, ANL

Page 22: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

24EU project: RIO31844-OMII-EUROPE

• Supporting the Perspective:“Driving HPC in the pan-European ecosystem“– Leadership capability computing (tier-0) “Supercomputers”– Entry-level capability computing (tier-1) “Clusters”– Farming-based capacity computing (tier-2) “PC pools, farms”

• Partnership for Advanced Computing in Europe (PACE)– Towards multi-core petascale

Supercomputing Grids– Near Future: Multi-core-based

supercomputers (‘e.g. 80 cpus on a chip’)• Up to 1 Mil. CPUs at 1 site for each supercomputer

• Grid: 1 Mil * n CPUs

„Grid driving HPC“

Thanks to M. Riedel, FZJ

Page 23: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

25EU project: RIO31844-OMII-EUROPE

• WSRF-compliant and OGSA-based UNICORE 6– Standards: WSRF 1.2 final, WS-I, JSDL 1.0, XACML 1.0, OGSA ByteIO

– Modern software stack: Java 5, XFire SOAP Stack, XMLBeans, Jetty, …

• Joint development effort under leadership of FZJ

• Beta version released in April 2007• 6.0 final release, July/August 2007, rc already available

– UNICORE Atomic Services (UAS), workflows, compliant with UNICORE 5 TSIs, Intel GPE 1.4, UCC

• 6.1 release, Q4-2007– Extended workflow support, portals, Intel GPE 1.5– support for VOMS and OGSA-BES (out of OMII-Europe)

Standards-based UNICORE 6 Development

Thanks to M. Riedel, FZJ

Page 24: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

26EU project: RIO31844-OMII-EUROPE

Contents

• Convergence of Web Services and Grids• Current state of production grids• (Some of the) emerging standards• Response of the OMII-Europe project

Page 25: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

27EU project: RIO31844-OMII-EUROPE

Grid Islands

gLite Globus Toolkit 4

UNICORE CROWN

Isolate:

Data

Computers

Expertise

Page 26: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

34EU project: RIO31844-OMII-EUROPE

OMII-Europe vision: to enable…

gLite Globus Toolkit 4

UNICORE CROWN

“The global grid”

VO to span gridsApplication portability

Page 27: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

35EU project: RIO31844-OMII-EUROPE

Bridges – for interoperability – initially….

gLite Globus Toolkit 4

UNICORE CROWN

Job execution

Data access and integration

Accounting

Page 28: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

36EU project: RIO31844-OMII-EUROPE

Common security base

Bridges – How are they built?

Components based on standards

Page 29: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

37EU project: RIO31844-OMII-EUROPE

Bridges – How are they built?

Components based on standards:

OGSA Basic Execution Service

OGSA Data Access & Integration Services

OGSA Resource Usage Service

OGSA: Open Grid Services Architecture

Page 30: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

38EU project: RIO31844-OMII-EUROPE

OMII-Europe components

• Basic Execution Service– Execution of job described in JSDL:

“Job Submission Description Language”– E.g. OGSA-BES interface being developed for EGEE

Compute Elements.

Page 31: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

39

London e-Science Centre

Hello World in JSDLHello World in JSDL

<?xml version="1.0" encoding="UTF-8"?><jsdl:JobDefinition xmlns:jsdl=“http://schemas.ggf.org/2005/11/jsdl” xmlns:jsdl-posix= “http://schemas.ggf.org/jsdl/2005/11/jsdl-posix”><jsdl:JobDescription> <jsdl:Application> <jsdl-posix:POSIXApplication> <jsdl-posix:Executable> /bin/echo <jsdl-posix:Executable> <jsdl-posix:Argument>hello</jsdl-posix:Argument> <jsdl-posix:Argument>world</jsdl-posix:Argument> </jsdl-posix:POSIXApplication> </jsdl:Application> </jsdl:JobDescription></jsdl:JobDefinition>

<?xml version="1.0" encoding="UTF-8"?><jsdl:JobDefinition xmlns:jsdl=“http://schemas.ggf.org/2005/11/jsdl” xmlns:jsdl-posix= “http://schemas.ggf.org/jsdl/2005/11/jsdl-posix”><jsdl:JobDescription> <jsdl:Application> <jsdl-posix:POSIXApplication> <jsdl-posix:Executable> /bin/echo <jsdl-posix:Executable> <jsdl-posix:Argument>hello</jsdl-posix:Argument> <jsdl-posix:Argument>world</jsdl-posix:Argument> </jsdl-posix:POSIXApplication> </jsdl:Application> </jsdl:JobDescription></jsdl:JobDefinition>

Reused with permission – slide from Stephen McGough

Page 32: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

40EU project: RIO31844-OMII-EUROPE

OMII-Europe components

• Basic Execution Service• Data Access and Integration

– Expose data to grid users– “Activities” support computation close to data– OMII-Europe porting OGSA-DAI to gLite, UNICORE,

CROWN• Resource Usage Service

– Gather accounting data from diverse resources on different grids

Page 33: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

41EU project: RIO31844-OMII-EUROPE

X.509

VOMS +…

Common security base

Bridges – How are they built?

Page 34: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

42EU project: RIO31844-OMII-EUROPE

VOMS in OMII-Europe

• VOMS: to manage VO membership as basis for Authorisation– Used by gLite: communicate VO attributes in proxy

extensions• Permits delegation

• In OMII-Europe: also will communicate in “Security Assertion Markup Language (SAML)”– standard from OASIS

Page 35: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

43EU project: RIO31844-OMII-EUROPE

Common security base

Components – How easy are they to use?

Components based on standards

Page 36: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

44EU project: RIO31844-OMII-EUROPE

You will easily be able to find out!

Evaluation infrastructuresCommon security base

Components based on standards

OMII-Europe Gateway (portal)

Components – How easy are they to use?

Page 37: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

45EU project: RIO31844-OMII-EUROPE

Evaluation Infrastructures

• Ready for you to try different middleware

• New OMII-Europe components will be installed on these

• http://support.omii-europe.org

Middleware Site

Globus Toolkit 4.0.3

Edinburgh

UNICORE 5, UNICORE 6

FZJ

gLite 3.0 (EGEE)

PSNC

gLite 3.1 (EGEE)

INFN

OMII-UK Release 3.2

SOTON

CROWN Grid BU and TU

Page 38: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

46EU project: RIO31844-OMII-EUROPE

What will OMII-Europe deliver?

• Repository of open-source, quality assured software services for EGEE, Globus, UNICORE and CROWNgrid– Objective: Some services bundled with major grid

distributions– Initial integration work with EGEE, UNICORE and

Globus• Evaluation infrastructure to “test” services• User support and training

Page 39: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

47EU project: RIO31844-OMII-EUROPE

OMII-Europe: Summary

Standards-based components

Repository

Evaluation infrastructures

Training

Support

New e-science

Grid IslandsInternational, (sub-)national,community

Dissemination

Page 40: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

48EU project: RIO31844-OMII-EUROPE

Further Information

• WS-I– http://en.wikipedia.org/wiki/WS-I_Basic_Profile– http://en.wikipedia.org/wiki/WS-Security

• Globus Toolkit:– Tutorial later today….– http://www.globus.org/wsrf/ – http://gdp.globus.org/gt4-tutorial/– http://dev.globus.org/wiki/Outreach/Materials

• UNICORE– Tutorial tomorrow….– www.unicore.eu

Page 41: Basics of Grid Middleware – 2 (with an introduction to OMII-Europe) Mike Mineter NeSC-TOE

49EU project: RIO31844-OMII-EUROPE

Thank you!

http://omii-europe.org