Gemstone: a mozilla-based rich client for accessing grid services

advertisement
Gemstone:
a mozilla-based rich client
for accessing grid services
Kurt Mueller / Karan Bhatia
Grid Middleware Development Group
San Diego Supercomputer Center
University of California, San Diego
SAN DIEGO SUPERCOMPUTER CENTER
The science driving Gemstone
• GEMSTONE: Grid-Enabled Molecular Science
Through Online Networked Environments
• Molecular quantum and classical chemistries
• Apps: APBS, GAMESS, Polyrate
• Visualization: QMView
• “Our research involves utilization of
computationally derived chemical and physical
properties, in conjunction with experiments, to
enhance the understanding of control within
technologically important chemical structures
and reaction processes.” - Kim Baldridge
SAN DIEGO SUPERCOMPUTER CENTER
Typical workflow
• Choose molecule(s) - i.e. input files
• Setup an application run
• Choose application
• Set application options
• Submit application run (job) to a resource
• (optionally) monitor, tweak and resubmit
• Get application output
• Visualize output
• Share output
SAN DIEGO SUPERCOMPUTER CENTER
In the old days…
• Molecule files and job descriptor files
edited/managed by hand - vi, ftp/scp from user’s
computer to computational resource
• Grid credentials stored by user and managed
with command-line tools - grid-proxy-init
• Job submission also through command-line
tools - globus-job-run
• Retrieve job output - ftp/scp
• Visualize on user’s desktop - QMView
SAN DIEGO SUPERCOMPUTER CENTER
Early portal efforts
• NPACI HotPage
•
•
•
•
•
Circa 2000
Perl-based, used GridPort toolkit
Credential management
File management
Generic job submission
• GAMESS/LAPK portals at SDSC
• Circa 2001
• Rudimentary GUIs for setting up and running GAMESS
and LAPK jobs
• Primitive visualization of results
SAN DIEGO SUPERCOMPUTER CENTER
New paradigms
• SOA - Service Oriented Architecture
• Applications refactored as services
• Web services
• Dynamic discovery of services
• Combination of services into novel workflows
• OPAL - SDSC toolkit for quickly exposing apps as web services
• Rich user interfaces
• Overcome traditional limitations of HTML and browsers
• Flash, Java Applets, Java WebStart, AJAX
SAN DIEGO SUPERCOMPUTER CENTER
Portal functions
• Environment for end-users to do science
• Discovery of service and capabilities
• User Interface to service APIs
• Reduce complexity of Grid system
• Unified mechanism to access disparate APIs and
protocols
• Uberftp (gridftp), GRAM (job submission), etc
• Controlled publication or sharing of
experiences/data
• E.g. Geon data publication, myspace social networking,
personal workspace
SAN DIEGO SUPERCOMPUTER CENTER
Specific Challenges
• Heterogeneity of desktop/laptop operating environments
• Multi-platform software (mac, windows, linux)
• Reliable software deployment, manage software dependencies, push
updates
• Standard software engineering issues
• Users’ _primary_ computer is not part of the grid
• Grids are server-based (mostly)
• Grid protocols don’t extend to the desktop
• Desktop provides best environment for data management,
visualization and interaction
• Extreme heterogeneity of protocols, APIs and SDKs
• Many different protocols (wsrf, soap, gsiftp, gram, mds)
• Different tools for accessing different services (uberftp, portal, java
cog)
SAN DIEGO SUPERCOMPUTER CENTER
Grid Protocols and APIs
SAN DIEGO SUPERCOMPUTER CENTER
Traditional Portal Architectures
Qui ck Ti me™and a
TIF F (LZW)dec om pres sor
are needed to s ee th i s pi c tu re.
data
•
User’s
PC
•
Non-grid
Qu ic kTi me™ a nd a
TIFF (LZW)d ec omp res so r
are n ee de d to s ee th is pi ctu re .
Significant developer effort to
add services to portal
•
Portal
server
•
Non-grid protocols to get to
portal server
•
Grid
Services
Grid Fabric
SAN DIEGO SUPERCOMPUTER CENTER
•
Wsrp could help, but not fully
cooked
No support to keep service with UI
synchronized
Eg. Data transfer first requires file
upload
Lack of integration with users’
primary computer (file system,
vis, etc)
Gemstone approach
• No intermediate portal
server to manage
• Services and UI can
evolve together
Qui ck Ti me™and a
TIF F (LZW)dec om pres sor
are needed to s ee th i s pi c tu re.
data
• Auto discovery and download
of new UI capabilities as
services are upgraded
User’s
PC
Grid Fabric
• Direct support of grid
protocols
• Gsiftp, job management
Grid
• Integration with desktop
Services
resources
SAN DIEGO SUPERCOMPUTER CENTER
• File system, visualization,
security
Mozilla-based
SAN DIEGO SUPERCOMPUTER CENTER
Mozilla environment
•
Grid protocols built directly into desktop apps
•
•
Service discovery using RSS
•
•
Dynamic discovery and integration of new capabilities
User services represented by Web Services + XUL
•
•
Leverage existing user abstractions
XUL provides UI for services (similar in concept to wsrp spec)
Highly interactive applications
•
More control, better integration to desktop environment than ajax alone
SAN DIEGO SUPERCOMPUTER CENTER
Mozilla technologies
• XUL: XML-based UI language
• Layout - widgets, HTML equivalents
• Used to create interfaces for Firefox, Thunderbird, etc.
• CSS
• Javascript
• Lightweight interpreted language
• XPCOM
• Interface to C/C++ compiled libraries for heavy lifting
• Globus libraries, for example
• XPI: package installer
• Installs new functionality into Firefox browser, keeps programs
updated
SAN DIEGO SUPERCOMPUTER CENTER
Example 1: Topaz
• One component of larger Gemstone project
• Protocol extension to Firefox Browser
• gsiftp://server:port/path/to/file
• GSI Security
• Uses GAMA server to authenticate user
• Secure, high performance download
• Third-party transfer (in development)
• Multi-platform
• Currently supports only macosx and linux
• Auto-update
• Unified xpi-based installation
• Collaboration with UTEP
• Michela Taufer, Richard Zamudio, Daniel Catarino
SAN DIEGO SUPERCOMPUTER CENTER
Demo
SAN DIEGO SUPERCOMPUTER CENTER
Example 2: Gemstone application
• Stand-alone application built on Mozilla framework
• Supports mac, linux, windows
• Tight integration with local desktop file system
• Service Discovery using RSS registries
• Supports multiple registries
• Service panels represented with XUL + javascript
• Use ajax xmlhttprequest directly to web service endpoints
• No intermediate portal server needed
• Supports OPAL-based application services or custom strongly typed
grid services
• Security leveraging GAMA
• Demo 1: the basics
• Integration across applications of different scales
• Demo 2: using SOA to support new science
SAN DIEGO SUPERCOMPUTER CENTER
Demo: The Basics
SAN DIEGO SUPERCOMPUTER CENTER
Demo: Integration across application
services
SAN DIEGO SUPERCOMPUTER CENTER
Gemstone Project
• Funding provided by
• NSF Middleware Initiative
• National Biomedical
Computation Resource
(NBCR)
• University of Zurich (Kim
Baldridge Laboratory)
• San Diego Supercomputer
Center
• University of Texas, El Paso
SAN DIEGO SUPERCOMPUTER CENTER
• People
•
•
•
•
•
•
•
•
•
•
•
•
•
Daniel Catarino
Sandeep Chandra
Kim Baldridge
Karan Bhatia
Sasha Buzko
Jerry Greenberg
Sriram Krishnan
Wilfred Li
Stephen Mock
Kurt Mueller
Brent Stearn
Michela Taufer
Richard Zamudio
Software
• Working on v1.0 release (next few weeks)
• Gemstone: http://gemstone.mozdev.org
• Topaz: http://gcl.utep.edu/projects/topaz/
• Open source license
• Any feedback to:
• Karan@sdsc.edu
• Gemstone-dev@sdsc.edu
SAN DIEGO SUPERCOMPUTER CENTER
Download