Presentation is loading. Please wait.

Presentation is loading. Please wait.

11.1 Grid Portals ITCS 4146/5146 Grid Computing, 2007, UNC-Charlotte, B. Wilkinson. March 11, 2007.

Similar presentations


Presentation on theme: "11.1 Grid Portals ITCS 4146/5146 Grid Computing, 2007, UNC-Charlotte, B. Wilkinson. March 11, 2007."— Presentation transcript:

1 11.1 Grid Portals ITCS 4146/5146 Grid Computing, 2007, UNC-Charlotte, B. Wilkinson. March 11, 2007

2 11.2 Grid Portal “A web-based application server enhanced with the necessary software to communicate to grid services and resources” “Provides application scientist a customized view of software and hardware resources from a web browser” [1] [1] “Grid Computing Making the Global Infrastructure a Reality” ed. F. Berman, G. C. Fox and A. J. G. Hey, Wiley, 2003, Chapter 27 “The Grid portal development kit” by J. Novotny.

3 11.3 Grid Portals Uses a Web browser interface –Can use from anywhere. Hides details of Grid middleware –Good!! Provides –Access to grid information –Access to grid services –Automated execution of applications/jobs –Workflow management –File management –Single sign-on to grid resources

4 11.4 Access to Grid Services Security Services –management of certificates –access to virtual organization (people) Remote File Management –access to files and directories –moving files Remote job management –job submission –workflow management

5 11.5 Access to Information Portals also provide access to information -- anything related to tasks at hand, including communication with virtual organization. In fact, some portals started simply as informational portals in the same vein as web portals such as yahoo.

6 11.6 Grid Portal Toolkits Need software tools to put together grid portals Several portal “toolkits” developed since mid-1990’s. Used for application specific grid projects, and for general-purpose grid portals

7 11.7 Available Technologies for putting together portal toolkits

8 11.8 Java Servlets Objects that allows a software developer to add dynamic content to a Web server using the Java platform. Generate content commonly HTML but may be other data such as XML. Servlets can maintain state across many server transactions by using HTTP cookies, session variables or URL rewriting (altering URL before requesting item). http://en.wikipedia.org/wiki/Java_Servlet

9 11.9 JavaServer Pages (JSP) A Java technology that allows software developers to dynamically generate HTML, XML or other types of documents in response to a Web client request. JSP syntax adds additional XML-like tags, called JSP actions, to be used to invoke built-in functionality. JSPs compiled into Java Servlets by a JSP compiler. From: http://en.wikipedia.org/wiki/JavaServer_Pages

10 11.10 JavaBeans Java classes used to encapsulate many objects into a single object (the bean), so that the bean can be passed around rather than the individual objects. http://en.wikipedia.org/wiki/JavaBeans

11 11.11 Commodity Grid (CoG) Kits ( Examples: Java and Python CoG Kits) A higher-level framework for grid devopment. Allow rapid Grid application development. Encourage collaborative code reuse and avoid duplication of effort. Used within GT3.2 and GT4. Java-based GSI, gridFTP, myProxy, GRAM client. Provides support for portal developers. http://wiki.cogkit.org/index.php/Main_Page

12 11.12 Servlet engines Provides support for servlets. Example Apache Tomcat Apache Tomcat used in Assignment 6, together with Gridsphere portlet framework)

13 11.13 Early Portal Toolkit Examples 1990s: The Grid Portal Development Kit (GPDK) (not now supported) – Used Java Server Pages (JSPs) for presentation layer, and JavaBeans to access backend. NPACI Grid Portal Toolkit (Gridport) (National Partnership for Advanced Computational Infrastructure)

14 11.14 GridPort 2.0 –Perl-based Grid portal toolkit Ninf Portal –JSP/Java Servlet front-end GridSpeed portal –an extension of Ninf

15 11.15

16 11.16 Application-Based Portals Portals often specialized to a particular application. –for example, grid portal for high energy physics. Portal toolkits give ability to taylor portal to application or user.

17 11.17 MPI program Starting job From a paper”Building GridPortals: The NPACI Grid Portal Toolkit” by M. P. Thomas and J. R. Boisseau. NPACI Hotpage Grid portal (based upon GridPort)

18 11.18 Adapted from slides “The NCSA Alliance Portal and the Open Grid Computing Environment Project” by D. Gannon, G. Fox, B. Plale, M. Pierce, M. Thomas, C. Severance, G. von Lazewski, and J. Alameda.

19 11.19 DOE Fusion Grid Portal Adapted from slides “Reuseable Grid Portral Components” by M Thomas.

