EGEE-II INFSO-RI-031688
Enabling Grids for E-sciencE
www.eu-egee.org
EGEE User Forum, Manchester, 10 May ‘07
Nicola Venuti [email protected]
A-WAREA-WAREAAn easy WWay to AAccess
GRID REREsources
EGEE User Forum, Manchester, 10 May ‘07 2
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Agenda
• Overview: Goals & Challenges
• Architecture
• Standards
• Technologies
• Workflow Life Cycle
EGEE User Forum, Manchester, 10 May ‘07 3
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Project Goals
• Simplify users’– life (focus on problems)– way of perceiving the GRID
• Fill an existing gap– between middleware and portals
• Portals + A-WARE + UNICORE/GS aim to be a completely integrated solution
• Contribute to the standards
EGEE User Forum, Manchester, 10 May ‘07 4
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Research Challenges
• Workflow management of Grid atomic services invocations
• Workflow orchestration framework
• a ESB based mediation layer virtualising the distributed resources
• a Web-based workflow design application
• a repository to store workflows and associated metadata
• Unicore TSS service for gLite
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Architecture
• Portal / Clients
• User’s Services / Workflows
• ASB / WOS
• Fabric Layer
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Architecture (2)
Non OGSA middlewares
Os/StorageOs/Storage
Unicore/GSUnicore/GS GTK4GTK4 gLitegLiteOtherOther LSFLSF
UAS interface
OGSAinterface
Workflow repository
Service(WRS)
A-WARE Service Bus (ASB)
Workflow Valitador / Modeler Service (WVMS)
OtherOther
Workflow designer application (WDA)
EnginFrame PortalEnginFrame PortalA
-WA
RE
tech
nolo
gy
com
pone
nts
Other clients(open source)Other clients(open source)
UAS interface
(BPEL)(BPEL)
BPMNBPMN
(BPEL)(BPEL)
WSRFWSRF
OGSA OGSA
Base Base
ProfileProfile
GridsphereGridsphere
JBIJBI
JSR 168JSR 168
Workflow orchestrator service (WOS)
EGEE User Forum, Manchester, 10 May ‘07 7
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Standards
• BPMN - Business Process Modelling Notation– by OMG– standard abstract notation to define and communicate
workflows / business processes– Used by WDA / Portal – http://www.bpmn.org
• BPEL (2.0) - Business Process Execution Language– by OASIS– is a XML-based, business process modeling language for
formal specification of executable business processes. – 2.0 is able to define both executable and abstract processes.
Abstract BPEL captures behavioral aspects not requiring implementation and concrete operational details.
– first adopted workflow language / engine– http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel– http://docs.oasis-open.org/wsbpel/2.0
EGEE User Forum, Manchester, 10 May ‘07 8
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Standards
• WS / WSRF– by OASIS– standard WS protocols SOAP, WSDL used for intercommunication between components– WSRF: framework for modeling and accessing stateful resources using Web Services– A-WARE components expose a WS/WSRF interface– http://docs.oasis-open.org/wsrf/
• JBI (Java Business Integration)– by the Java Community Process JSR 208– Java ESB (Enterprise Service Bus) specifications– ASB is based on it– http://jcp.org/en/jsr/detail?id=208
• Java Portlet– by the Java Community Process JSR 168– It will be used for the open-source portal solution– http://jcp.org/en/jsr/detail?id=168
• SVG (Scalable Vector Graphics)– by W3C– is an XML markup language for describing two-dimensional vector graphics and graphical
applications.– BPMN elements used by WDA/Portal in SVG – http://www.w3.org/Graphics/SVG/
EGEE User Forum, Manchester, 10 May ‘07 9
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Technologies
• Portal– first solution on EnginFrame Grid Portal– XML/XSL – new Java services– new AJAX – new GWT support feature– http://www.enginframe.com
• WDA (Workflow Designer Application)– Java Applet– JUNG (Java Universal Network/Graph Framework)– Supports BPMN notation and produces BPMNml
description of a workflow
EGEE User Forum, Manchester, 10 May ‘07 10
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Technologies
• WRS (Workflow Repository Service)– Data and metadata storage, retrieval and query.– Both XML and unstructured format– Supports for native and hybrid XML databases:
XML DB eXist IBM DB2 v.9
• ASB (A-WARE Service Bus)– Apache ServiceMix - JBI implementation – Grid Component for interfacing the Grid Fabric Layer,
UNICORE 5/6 atomic service– WOS as component on the ASB– other components (Registry, Mediator,…)
• WOS (Workflow Orchestration Service)– Apache ODE as BPEL engine.
Support for JBI infrastructure deployment Support for BPEL 2.0
EGEE User Forum, Manchester, 10 May ‘07 11
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Life Cycle
• Try to generalize the workflow design approach
• Workflow Design– Graphical layout, tasks, split/join nodes, dataflow elements– 1st level Grounding: Service Binding– 2nd level Grounding: Data Mapping
• Deployment
• Submission
• Monitoring
• Interactive Tasks
EGEE User Forum, Manchester, 10 May ‘07 12
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Design: layout
BPMNnotation
DataflowElements
Tasks
CycleElements
EGEE User Forum, Manchester, 10 May ‘07 13
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Design: BPMN description
<?xml version="1.0" encoding="UTF-8"?> <bpmn> <process id="airbus.bpmn"> <code></code> <nodes> <node id="n0" xy="323.0,254.6" name="PAAM" /> <node id="n1" xy="472.5,257.0" name="IcemCFD" /> ... </nodes> <dataobjects> <dataobject id="d5" xy="395.95996,173.57997" name="model_file" /> <dataobject id="d3" xy="49.350006,243.39003"
name="Aircraft3DTemplate" /> ... </dataobjects> <arcs> <arc id="a9" source="c0" target="c2" guard="condition" /> <arc id="a1" source="n1" target="n2" />
... </arcs> <dataarcs> <dataarc id="a20" source="d4" target="n0" /> <dataarc id="a15" source="d6" target="n2" />
... </dataarcs> </process> </bpmn>
EGEE User Forum, Manchester, 10 May ‘07 14
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Design: Abstract BPEL 2.0
<?xml version="1.0" encoding="UTF-8"?> <process name="processName" targetNamespace="http://www.a-ware.org/processName" xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/abstract">
<!--bpmn2bpel Version 1.0--> <partnerLinks> <!--List of services participating in this BPEL process--> </partnerLinks>
<variables> <!--List variables used in this BPEL process--> </variables>
<sequence name="sequenceComponent_0"> <receive createInstance="yes" name="ProcessInstantiation" operation="localPT" partnerLink="client" portType="localPT" variable="ProcessInstantiation_data_out" /> <invoke inputVariable="n0_task1_data_in" name="n0_task1" operation="n0_task1" outputVariable="n0_task1_data_out" partnerLink="local" portType="localPT" /> <assign name="d0_dataObject0"> <copy> <from variable="n0_task1_data_out" /><to variable="n1_task2_data_in" /> </copy> </assign> <invoke inputVariable="n1_task2_data_in" name="n1_task2" operation="n1_task2" outputVariable="n1_task2_data_out" partnerLink="local" portType="localPT" /> </sequence></process>
EGEE User Forum, Manchester, 10 May ‘07 15
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Design: Service Binding
The abstract tasks are bounded to actual services provided by the ASB
Workflowtask list from
BPMN
ASB service discovery
Boundedtasks
EGEE User Forum, Manchester, 10 May ‘07 16
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Design: Data Mapping
Dataflow elements should be assigned mapping Input and Output of the actual services
BPMNDataFlowElements
Tasks “from” and “to”
involved indata mapping
XML schema representation
of involved messages
selected XPATHs
EGEE User Forum, Manchester, 10 May ‘07 17
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow Deployment
• Executable BPEL + WSDLs + deploy.xml produced by the Design phase are deployed into the ASB
• Dynamic hot deploy
WSDLs
deployxml
BPELASBASBASBASBdeploy
EGEE User Forum, Manchester, 10 May ‘07 18
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
Workflow/Service Submission
WSDL of a service is
retrieved from ASB
Web form dynamically created from
WSDL
multiple cardinality of
Elements
EGEE User Forum, Manchester, 10 May ‘07 19
Enabling Grids for E-sciencE
EGEE-II INFSO-RI-031688
What’s Next
• Now: – finalizing the first public prototype
• Next:– support for more complex BPMN/BPEL workflows– improve both UIs and ASB mediation-tier– improve monitoring and user interaction capabilities– support for gLite middleware – extend Workflow support to other languages/engines
(Scufl, XPDL?)