Portals & Portlets 2003, 14 July 2003
The GridLab Portal
Portals & Portlets 2003
Albert Einstein Institute
Jason Novotny [email protected]
Michael Russell [email protected]
Oliver Wehrens [email protected]
Portals & Portlets 2003, 14 July 2003
The State of Grid Computing
Access to Grid services and resources still difficult for end usersCurrent API’s and tools are still very primitiveGrid middleware and tools are constantly evolving making it difficult to provide reliable, robust infrastructureUltimately end users want to be hidden from technical or implementation specific details of GridsGrowing infrastructure complexity means diminished usabilityMany projects focusing on a narrow range of services for a very specific set of usersThere is a real need for higher level tools and grid computing environments
Portals & Portlets 2003, 14 July 2003
GridLab Project
Funded by the EU (5+ M€), January 2002 – December 2004Application and Testbed oriented
Cactus Code, Triana Workflow, all the other applications that want to be Grid-enabled
Main goal: to develop a Grid Application Toolkit (GAT) and set of grid services and tools...:
resource management (GRMS), data management,monitoring, adaptive components, mobile user support, security services,portals,
... and test them on a real testbed with real applications
Portals & Portlets 2003, 14 July 2003
GridLab VO
PSNC (Poznan) - coordination AEI (Potsdam) ZIB (Berlin) Univ. of Lecce Cardiff University Vrije Univ. (Amsterdam) SZTAKI (Budapest) Masaryk Univ. (Brno) NTUA (Athens)
Sun MicrosystemsCompaq (HP)
ANL (Chicago, I. Foster) ISI (LA, C.Kesselman) UoWisconsin (M. Livny)
collaborating with:Users!
EU Astrophysics Network,
DFN TiKSL/GriKSL
NSF ASC Project
other Grid projectsGlobus, Condor,
GrADS,
PROGRESS,
GriPhyn/iVDGL,
CrossGrid and all the other European Grid Projects (GRIDSTART)
other...
Portals & Portlets 2003, 14 July 2003
GridLab Services
Resource Management ServicesResource BrokeringJob SubmissionUsage Policy Management
Data Management ServicesData ReplicationDate MovementVisualization Services
Monitoring and Adaptive ServicesApplication Performance MonitoringResource UtilizationThe ability to alter applications at runtime
Information ServicesResources, user profiles, applications…
Testbed Management ServicesGrid-wide administration, testing and QA services.
Notification Services… and many more!
Portals & Portlets 2003, 14 July 2003
GridLab Portal
The GridLab Portal plays a critical role within the GridLab architecture as the front-end to the resources and services GridLab provides.
It must provide a well-integrated, cohesive environment for accessing GridLab resources and services.
Portals & Portlets 2003, 14 July 2003
Frameworks
The first step in building a Grid portal is to decide whether to adopt or develop a framework to support Web interface development. The key features that a Grid portal framework should provide are:
Single sign-on to all elements of portalSupport for authorizing access to all elements of portalThe ability to administer the portal at runtimeBuilt-in support for persistence managementCaching and connection poolingModel-View-Controller patternSupport for multiple devices (PCs, mobile phones, PDAs)
Portals & Portlets 2003, 14 July 2003
MVC Pattern
Support for the MVC Pattern is just one of the many aspects that are important to a solid Grid portal framework.
Portals & Portlets 2003, 14 July 2003
Early Portal Projects
Grid-Port: Perl-based framework developed by Mary Thomas and Steve Mock at San-Diego Supercomputing Center (SDSC)
Grid Portal Development Toolkit (GPDK):Developed by Jason Novotny at Lawrence Berkeley National Laboratories (LBNL)
Astrophysics Simulation Collaboratory (ASC):Developed by Michael Russell at University of Chicago, now lead by Greg Daues of National Super-Computing Alliance (NCSA)
Portals & Portlets 2003, 14 July 2003
Portlets
The Portlet Java Specification Request (JSR-168) lays the foundation for a new open-standard for Web portal development frameworks.Portlets define an API for building atomic, composable visual interfaces to Web content or service providersA portlet provides a “mini-window” within a portal page. Multiple portlets can be composed in a portal page.Portlets extend servlets. The idea being to reuse common method signatures.
Portals & Portlets 2003, 14 July 2003
Layout & Presentation
Portlets define how to construct and deliver Web content as modular components within a Web page.
Portlets can be “maximized” or “minimized” within a Web page.
Users can choose to which portlets they want to be “subscribed”.
Portals & Portlets 2003, 14 July 2003
Portlet Implementations
Jakarta Jetspeed
jPortal
IBM WebSphere
Oracle i9AS Portal
GridSphere…
Portals & Portlets 2003, 14 July 2003
GridSphere Project
GridSphere is already in beta mode….
We are using it to support the development of the GridLab Portal and several other portal projects.
Visit our website is at http://www.gridsphere.org
Portals & Portlets 2003, 14 July 2003
GridSphere Feature List
Portlet API implementation nearly fully compatible with IBM's WebSphere 4.2.Support for the easy development and integration of "third-party portlets"Higher-level model for building complex portlets using visual beans and the GridSphere User Interface (UI) tag library.Flexible XML based portal presentation description can be easily modified to create customized portal layouts.Built-in support for Role Based Access Control (RBAC) separating users into guests, users, admins and super users.Sophisticated portlet service model that allows for creation of "user services", where service methods can be limited according to user rights.
Portals & Portlets 2003, 14 July 2003
GridSphere Feature List (cont.)
Persistence of data provided using Castor JDO for RDMS database supportIntegrated Junit/Cactus unit tests for complete server side testing of portlet services including the generation of test reports.Documentation uses DocBook for HTML & PDF output of guides and tutorialsGridSphere core portlets offer base functionality including login, logout, user and access control management.Localization support in the Portlet API implementation and GridSphere core portlets support English, German, Czech, Polish, Hungarian and Greek.Open-source and 100% free! :-)
Portals & Portlets 2003, 14 July 2003
But wait, there’s more…
Our goal is to develop a general web portal framework that can be used to host information oriented web sites, like www.gridlab.org.
We’re developing more advanced content management tools (in the “conman” webapp) to support online and offline content management.
In essense, going the opposite route the CHEF Portal folks went… from Grid to Web and back again.
Portals & Portlets 2003, 14 July 2003
GridLab Portal Revisited
In the GridSphere model, the GridLab Portal is a portlet web application managed with the GridSphere framework.
The GridLab Portal is a collection of portlets for using the services developed by the GridLab Project.
Ideally, if the Portlet API were available and a standard deployment model existed, the GridLab Portal web application would be reusable in other portlet frameworks, like JetSpeed.
The GridLab Portal is currently in alpha development but will be online soon!
Portals & Portlets 2003, 14 July 2003
GridLab Portal Status
The following portlets have been prototyped:Credential retrieval and administration
Using latest MyProxy client
Job submissionGridLab Resource Management System
Globus Gatekeeper
Condor Job Manager (over GSI-SSH)
(GridLab) MonitoringGeneric interface to monitoring service
Outside developers are getting involved:Martin Kuba from WP5
Jean-Claude and others from NRC
Portals & Portlets 2003, 14 July 2003
Future Development
GAT integrationWe’re already buidling portlet service factories that hide the underlying details of working with remote services. Within the GridLab Project, we’re developing the Grid Application Toolkit as Grid access layer.
OGSA integrationMake it easier to use OGSA services within portal.Make it easy to publish portlet services as OGSA, thereby turning GridSphere into an OGSA development environment.
IDEWe are already building higher-level tools to support portlet development. We would like, one day, to explore the idea of building a visual integrated development environment (IDE).
Flash presentationBy adhering to the MVC model and using JSP strictly for rendering (i.e. keeping all programming logic inside Java, not JSP) we can consider rendering our portlets in other technologies. One of our colleagues (at one point) agreed to prototyping a Flash presentation layer.
Portals & Portlets 2003, 14 July 2003
External Collaborations
Working to support GridSphere for the general Grid portal communityCollaborations with folks from Canadian National research Council (NRC) to develop grid data transfer portlets using GridFTPCollaborations with SZTAKI research center in Budapest to use GridSphere to support users of SuperGrid and ClusterGrid projectsCollaboration with physicists at Albert-Einstein-institute in Berlin to develop portlets for studying numerical relativity.Submittted proposal to support development of ENZO-Grid Portal.Collaborating with the Global Grid Forum (GGF) on enhancing the usefulness and awareness of portlets in the Grid Computing Environments WG. Interested in promoting GridSphere and Portlets to more communities! Please e-mail us if interested!
Portals & Portlets 2003, 14 July 2003
Conclusion
GridSphere is one of many implementations of the Portlet JSR. The point is Portlets is the standard for the future of Web development. But this standard and how it is being used is still evolving! We hope to play an active role here!Portlets are just the beginning… there are many other aspects to portal development that we are exploring and are just now starting to apply to real application scenarios.More information can be found on our GridLab web pages at http://www.gridlab.org/WorkPackages/wp-4Visit our project website at http://www.gridsphere.org!
Portals & Portlets 2003, 14 July 2003
Some References
GridSphere Projecthttp://www.gridsphere.org
GridLab Projecthttp://www.gridlab.org
Astrophysics Simulation Collaboratory http://www.ascportal.org
Grid Portal Development Toolkit:http://www.doesciencegrid.org/Projects/GPDK
Portlet Specification:http://www.jcp.org/en/jsr/detail?id=168
Jakarta JetSpeed:http://jakarta.apache.org/jetspeed
Cactus Project: http://www.cactuscode.org
Globus Project: http://ww.globus.org
Jakarta JetSpeed Portlet Tutorial: http://www.bluesunrise.com/jetspeed-docs/JetspeedTutorial.htm
WebSphere Portal API:http://www7b.software.ibm.com/wsdd/zones/portal/portlet/4.2api/