Download presentation
Presentation is loading. Please wait.
Published byAbel McCormick Modified over 9 years ago
1
Migrating Desktop The graphical framework for running grid applications Bartek Palak bartek@man.poznan.pl Poznan Supercomputing and Networking Center The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006
2
2 Outline Submission of a grid application using MD Plug-ins: idea and architecture Short overview of the OSGi standard Plug-ins „step-by-step” – guidelines for developers
3
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 3 Example of a grid application JDL JobType JobType = "MPICH"; NodeNumber NodeNumber = 4; Executable Executable = "bandVU1.csh"; StdOutput StdOutput = "bandVU1.out"; StdError StdError = "bandVU1.err"; InputSandbox InputSandbox = {"bandVU1.csh", "bandVU1.inp"}; OutputSandbox OutputSandbox = {"bandVU1.out", "bandVU1.err", "bandVU1.log", "bandVU1.dat"}; Requirements Requirements = Member("VO-gamess-GAMESS", other.GlueHostApplicationSoftwareRunTimeEnvironment)
4
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 4 Job submission using MD Authenticating to the grid
5
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 5 Job submission using MD Defining executable
6
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 6 Job submission using MD Defining job input & output
7
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 7 Job submission using MD Monitoring job execution
8
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 8 Job submission using MD Monitoring job execution
9
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 9 Job submission using MD Visualising output
10
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 10 MD plug-ins Motivations Easy extension of the framework Standardization of integration with „third party” modules Making Migrating Desktop not so „heavy” Integration points between Migrating Desktop and applications To give to integrated modules easy access to resources Migrating Desktop plug-ins Set of OSGi bundles with well-defined interface, described by XML file and loaded „on demand” from a network
11
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 11 OSGi OSGi Open Services Gateway Initiative OSGi™ Alliance More than 35 companies from various areas (Sun, IBM, Ericsson, Nokia, Philips, BMW, etc.) Technology designed to provide a general-purpose, secure, and managed Java framework supporting the deployment of extensible and downloadable modules known as bundles that usual provide services - a collection of interfaces and their implementations. Standard with several implementations (Equinox, Knoplerfish, etc) Used as engine for open source Eclipse IDE
12
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 12 OSGi OSGi bundles A bundle is a JAR file that contains: The resources necessary to provide some functionality. A manifest file describing the contents of the JAR file and providing information about the bundle. Bundles can be remotely installed, started, stopped, updated or uninstalled on the fly Bundles can share Java packages among an exporter bundle and an importer bundle in a well-defined way. OSGi services OSGi service is a java object instance, registered into an OSGi framework with a set of properties. Any java object can be registered as a service, Service implements a well-known interface Bundles can register services, search for them, or receive notifications when their registration state changes.
13
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 13 Plug-in architecture Plug-in independent module providing well-defined API that can be easy implemented and integrated with Migrating Desktop Container graphical component in which plug-in (implementing java panel) is nested. Toolkit interface defining set of auxiliary methods that can be used by plug-in for gaining access to local or remote resources, etc.
14
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 14 Plug-in „step-by-step” Do I need a plug-in? What kind of plug-in shall I choose? Job input plug-in - defining job specific parameters Job process plug-in - pre-processing job input parameters Job viewer plug-in - visualisation of job results File viewer plug-in - viewing files of different formats Tool plug-in - integration of any type of java applet or application within Migrating Desktop framework
15
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 15 Plug-in „step-by-step” Do I need a java plug-in to specify job input parameters? Ready-to-use plug-in that create input panel based on XML schema Implementing a plug-in …Plugin …Plugin – interface that contains plug-in API …PluginFactory …PluginFactory – serves an implementation of plug-in …PluginActivator …PluginActivator – bundle activator that starts a OSGi bundle and register a plug ‑ in as a service …PluginToolkit – toolkit providing set of auxiliary methods …PluginContainer – set of methods which can be used for interaction between plug-in and container …PluginConstants – auxiliary class
16
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 16 Plug-in „step-by-step” Implementing a plug-in Sequence of container calls of plug-in methods: setToolContainer - sets container; setToolkit - passes reference to the toolkit init - plug-in initialization; setProperties - sets parameters (specific to plug-in type); getPluginPanel - gets plug-in main panel for displaying; start - starts plug-in execution; … - plug-in specific methods; stop - plug-in stops its execution (sequence of calls start – stop, can be called in a loop); destroy - “cleaning” actions;
17
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 17 Plug-in „step-by-step” Creating an OSGi bundle Preparing manifest Creating java archive (JAR) file Manifest-Version: 1.0 Bundle-Description: Implementation of file viewer plug-ins Bundle-Vendor: PSNC Bundle-Version: 1.0.0 Bundle-Activator: pl.psnc.desktop.plugins.ViewerActivator Bundle-Name: pl.psnc.desktop.plugins Import-Package: org.osgi.framework; version=1.2, pl.psnc.desktop.plugins.tool, pl.psnc.desktop.plugins.fileviewer Bundle-SymbolicName: pl.psnc.desktop.plugins.fileviewer Bundle-ClassPath:., lib/asm/AsmVis_MD.jar, lib/pdb/jai_codec.jar,
18
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 18 Plug-in „step-by-step” Signing a bundle Publishing a plug-in Creating XML description Registration
19
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 19 Additional information Int.eu.grid http://www.interactive-grid.eu/ PSNC http://www.man.poznan.pl/ Product homepage http://desktop.psnc.pl/ CVS Repository http://ras.man.poznan.pl/cgi-bin/viewcvs.cgi/ The OSGi Alliance http://www.osgi.org/ The World Wide Web Consortium http://www.w3c.org/
20
The First int.eu.grid Integration Meeting, Krakow 12-14 October 2006 20 Questions Thank you for your attention! Any questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.