190 likes | 298 Views
A-WARE A n easy W ay to A ccess GRID RE sources. Nicola Venuti nicola.venuti@nice-italy.com. Agenda. Overview: Goals & Challenges Architecture Standards Technologies Workflow Life Cycle. Project Goals. Simplify users’ life (focus on problems) way of perceiving the GRID
E N D
A-WAREAn easy Way to Access GRID REsources Nicola Venuti nicola.venuti@nice-italy.com
Agenda • Overview: Goals & Challenges • Architecture • Standards • Technologies • Workflow Life Cycle EGEE User Forum, Manchester, 10 May ‘07
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
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 EGEE User Forum, Manchester, 10 May ‘07
Architecture • Portal / Clients • User’s Services / Workflows • ASB / WOS • Fabric Layer
Workflow designer application (WDA) Workflow repository Service (WRS) Workflow orchestrator service (WOS) Workflow Valitador / Modeler Service (WVMS) A-WARE Service Bus (ASB) UAS interface UAS interface Architecture (2) JSR 168 Gridsphere EnginFrame Portal Other clients (open source) BPMN (BPEL) A-WARE technology components JBI (BPEL) WSRF OGSA Base Profile Non OGSA middlewares Unicore/GS GTK4 gLite Other OGSA interface Other LSF Os/Storage
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
Standards • WS / WSRF • by OASIS • standard WS protocols SOAP, WSDLused 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
Technologies • Portal • first solution on EnginFrame Grid Portal • XML/XSL • new Javaservices • 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
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
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
Workflow Design: layout BPMN notation Dataflow Elements Tasks Cycle Elements EGEE User Forum, Manchester, 10 May ‘07
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
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
Workflow Design: Service Binding The abstract tasks are bounded to actual services provided by the ASB Bounded tasks Workflow task list from BPMN ASB service discovery EGEE User Forum, Manchester, 10 May ‘07
BPMN DataFlow Elements Tasks “from” and “to” involved in data mapping selected XPATHs XML schema representation of involved messages Workflow Design: Data Mapping Dataflow elements should be assigned mapping Input and Output of the actual services EGEE User Forum, Manchester, 10 May ‘07
WSDLs Workflow Deployment • Executable BPEL + WSDLs + deploy.xml produced by the Design phase are deployed into the ASB • Dynamic hot deploy BPEL deploy ASB ASB deploy xml EGEE User Forum, Manchester, 10 May ‘07
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
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?) EGEE User Forum, Manchester, 10 May ‘07