Download presentation
Presentation is loading. Please wait.
Published byTeresa Mills Modified over 9 years ago
1
jGMA: A Reference Implementation of the Grid Monitoring Architecture Mat Grove Distributed Systems Group University of Portsmouth http://dsg.port.ac.uk/~mjeg/
2
2 http://dsg.port.ac.uk/projects/jGMA/ Outline Introduction and Motivation. The Grid Monitoring Architecture (GMA). The jGMA Implementation. Summary and future work. jGMA Demo.
3
3 http://dsg.port.ac.uk/projects/jGMA/ And and the the a GridRM is: A generic resource monitoring system – basically a framework for gathering data from heterogeneous data sources, A scalable means of monitoring resources distributed over the Grid, Written in Java, using commons standards: Such as SQL, JDBC, Java Servlets, GLUE. GridRM is made up of local and global layers; the latter basically is the means of transporting GridRM data between grid sites. GridRM needed a “standards-based” transport layer to bind together these its sites at the global layer. A GMA-based transport appeared to be the best candidate. Introduction
4
4 http://dsg.port.ac.uk/projects/jGMA/ GridRM (gridrm.org)
5
5 http://dsg.port.ac.uk/projects/jGMA/ And and the the a The Grid Monitoring Architecture The GGF’s GMA document is their suggested “informational” means for monitoring within the Grid: Note Informational documents are used to inform the community about a useful idea or set of ideas. The GMA document (2001) recommends: A publish, subscribe and bind architecture, An implementation that is: Secure and scalable, Has a low-latency and capable of high data rates, Imposes minimal impact on the infrastructure. GMA compliancy means implementing approximately 20 features.
6
6 http://dsg.port.ac.uk/projects/jGMA/ GMA Components Registry Producer Consumer Events Publish/Search Bind
7
7 http://dsg.port.ac.uk/projects/jGMA/ And and the the a Some GMA Implementations In the first instance we wanted to take up an off-the-shelf GMA package, several out there. Embedded (part of a larger s/w package): e.g. AutoPilot and Globus MDS: MDS can be extracted into a standalone infrastructure with a little effort. Standalone: pyGMA (Berkeley National Lab), and R-GMA (DataGrid/LCG). None of these implementations met GridRM’s requirements: Easy to integrate within GridRM (Java-based), Simple installation with minimal dependencies, No need to “fork” parent software tree, GMA compliance.
8
8 http://dsg.port.ac.uk/projects/jGMA/ jGMA Components jGMA has the following components: A registry, A producer and consumer (shared code-base), A PC Servlet (provides WAN access between producers and consumers). jGMA features: Written in Java, so takes advantage of usual features and libraries, Small API (<20 calls), Released as single “jar” of currently 28Kbytes. Limited dependencies: Tomcat and Java.
9
9 http://dsg.port.ac.uk/projects/jGMA/ jGMA Implementation
10
10 http://dsg.port.ac.uk/projects/jGMA/ jGMA Optimisations The jGMA Implementation: Non-blocking communications: Local communications use Java sockets: RMI, Serialising objects, Packed binary arrays, WAN communication use HTTP: HTTP POST, Encapsulating binary data. Performance Tests: Latency (Over Ethernet 1.5ms, Localhost 0.8ms), Throughput (~1200 messages per second), Scalability (tested stability under heavy loads).
11
11 http://dsg.port.ac.uk/projects/jGMA/ Consumer pseudo code. Consumer(){ Connector=new JgmaConnector(“holly.dsg.port.ac.uk”); Connector.register(“pinger”); } Registered(){ Connector.registryQuery(“select * from producers”); } RegistryEvent(result){ for each result as producer{ Connector.sendMessage(producer, “ping”); }
12
12 http://dsg.port.ac.uk/projects/jGMA/ Producer pseudo code. Producer(){ Connector=new JgmaCOnnector(“holly.dsg.port.ac.uk”); Connector.register(“ponger”); } MessageEvent(message){ Connector.replyMessage(message, “pong”); }
13
13 http://dsg.port.ac.uk/projects/jGMA/ LAN address: WAN address: Example jGMA Addressing. socket://148.197.150.3:56099/producer/cam http ://dsg.port.ac.uk:8080/jGMA/PC?8723623
14
14 http://dsg.port.ac.uk/projects/jGMA/ Summary Summary: jGMA is a reference implementation of GMA written in Java, jGMA is a easy to use, simple, scalable and a robust system, Our early tests show that jGMA has good performance and scalability. Some issues need dealing with: Throttling.
15
15 http://dsg.port.ac.uk/projects/jGMA/ Future Work Future developments: Implement a persistent registry: File (ASCII text), R-DBMS (i.e. MySQL), XML (i.e. Xindice). Completing the leasing infrastructure, Virtual Registry, Monitoring via PC Servlet, Hooks for debugging, Being deployed in GridRM, Look at working with other GMA developers to get an agreement on a standardised wire API.
16
16 http://dsg.port.ac.uk/projects/jGMA/ Demo
17
17 http://dsg.port.ac.uk/projects/jGMA/ Download Available: jGMA-0.3.7-beta New version for October: http://dsg.port.ac.uk/projects/jGMA
18
18 http://dsg.port.ac.uk/projects/jGMA/ Links Project Web page: http://dsg.port.ac.uk/projects/jGMA/ The DSG Web page: http://dsg.port.ac.uk/ GridRM: http://gridrm.org/ Related links: GGF: http://www.gridforum.org/ R-GMA: http://www.r-gma.org/
19
19 http://dsg.port.ac.uk/projects/jGMA/ Xcx vxv Xcv xcv Sdf Sd F S Dfs Df Xcx vxv Xcv xcv
20
20 http://dsg.port.ac.uk/projects/jGMA/ Xcx vxv Xcv xcv Sdf Sd F S Dfs Df Xcx vxv Xcv xcv
21
21 http://dsg.port.ac.uk/projects/jGMA/ Xcx vxv Xcv xcv Sdf Sd F S Dfs Df Xcx vxv Xcv xcv
22
22 http://dsg.port.ac.uk/projects/jGMA/ Xcx vxv Xcv xcv Sdf Sd F S Dfs Df Xcx vxv Xcv xcv
23
23 http://dsg.port.ac.uk/projects/jGMA/ Xcx vxv Xcv xcv Sdf Sd F S Dfs Df Xcx vxv Xcv xcv
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.