ASC Portal Design & Architecture A Case Study in Grid Portal Development Michael Paul Russell Dept of Computer Science The University of Chicago

Slides:



Advertisements
Similar presentations
PRAGMA BioSciences Portal Raj Chhabra Susumu Date Junya Seo Yohei Sawai.
Advertisements

High Performance Computing Course Notes Grid Computing.
GridFTP: File Transfer Protocol in Grid Computing Networks
Holding slide prior to starting show. Supporting Collaborative Working of Construction Industry Consortia via the Grid - P. Burnap, L. Joita, J.S. Pahwa,
National Center for Supercomputing Applications Integrating MyProxy with Site Authentication Jim Basney Senior Research Scientist National Center for Supercomputing.
USING THE GLOBUS TOOLKIT This summary by: Asad Samar / CALTECH/CMS Ben Segal / CERN-IT FULL INFO AT:
Technical Architectures
Slides for Grid Computing: Techniques and Applications by Barry Wilkinson, Chapman & Hall/CRC press, © Chapter 1, pp For educational use only.
The Cactus Portal A Case Study in Grid Portal Development Michael Paul Russell Dept of Computer Science The University of Chicago
Office of Science U.S. Department of Energy Grids and Portals at NERSC Presented by Steve Chan.
1-2.1 Grid computing infrastructure software Brief introduction to Globus © 2010 B. Wilkinson/Clayton Ferner. Spring 2010 Grid computing course. Modification.
Milos Kobliha Alejandro Cimadevilla Luis de Alba Parallel Computing Seminar GROUP 12.
W4: Grid Portals Building Web-enabled End-User Environments for accessing Grid Services By Michael Paul Russell Dept Computer Science.
The Architecture of Transaction Processing Systems
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
GridSphere for GridLab A Grid Application Server Development Framework By Michael Paul Russell Dept Computer Science University.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Globus Computing Infrustructure Software Globus Toolkit 11-2.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Grid Computing, B. Wilkinson, a.1 Grid Portals.
National Computational Science National Center for Supercomputing Applications National Computational Science MyProxy: An Online Credential Repository.
XCAT Science Portal Status & Future Work July 15, 2002 Shava Smallen Extreme! Computing Laboratory Indiana University.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Introduction to J2EE Architecture Portions by Kunal Mehta.
CoG Kit Overview Gregor von Laszewski Keith Jackson.
Flexibility and user-friendliness of grid portals: the PROGRESS approach Michal Kosiedowski
第十四章 J2EE 入门 Introduction What is J2EE ?
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
NeSC Apps Workshop July 20 th, 2002 Customizable command line tools for Grids Ian Kelley + Gabrielle Allen Max Planck Institute for Gravitational Physics.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
Through the development of advanced middleware, Grid computing has evolved to a mature technology in which scientists and researchers can leverage to gain.
GridFE: Web-accessible Grid System Front End Jared Yanovich, PSC Robert Budden, PSC.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Introduction to the Adapter Server Rob Mace June, 2008.
Fisheries Oceanography Collaboration Software Donald Denbo NOAA/PMEL-UW/JISAO Presented by Nancy Soreide NOAA/PMEL AMS 2002/IIPS 10.3.
Grid Architecture William E. Johnston Lawrence Berkeley National Lab and NASA Ames Research Center (These slides are available at grid.lbl.gov/~wej/Grids)
GCRC Meeting 2004 Introduction to the Grid and Security Philip Papadopoulos.
Commodity Grid Kits Gregor von Laszewski (ANL), Keith Jackson (LBL) Many state-of-the-art scientific applications, such as climate modeling, astrophysics,
Holding slide prior to starting show. A Portlet Interface for Computational Electromagnetics on the Grid Maria Lin and David Walker Cardiff University.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Presented by Scientific Annotation Middleware Software infrastructure to support rich scientific records and the processes that produce them Jens Schwidder.
GRID Overview Internet2 Member Meeting Spring 2003 Sandra Redman Information Technology and Systems Center and Information Technology Research Center National.
Presented by Jens Schwidder Tara D. Gibson James D. Myers Computing & Computational Sciences Directorate Oak Ridge National Laboratory Scientific Annotation.
GCRC Meeting 2004 BIRN Coordinating Center Software Development Vicky Rowley.
Leveraging the InCommon Federation to access the NSF TeraGrid Jim Basney Senior Research Scientist National Center for Supercomputing Applications University.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
1 st Generation of Grid portals. 1st Generation Portals The first generation of Grid portals mainly used a three-tier architecture:
The SEE-GRID-SCI initiative is co-funded by the European Commission under the FP7 Research Infrastructures contract no Workflow repository, user.
WebFlow High-Level Programming Environment and Visual Authoring Toolkit for HPDC (desktop access to remote resources) Tomasz Haupt Northeast Parallel Architectures.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
1 AHM, 2–4 Sept 2003 e-Science Centre GRID Authorization Framework for CCLRC Data Portal Ananta Manandhar.
Portals, Services, Interfaces Marlon Pierce Indiana University March 15, 2002.
John Kewley e-Science Centre All Hands Meeting st September, Nottingham GROWL: A Lightweight Grid Services Toolkit and Applications John Kewley.
USGS GRID Exploratory Status Review Stuart Doescher Mike Neiers USGS/EDC May
Holding slide prior to starting show. Lessons Learned from the GECEM Portal David Walker Cardiff University
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
Grid Computing AEI Numerical Relativity Group has access to high-end resources in over ten centers in Europe/USA They want: Bigger simulations, more simulations.
Introduction to J2EE Architecture
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Grid Computing Software Interface
Presentation transcript:

