Title: UK Globus Week
1Legacy code deployment and execution in GT3/GT4
Grids experiences with migrating GEMLCA from GT3
to GT4
Grid Execution Management for Legacy Code
Architecture
Thierry Delaitre Cavendish School of Computer
Science University of Westminster T.Delaitre_at_wmin.
ac.uk
2UK E-science OGSA Testbed
- test and evaluate OGSA/GT3 core
- evaluate performance, ease of deployment and use,
and interoperability
University of Portsmouth University of
Westminster University of Manchester University
of Reading Daresbury, CCLRC University of
Southampton SZTAKI (Hungary)
3The development team
- Univ. of Westminster MTA SZTAKI
- Prof. Peter Kacsuk 1. Prof. Peter Kacsuk
- Prof. Stephen Winter 2. Zoltan Farkas
- Dr. Thierry Delaitre 3. Csaba Nemeth
- Dr. Gabor Terstyanszky 4. Tamas Boczko
- Ariel Goyeneche 5. Jozsef Patvarczki
- Tamas Kiss 6. Gabor Hermann
- Noam Weingarten 7. Gergely Sipos
- Gabor Kecskemeti
- Yonathan Zetuny
- Szabolcs Illes
- Peter Bulyaki
4Presentation Outline
- GEMLCA objectives
- Concept of GEMLCA
- Experiences with migrating GEMLCA
- GEMLCA client, the P-GRADE portal DEMO
- Conclusion future work
5Legacy Applications
- Code from the past, maintained because it works
- Often supports business critical functions
- Not Grid enabled
What to do with legacy codes when utilising the
Grid?
- Bin them and implement Grid enabled applications
- Port them onto the Grid with minimal user effort
6GEMLCA Grid Execution Management for Legacy
Code Architecture
Objectives
- To deploy legacy code applications as Grid
services without reengineering the original code
and minimal user effort - To create complex Grid workflows where components
are legacy code applications - To make these functions available from a Grid
Portal
GEMLCA
GEMLCA P-GRADE Portal Integration
7Legacy applications in service-oriented
GridsGemlca PGrade portal approach thin client
P-GRADE Portal Server
8Presentation Outline
- GEMLCA objectives
- Concept of GEMLCA
- Experiences with migrating GEMLCA
- GEMLCA client, the P-GRADE portal DEMO
- Conclusion future work
9GEMLCA Concept
10GEMLCA lifecycle Job submission
Client sign-on
List of LCGSs
LCGS Interfaces
Job Process
Job Process
..
11GEMLCA lifecycle Get results
Client sign-on
List of LCGSs
LCGS Interfaces
LCGS status Result
Kill LCGS
Job Process
Job Process
..
12GEMLCA lifecycle Deployments
Client sign-on
List of LCGSs
LCGS Interfaces
LCGS status Result
Kill LCGS
Client sign-on
Legacy Code Deployment
Job Process
Job Process
..
13Presentation Outline
- GEMLCA objectives
- Concept of GEMLCA
- Experiences with migrating GEMLCA
- GEMLCA client, the P-GRADE portal DEMO
- Conclusion future work
14Migrating GEMLCA from GT3 to GT4What needs to
be done ?
- GEMLCA package for GT3 released on November 2004
- Convert existing List, Process and Admin WS from
OGSI to WSRF
15Experiences with migrating GEMLCA from GT3 to GT4
Advantages of GT4 over GT3 for GEMLCA
- Better MMJFS performance, no UHE
- Better performance when sending/receiving XML
messages - GT4 documentation is better than in GT3 and
continues to improve
How easy was it to convert from OGSI to WSRF ?
- Straightforward to convert OGSI to WSRF class
style
What were the difficulties from GT3 to GT4 ?
- WSDL and complex types (3 slides)
- Security (1 slide)
- Gram API (1 slide)
16Experiences with migrating GEMLCA from GT3 to
GT4WSDL Interfaces
- Native Axis java2wsdl not suitable for converting
Java interfaces to GT4 WSDL unless decorating is
modified. WSDL for List and Process WS done
manually. WSDL for Admin WS generated
automatically from Java Interface once we added
an XSLT processing step after java2WSDL. - For the List and Process WS, we had to guess the
expected WSDL using a trial and error process.
Original WSDL was inspired from Borjas tutorial
(at the time of 3.9.3) and from the GWSDL. - We spent lots of time figuring out how to use
complex types such as passing multiple parameters
or returning String . Solution is to use an
Object (i.e. Beans). Objects also need to be used
in 3.9.5 when returning String (was ok with
3.9.4)
17Experiences with migrating GEMLCA from GT3 to
GT4GLCListgetGLCList WS and complex typesWSDL
generated manually for List WS
- ltxsdelement namegetGLCListResponsegt
- ltxsdcomplexTypegt
- ltxsdsequencegt
- ltxsdelement namelegacyCodes
typexsdstring minOccurs0
maxOccursunbounded/gt - lt/xsdsequencegt
- lt/xsdcomplexTypegt
- lt/xsdelementgt
import uk.ac.wmin.cpc.gemlca.frontend.stubs.GLCLis
t.GetGLCListRequest import uk.ac.wmin.cpc.gemlca.
frontend.stubs.GLCList.GetGLCListResponse public
class GLCList implements GLCListNamespaces
public GetGLCListResponse getGLCList(GetGLCList
Request parameters)
18Experiences with migrating GEMLCA from GT3 to
GT4GLCAdmingetPopulatedDtd WS and complex
typesWSDL generated automatically for Admin WS
- public interface GLCAdmin
- public String getPopulatedDtd(String LCName,
boolean pUserLegacyCodes) - public boolean writeConfig(String
EnvironmentDescription, boolean
pUserLegacyCodes)
import uk.ac.wmin.cpc.gemlca.frontend.stubs.GLCAdm
in.GetPopulatedDtd import uk.ac.wmin.cpc.gemlca.f
rontend.stubs.GLCAdmin.GetPopulatedDtdResponse p
ublic class GLCAdmin implements
GLCAdminNamespaces public GetPopulatedDtdRespon
se getPopulatedDtd(GetPopulatedDtd Params)
String LCName Params.getIn0() boolean
pUserLegacyCode Params.isIn1()
ltelement namegetPopulatedDtdgt ltcomplexTypegt
ltsequencegt ltelement namein0
typexsdstring/gt ltelement namein1
typexsdboolean/gt lt/sequencegt
lt/complexTypegt lt/elementgt
19Experiences with migrating GEMLCA from GT3 to
GT4Security
- Cannot do proxy delegation when client
authorisation is set to none. We experienced the
GT3.2.0 to GT3.2.1 security enhancement ! - host/self auth not suitable
- Using identity of service solution
- Proxy delegation working first-time only after
container start-up - There is a single instance of the stateless Web
Service and hence we cannot use - SecurityManager.getManager().setServiceOwnerFromC
ontext() -
Iterator itorg.globus.gsi.jaas.JassSubject.getCur
rentSubject().getPrivateCredential().iterator() I
f(it.hasNext()) proxy (GSSCredential)
it.next() job new GramJob Job.setCredential(p
roxy)
20Experiences with migrating GEMLCA from GT3 to
GT4GRAM API
- Tried to use low-level Gram API but we
experienced some bugs in the documentation which
we fedback. Job status refresh was not working at
the beginning. - Ended up using GramJob API as in GT3.
- Still cannot use notification call-backs when
GramJob API is embedded into a WS. (Currently
using polling) -
21What wed like to see done in GT4
- Proper detailed documentation (has improved but
needs to continue) - GRAM call-back notification in a WS
- Get Condor job manager working with Globus
- Condor was not working properly for us in GT3
possibly due to NFS race conditions (same
reported by James Frey for PBS/LSF). Is it the
same in GT4 ? What is the recommended deployment
scenario ? Can condor master and GT node
installed on different machines ? Is the condors
SEG code reliable in GT4 ? - PBS
- PBS not working even though it should work
(PBS.pm uses SEG) - Decouple PBS master node and Globus Grid node on
different machines (pbs tracejob ?). - Compilation issues on SLES9 AMD 64bits Opteron
- Tried using CVS but fait_accomplit fails
- GT4 client not working on 64 bits OS using 32 or
64 bits JVM - Exception in thread "main" java.lang.NoSuchMethodE
rror org.apache.axis.description.TypeDesc.ltinitgt(
Ljava/lang/ClassZ)V - at org.apache.axis.message.addressing.EndpointRefe
renceType.ltclinitgt(EndpointReferenceType.java333)
22Presentation Outline
- GEMLCA objectives
- Concept of GEMLCA
- Server side
- GEMLCA client the P-GRADE portal Live DEMO
- Conclusion future work
23P-GRADE Grid PortalPG-Portal functionalities
24Conclusions
- GEMLCA enables the deployment of legacy code
applications as Grid services with minimal user
effort. - GEMLCA is integrated with the P-GRADE portal to
offer user-friendly development and execution
environment. - The integrated GEMLCA P-GRADE solution was
successfully demonstrated using the traffic
simulator and other applications - Gemlca package for GT3 released last November
- Gemlca package for GT4 to be released in May 2005
25Thank you for your attention
Email gemlca-discuss_at_cpc.wmin.ac.uk Websites ww
w.cpc.wmin.ac.uk/gemlca www.lpds.sztaki.hu/pgporta
l