GridFE: Web-accessible Grid System Front End

Download Report

Transcript GridFE: Web-accessible Grid System Front End

GridFE: Web-accessible
Grid System Front End
Jared Yanovich, PSC
Robert Budden, PSC
Preface
• User adoption of grids remains limited by
obstacles in usability
– Ease of access and use of a grid are essential
– Bad initial user experiences are hard to overcome
• Web-based front ends can ease user access to
a grid, including facilities to:
– Simplify user authentication and credential
management
– Guide users in gathering job submission parameters
and submitting jobs
– Monitor jobs submitted and gather output
GridFE
2
SuperComputing Science
Consortium
• SuperComputing
Science Consortium
– Regional partnership
•
•
•
•
•
•
•
•
•
•
National Energy Technology Laboratory
Pittsburgh Supercomputing Center
West Virginia University
Carnegie Mellon University
University of Pittsburgh
WV Governor's Office of Technology
Institute for Scientific Research
Duquesne University
Waynesburg College
NASA IV & V :
– Objective: enhance access to computational resources to advance
scientific research
– http://www.sc-2.psc.edu/
GridFE
3
(SC)2 SABER Grid
• Common grid infrastructure between
computational resources at DOE NETL,
PSC, and WVU
– Commodity Intel IA32 clusters / Linux
• Accessible by researchers, faculty and
students at (SC)2 member sites
• Used for research computing and
computer science coursework
GridFE
4
GridFE
• Designed to be easy to use
• Developed for use with Globus
– Globus is very common
– Many APIs for accessing
– Globus protocols exist and are readily
available
• Features supported by GridFE: logging
in/authentication, job submission, job
output retrieval
GridFE
5
Logging In
• HTTP authentication over SSL is used to log in
• Messy details of certificates all handled on
behalf of user
GridFE
6
Logging In (2)
• For SABER, accounts are
managed through Kerberos
• To authenticate on the
command line, the user must run:
– kinit
– kx509
– kxlist
• GridFE handles this on behalf of the user
GridFE
7
Logging In With mod_fum
• HTTP authentication handled by mod_fum,
an Apache module written to leverage
KX509 to generate grid proxy certificates
Kerberos
Domain
Controller
Apache
Web Browser
Client
mod_fum
GridFE
8
mod_fum (2)
• After successful Kerberos authentication
via libkrb5, mod_fum generates a KX509
certificate from the Kerberos ticket using
libkx509 from the KCA/KX509 project
• A short-lived X.509 certificate is generated
by the KCA corresponding to the KX509
certificate via libkx509
• The X.509 certificate is later used to
authenticate to the grid
GridFE
9
Portal Interface
• Hyperlinks to common
grid functionality:
• Submit jobs
• Previously
submitted jobs’
status
• SABER news
• Proxy certificate
information
• Grid node
availability
GridFE
10
Job Submission
• HTML form controls for
all job submission
parameters
• Job identification
• Executable path
• Target host
• Files involved
• Equivalent to command
line invocation of
globus-job-submit
GridFE
11
Job RSL
• Resource specification language (RSL)
describes job
• Used by job submission manager and is needed
to submit jobs
• It also allows:
– Job quantization – specify all resources associated
with the job
– Useful for re-running same job
• GridFE constructs RSL for jobs on behalf of the
user, additionally providing optional access to it
GridFE
12
Job Status
• Job status page lists previously submitted jobs
and their status
• Comparable to executing globus-job-status
for each job submitted
• Follow a job to retrieve output
GridFE
13
Job Output
• Job output page
shows any output
the job generated
• Easy to download
and save
• Equivalent to
invoking the
globus-jobget-output
command line
utility
GridFE
14
GridFE Backend Architecture
5
GridFE
Servlet
Modules
Java
Interpreter
CoG Libraries
4
3
6
1
2
Tomcat
(Java Servlet
Runner)
Apache
Web Client
8
7
Phew!
GridFE
15
System Design
• Authentication handled by
custom Apache module
mod_fum
• Grid functionality divided into Web pages
• Web pages generated by Java servlet
• Grid Commodity Toolkit (CoG)
CoG
used by GridFE Java servlet to
participate in grid protocols
GridFE
16
GridFE Java Servlet Class
Hierarchy
OOF – Generic object
output formatting
Page Header
gridfe – grid- and
Web page-related
GridFE
Page
GridJob
Submit job
JASP – Java Web application
service routine package
Paragraph
Forms
Table
Certificate
Retrieve job output
RSLelement
Node availability
GridFE
Miscellaenous
Routines for
Web applications
17
Related Work
• Other portals provide Web-based access
to grid systems: OGCE, and GPDK
• However, they are not tailored for a
Kerberos authentication environment
• Also, GridFE consists of a simpler
interface providing only essential grid
functionality, lowering the learning curve to
grid adoption
GridFE
18
Conclusion
• Grid systems are an important computational
resource
• It is essential that grid systems be accessible
and easy to use
• GridFE was designed to reduce obstacles to
allow users to harness the power of grid systems
– Easy-to-use interface
– Authentication and credential management simplified
– Tools to assemble job descriptions, submit and
monitor jobs, and gather output
– Instructional components to help users learn about
and use grid middleware
GridFE
19
Future
• New features planned:
– Enhanced job submission controls
– Replica Location Service support
• Long-term support planned:
– Grid information/service browsing
– Enhanced data transfer support
– Grid workflow management
GridFE
20
Further Information
• “GridFE: A Web-accessible Front End to a Grid
System”, R. Budden et al., PSC, Oct 2005,
http://www.psc.edu/~yanovich/gridfe.pdf
• KCA/KX.509 Project,
http://www.citi.umich.edu/projects/kerb_pki/
• Apache Web Server Project,
http://www.apache.org/
• Globus Alliance, http://www.globus.org/
• Grid Commodity Toolkit, http://www.cogkit.com/
GridFE
21