20 11.20 Linked Environments for Atmospheric Discovery (LEAD) Adapted from slides “Reuseable Grid Portral Components” by M Thomas.

21 11.21 NEES – www.neesgrid.org George E. Brown, Jr. Network for Earthquake Engineering Simulation –Large Installations of physical equipment for earthquake experiments and simulations –Part of the award is to make equipment available for remote collaborators Focus is on collaboration and experimental equipment sharing in addition to access to computation From slides “The NCSA Alliance Portal and the Open Grid Computing Environment Project” by D. Gannon, G. Fox, B. Plale, M. Pierce, M. Thomas, C. Severance, G. von Lazewski, and J. Alameda.

22 11.22 Network for Earthquake Eng. and Simulation (NEESGrid) Adapted from slides “Reuseable Grid Portral Components” by M Thomas.

23 11.23 Early grid portals “tools” not very flexible. Tied to specific programming tools and grid software, such as Globus 2.4. Specific programming structure not suitable for users to develop portals themselves. Not standardized APIs.

24 11.24 Portal Implementation Should be flexible, meet grid industry standards, be able to be extended using parts developed by others. General approach currently is to use “software components” called portlets.

25 11.25 Portals with Portlets Portal server consists of portlets Each portlet provides certain functionality and a window within the portal. Each portlet can be associated with a particular grid service User can have any number of portlets as he/she wishes (will be associated with user’s persistent context).

26 11.26 Portlets provided for: –Management of user proxy certificates –Remote file Management via Grid FTP –News/Message systems for collaborations –Grid Event/Logging service –Access to OGSA services –Access to directory services –Specialized Application Factory access Distributed applications Workflow –Access to Metadata Index tools User searchable index

27 11.27 Portal Server MyProxy Server Metadata Directory Service(s) Directory & index Services Application Factory Services Messaging and group collaboration Event and logging Services Portal Server Adapted from slides “The NCSA Alliance Portal and the Open Grid Computing Environment Project” by D. Gannon, G. Fox, B. Plale, M. Pierce, M. Thomas, C. Severance, G. von Lazewski, and J. Alameda.

28 11.28 Portlet Approach to Grid Services Portal Server MyProxy Server Metadata Directory Service(s) Directory & index Services Application Factory Services Messaging and group collaboration Event and logging Services Portlet 1 Portlet 2 Portlet 3 Portlet 4 Portlet 5 Portlet 6 Adapted from slides “The NCSA Alliance Portal and the Open Grid Computing Environment Project” by D. Gannon, G. Fox, B. Plale, M. Pierce, M. Thomas, C. Severance, G. von Lazewski, and J. Alameda.

29 11.29 A Pane and portlet Proxy Manager Portlet The current Visible pane Adapted from slides “The NCSA Alliance Portal and the Open Grid Computing Environment Project” by D. Gannon, G. Fox, B. Plale, M. Pierce, M. Thomas, C. Severance, G. von Lazewski, and J. Alameda.

30 11.30 Advantages of Portlet Approach Easy to add new grid services and reconfigure user’s view (context) Different software developers can provide portals to be plugged into portal –Many parties developing portal and portlet tools -- Jetspeed (Apache), Websphere (IBM), GridSphere, … Portal/portlet standard called JSR 168 (portlet Java Specification Request open standard).

31 11.31 Portal Layout

32 11.32 National Science Foundation Middleware Initiative (NMI) Started in 2001 initially over 3 years “to create and deploy advanced network services that simplify access to diverse Internet information and services.” Provides a centralized location for important grid software. Current NMI package includes Globus, Condor, MPI-G2, and: – a new grid portal project called OGCEGrid (funding started Sept 2003).

33 11.33 Consortium established “Fall 2003 to foster collaborations and shareable components with portal developers worldwide” The following screenshots taken from http://www.ogce.org

34 11.34 OGCE version 1 Sample feature

35 11.35 Membership: Join/participate in different topic groups (Group tabs across top).

36 11.36 Schedule: Maintain a personal or group calendar.

37 11.37 Chat: Engage other members of your group in online discussion.

38 11.38 Proxy Manager and Job Submit: Obtain/manage Grid credentials to access Grid resources through browser. Also shown are GRAM job launchers and sample "ping" portlet.

39 11.39 Grid FTP: Use your credential to browse remote directories/upload/download files.

40 11.40 Grid Context: Store arbitrary web objects (movies, web pages, audio files) in a customizable, annotated directory tree.

41 11.41 The OGCE Release 2 Consists of a core set of JSR 168 compatible Grid portlets. Portal container-independent. Currently can choose between uPortal and GridSphere containers to deploy OGCS2 portlets. http://www.collab-ogce.org/nmi/ogce2-docs/index.html