ASC Portal Design & Architecture A Case Study in Grid Portal Development Michael Paul Russell Dept of Computer Science The University of Chicago

Astrophysics Simulation Collaboratory Washington University Albert Einstein Institute University of Chicago University of Illinois at Urbana-Champaign Rutgers University Wai-Mo Suen Ed Seidel Ian Foster Mike Norman, John Shalf Manish Parashar Principal investigators A “Knowledge & Distributed Information” (KDI) Project Funded by the National Science Foundation A Laboratory for Large Scale Simulations of Relativistic Astrophysics Building a computational collaboratory to bring the numerical treatment of Einstein theory of general relativity to astrophysics

Project goals  Develop a useful software base for applying numerical treatment of Einstein theory to astrophysics research.  Promote collaborative development among distributed teams of scientists, researchers and developers.  To make our software and tools widely-available to the a astrophysics community.  To coordinate the use of our software and computing resources among members of the astrophysics community.

Proposed solution  An N-tier Web-based application environment for developing, distributing, and running Cactus and other useful applications on remote resources as well as tools for managing those resources.  We’ll use Grid technologies to overcome the practical obstacles of accessing resources due to the tremendous variety of resource types, mechanisms, and access policies that exist today.  While Cactus provides the modular framework we require for building high-performance, parallelized, astrophysics applications that will compile and run in most computing environments.

Key advantages to thin clients  We want to deliver most of our application services with DTHML based applications. Turns out with DHTML we can provide fairly sophisticated client-side behavior, it just takes a lot of work!  But this means users can access most of our application services with any computer that has NS4+ & IE4+ installed. No other client-side configuration is required.  Easy to introduce new application services or re-implement application services as required. Again, no need to reconfigure Internet browser or other client-side software.

Key advantages to application server  Better able to coordinate user activity. For example may group user operations into more simple task units or introduce fault tolerance for critical operations.  Can monitor user activity and implement reporting facilities, such ing a user when a task completes or producing a weekly summary of user tasks.  Can introduce collaborative tools such as online chats and means for users to share access to information and resources amongst each other.

Basic security requirements  Maintain secure HTTP communication between client applications and our Web services.  Use General Security Infrastructure (GSI) based authentication and authorization wherever possible.  Maintain an organizational MyProxy service to enable users to store & retrieve short-lived GSI proxy certificates with our Web services.

Advanced security requirements  Ability to work with multiple GSI proxy certificates per user session in order to authenticate to GSI-based services with different CAs and/or distinguished name entries.  Allow users to share access to various information and resources where possible.  Access control lists for restricting access on a per user basis to various functions or resources our offered by our services.

Basic application requirements  (GSI)FTP access to remote file systems.  (GSI)SSH access to remote computer systems.  (GSI)CVS access to shared code repositories.  (GSI)LDAP access to GIIS/GRIS and other directory services.  GRAM job submission and integrated with job monitoring tools.

Advanced application requirements  Flexible task management facilities. For example, allow user to spawn a file transfer in the background and check the status of that transfer at a later time. Ability to cancel tasks where possible, get a report to when the task is completed, schedule, etc…  Ability to create and save custom tasks. First step: Allow user to edit and save a particular GRAM request they may perform often. Later: Integrate a task composition facility such as ANT.