42 11.42 GridSphere Portal framework provides an open- source portlet based Web portal. http://www.gridsphere.org/gridsphere/gridsphere

43 11.43

44 11.44 Assignment 6a Goal: To learn how to deploy portlets within Gridsphere. Makes underlying software structure of JSR 168 grid portals more concrete.

45 11.45 Structure Apache Tomcat servlet engine Gridsphere portal framework Deploy Portlet

46 11.46 Step 1: Download and Install Tomcat Testpage: http://localhost:8080/

47 11.47 Step 2: Download and Install Gridsphere After downloading and installing Gridsphere, Gridsphere located at: http://localhost:8080/gridsphere/

48 11.48 Goto http://localhost:8080/gridsphere/ to get set-up screen:

49 11.49 After filling details, get usual Gridsphere screen. Similar to course portal except PURSe registration portlet not installed (a separate package):

50 11.50 Creating your own portlet The portlet will accept one number and say whether it is odd or even (“oddeven” portlet)

51 11.51 Files Gridsphere provides tool to create template files. Portlet designer then needs to provide java source file that does the required evaluation, and Provide/modify three portlet deployment descriptor files.

52 11.52 Directory Structure src holds directory structure leading to java source file webapp holds deployment descriptor files

53 11.53 Deployment descriptor files Three deployment descriptor files needed to create a portlet: Portlet.xmlJSR 168 standard, describing portlet Layout.xmlGridsphere file describing layout of portlet within page Group.xmlGridsphere file describing collection of portlets Files are held webapp\WEB-INF directory. (There are other deployment files, which generated automatically during deployment.)

54 11.54 webapp\WEB-INF directory Layout.xml Portlet.xml Group.xml

55 11.55 Odd Even Odd Even edu.uncc.abw.portlets.OddEven Layout.xml Specified columns and rows of a table in portlet. Components are in cells of table. Path to portlet code (There is an alternative format using # symbol)

56 11.56 group.xml Specifies group for portlet demo The demo group PUBLIC edu.uncc.abw.portlets.OddEven USER Group name Portlet

57 11.57 Portlet.xml … Odd Even Portlet OddEven Odd Even Portlet edu.uncc.abw.portlets.OddEven 60 text/html edit help en Odd Even odd even Portlet

58 11.58 Java portlet code public class OddEven extends ActionPortlet { private static final String DISPLAY_PAGE = "MainPage.jsp"; public void init(PortletConfig config) throws PortletException { super.init(config); DEFAULT_VIEW_PAGE = "prepare"; } public void action(ActionFormEvent event) throws PortletException { TextFieldBean value1 = event.getTextFieldBean("valueTF1"); TextBean answer = event.getTextBean("answer"); int val = Integer.parseInt( value1.getValue() ); if (value1.getValue() == null ) { answer.setValue(""); } else { if( isEven(val) ) { answer.setValue("The number: " + value1.getValue() + " is Even"); } else { answer.setValue("The number: " + value1.getValue() + " is Odd"); } setNextState(event.getActionRequest(), DISPLAY_PAGE); } public void prepare(RenderFormEvent event) throws PortletException { setNextState(event.getRenderRequest(), DISPLAY_PAGE); } public boolean isEven(int val) { return val % 2 == 0; }

59 11.59 JavaServer Pages,.jsp OddEven.java also uses a file called MainPage.jsp to dynamically generate an HTML page. MainPage.jsp held in webapp\jsp directory

60 11.60 MainPage.jsp This portlet will figure out if the inputed number is even or odd.

61 11.61 Final Odd Even portlet

62 11.62 More Information See the links on the Gridsphere portal page

63 11.63 General information on portals Books: “ Grid Computing Making the Global Infrastructure a Reality” ed. F. Berman, G. C. Fox and A. J. G. Hey, Wiley, 2003. –Chapter 27 “The Grid portal development kit” by J. Novotny. –Chapter 28 “Building grid computing portals: the NPACI grid portal toolkit” by M. P. Thomas and J. R. Boisseau

64 11.64 More Information JSR 168 Portlet specification http://jcp.org/aboutJava/communityprocess/review/ jsr168 GridLab, The GridSphere Portal http://www.gridsphere.org/gridsphere/gridsphere Network for Earthquake Engineering Simulation Grid (NEESGrid) http://www.neesgrid.org

65 11.65 Questions


Download ppt "11.1 Grid Portals ITCS 4146/5146 Grid Computing, 2007, UNC-Charlotte, B. Wilkinson. March 11, 2007."

Similar presentations


Ads by Google