Resource management requirements  Manage “machine” definitions that users may utilize through our Web services and restrict views of those definitions as required.  Facilities for verifying “machine” definitions, with the ability to setup tests on various services and/or with various certificates.  Basic search capabilities (white and yellow pages) for finding appropriate resources on machines, primarily for locating the most appropriate job queues.

Software management requirements  Manage multiple Cactus distributions on remote machines.  Checkout Cactus software from multiple CVS repositories into remote distributions.  Build Cactus applications remotely and the ability to maintain configuration settings per machine to ease the build process.  Edit and easily distribute Cactus parameter files.  Run and monitor Cactus applications on remote machines.

Basic administrative requirements  Manage user accounts, edit their profiles, even to kill user sessions that may have been lost by the user.  Monitor user activity (tasks), even to kill tasks where possible.  Generate regular reports on user activity or anything useful for administrative, research, or funding purposes.

Grid-tier architecture 1. Application services 2. Local resource brokers 3. Local resources Information resources Computational resources Storage resources DHTML Applets Flash Remote clients Phat clients Application server Resource brokers Remote resources / Additional Services

Server-side architecture HTTPS front-end (Stronghold) Client code downloaded onto http client DHTML Application logic Presentation logic (JSP & Bean-based page handling) Model / data codeService invocation Middleware libraries Application servlet (Running in Tomcat) CoG, Public libraries, & Java libraries File systems Files Relational DBMS Data Direcotry Service Data I/O APIs Data APIs Security APIs Protocols

ASC Grid Soft Comp Data GIS Comp Data GIS Soft GIS The ASC Grid includes the client machines that access our Web application server, the application server and the set of services and their resources our application server makes available to users. Data GIS Proxy ASC MyProxyASC GIISCactus CVS Soft myproxy.ascportal.orggiis.ascportal.orgcvs.cactuscode.org Application server DHTML Applets

ASC Software GridSphere (org.ascportal.gridsphere) Basic application server infrastructure for building multi-user, multi-threaded application services for utilizing Grid technologies to gain access to remote resources. - Not Servlet / JSP specific, want to be flexible. - Utilizes Java CoG, introduces new extensions - Data model is a part of this infrastructure - JDBC based persistence (only, for now that is). Orbiter (org.ascportal.gridsphere.orbiter) JSP-based application service built upon GridSphere. - Delivers DHTMTL client-side applications - JSP-page infrastructure for constructing pages - Page-oriented Java Beans handle application logic

GridSphere packages org.ascportal.gridsphere [one day packaged under org.gridsphere?] - cactus : code for working with Cactus on remote resources - grid : extensions to Grid technologies - clients : incorporates machines and security packages with grid client protocols provided by Java CoG. - machines : extended machine management - security : extended credential management - tasks : encapsulates client requests as tasks - logging : generic log management - modules : code for managing application requests. - orbiter : Orbiter packages - reporting : generic report management - security : application server security - task : generic task management - user : user profile and session management

Application server goals  Develop an extensible Java application architecture that utilizes the latest in Java technologies, Grid technologies, and Internet standards for building multi-user, multi-threaded applications.  Develop Java Servlet, RMI, CORBA, etc… extensions to this architecture.  Design all functions and tasks such that they can be monitored and controlled by other users (administrators) if necessary.  Since we track the state of remote files, jobs, etc., we need to maintain consistency, thus need mechanisms for syncing up with changes that are made externally.  Fault tolerance… going beyond transaction management.

Client application goals  Lots of thin-client design and applications ideas to pursue: - Bring coding standards to the browser. Companies invest tons of resources designing user interfaces, so should we… we are building end-user applications. - Bring the command line to the browser: Interactive shell access to remote computers (GSI-SSH based), as Java applet or even in DHTML. In my opinion, no operating environment is complete without both command-line interfaces and GUIs.  Offline-client idea: Be able to setup tasks on offline with a client application and then sync up once back online, as with popular programs like Eudora and Outlook. Another

General design concepts  Want to build compelling and comprehensive environments so that users will want to conduct their daily activities with these environments.  May be unnatural to classify portals as user, application, or administrative only. Instead be aware we’re developing infrastructures in which communities will communicate and conduct research (business). There is a lot of management that will be necessary to maintain these services.  Don’t forget to account for these things in your design: - Grid services may not be available or properly configured on remote resources. - Someone needs to maintain all those services you’ve setup! - Should be able to administer all aspects of your application services at runtime if you care about high-availability