Title: Thesis Defense
1Thesis Defense
- Application Service Provision using Computational
Grids - (The Grid ASP)
-
- Satheesh Kolathur
2Contents
- Background
- Motivation
- Introduction to ASPs
- ASP Advantages, Requirements and Infrastructure
- ASP Examples
- Portal Models
- ASPs and GRIDs
- The Grid ASP Middleware Design
- Grid ASP Implementation
3Background
4Background
- Computational Grids
- A computational grid is a network of computing
resources that work together as a single, uniform
operating environment. - Involves utilization of widely distributed
computing resources, storage facilities and
networks owned by different organisations but
used by individuals who are not necessarily a
member of that organisation - Use of Computational Grids
- Climate prediction and weather forcasting
- Oil Exploration Research
5Grid Middleware
- Globus Toolkit
- Provides software tools that make it easier to
build computational grids and grid-based
applications. - Includes software for security, information
infrastructure, resource management, data
management, communication, fault detection, and
portability - Core services, interfaces and protocols that
allow users to access remote resources as if they
were located within their own machine room while
simultaneously preserving local control over who
can use resources and when
6GridFTP RFT RLS
GRAM
MDS
The Globus Toolkit
7UH Grid Research
- The EZ-Grid Project
- High level environment for job submission and
resource usage control - Uses Globus tools for middleware
- Previous Architecture Client Server
- EZ-Grid Client
- Login to the grid, GUI
- EZ-Grid Server
- Information Server Application and Resource
Information - Job Submission and Monitoring
- Registration Server
- New Architecture Web based portal
8- Software outsourcing and its advantages
- Cutting overhead costs
- Increased Quality of Service
9Motivation
10Motivation
- Current grid users require some kind of software
setup on their systems - Heavy Client
- Better user experience Users should be able to
just view the applications available and use
these applications by giving input data or files
wherever needed - Existing portal systems like www.work-center.de,
Sun Technical Compute Portal, PUNCH.
11Introduction to ASPs
12Introduction to ASPs
- Application Service Provisioning is the action of
provisioning an application for a service
customer - An ASP rents or leases application software
primarily to small and midsized businesses. A
customer's applications and data are hosted
off-site on servers in the ASP's centrally
managed data center(s), where they can be
secured, supported, maintained, and upgraded. - ASPs are large, ultra-reliable, high-capacity and
high-speed servers that store not just data but
applications that manipulate data. - Provide software applications or software-related
services over the Internet
13Introduction to ASPs
- IAH (Internet Application Hosting) the umbrella
term for when companies rent the use of business
applications over the web - ASP owns, operates and maintains software
applications on their own servers - Makes applications available either in a browser
or thin client. - Pay per use - Monthly/ Annual fee basis
- ASPs are more suitable for businesses that use
critical software occasionally
14ASP Advantages, Requirements and Infrastructure
15ASP Advantages
- Advantages
- Low cost of entry for the users and businesses
- Can shift Internet bandwidth to ASP
- Centralized upgrades.
- Reduce technical staffing.
- Network administration is done centrally by the
ASP, further reducing administrative overhead - Running mission-critical applications with no
more infrastructure than a standard web browser
16ASP Requirements
- (What an ASP is required to provide)
- Ease of access
- Data Security
- ASP has to handle redundancy
- Handle software/ hardware problems
- Data back-ups
- Software upgrades/ maintenance
- Reliability
- Availability
17Infrastructure for ASPs
- Hardware resources like computer power in the
form of processors, storage in the form of disk
storage that could range from hundreds of
Gigabytes to Terabytes of storage - Communication infrastructure in the form of
networks, adapters, switches and routers and
other computing related resources. - Software resources
- Resource brokering systems
- Security infrastructure
- Distributed computing software
- Data management software
- Schedulers for load balancing of the jobs/
processes - Compilers for different programming languages in
order to support the different applications - Related software to ensure failsafe running of
the distributed system.
18ASP Examples
19Some ASP Examples
- ASP Applications
- A web hosting company
- Email provider
- Fax Provider
- ASPs
- Corio, Esoft Global, Siennax are some players in
the ASP market - Microsoft LiveMeeting
- OpenOffice.org
20(No Transcript)
21(No Transcript)
22Portal Models
23Standard Portal Model
Users Desktop machine
MyProxy certificate server
Portal Server
file Services
Authentication Service
Job mgmt Service
Info Services
security Services
COG/GPDK
The Grid - remote compute, data
and application resources
From Dennis Gannons Web Site
24Example Portal Architecture
http//dast.nlanr.net/Projects/GridPortal/
25ASPs and Grids
26How to integrate Grids in the ASP model
THE GRID INFRASTRUCTURE
User
Web Browser
ASP Middleware
User
User
27The Grid-ASP Design
28Grid ASP Design
29The Grid ASP Middleware Design
ASP Middleware
Java Server Pages Servlets
Web Browser
Authentication
Application Profile Servlet
EZ-Grid Interface
Process Job Submission Request
Select Application
File Transfer
Generate Job Submission HTML
Grid Resource
Job Submitter
Job Monitor
30Grid ASP Implementation
31The Core Servlets
- Authentication - User authentication for the ASP
system - ApplicationProfile - connects to the grid
resources and gets a list of applications on each
resource with their details - ProcessJobSubmission - Present to the user the
appropriate Job Submission page - JobSubmitter - Builds the RSL and submits it to
the appropriate resource - JobMonitor - Queries the remote resource to
check status of the job - FileTransfer - Handles file transfer from the
client machine to the grid resource uses Grid
FTP
32ASP Servlets explained
- Authentication
- username-password combination - stored in XML
format - Uses Authenticator and XMLAuthParser classes
- If there is a login match, then control is passed
to the ApplicationProfile servlet - ApplicationProfile
- Connect to the grid resources and get the list of
grid resources (The resource list is returned as
an XML file ) - Contact each of the resources in the grid and get
the application profiles from each of the
resources - An application profile -contains details about
the application name, the grid resource on which
it resides, its absolute path, memory and
processor requirements, input parameters, input
and output file requirements, a description and
other specific details.
33Sample Application Profile
lt?xml version"1.0" encoding"UTF-8"?gt ltEZ-Gridgt lt
lappergt ltApp1gt ltNamegtTest App1lt/Namegt ltVersiongt1.0
lt/Versiongt ltAuthorgtSatheeshlt/Authorgt ltAbsolute_Pat
hgt/home/satheesh/programs/test1lt/Absolute_Pathgt ltN
o_of_Procsgt1lt/No_of_Procsgt ltMemory_in_MBgt32lt/Memor
y_in_MBgt ltArchitecturesgti386lt/Architecturesgt ltArgu
mentsgtnonelt/Argumentsgt ltJob_Typegtbatchlt/Job_Typegt
ltInput_Filesgtinput1.datlt/Input_Filesgt ltOutput_File
sgt/home/satheesh/programs/out1.datlt/Output_Filesgt
lt/App1gt lt/lappergt lt/EZ-Gridgt
34(No Transcript)
35ASP Servlets explained
- ProcessJobSubmission
- The function of this servlet is to present the
user with the appropriate job submission page. - Present a customized page for the application
selected by the user - the ApplicationProfile.xml
and the ResourceInformation.xml are parsed
through and the appropriate information is
extracted using XMLAppParser class. - Input file and Input parameter specification
- JobSubmitter
- Builds the RSL for job submission to the
appropriate resource - The CoG kit is used for this purpose -
GramRslSubmit class handles this. - GramRslSubmit instantiates the GramJob -
represents a simple Globus GRAM job. It allows
for submitting a job to a gatekeeper, canceling
it, sending a signal command and registering and
unregistering from callback. - Uses the appropriate credentials from the server
in order to request a job run
36(No Transcript)
37ASP Servlets explained
- JobMonitor
- For every job request made on the server - a Job
ID is assigned. JobMonitor servlet queries the
remote resource to check if the job has been run
to completion. The GRAM responds with the status - STATUS_ACTIVE currently job under execution
- STATUS_DONE The job execution is done
- STATUS_FAILED The job execution failed.
- STATUS_PENDING The job is still in queue and is
pending execution. - FileTransfer
- Using GridFTP
- 2 step transfer
38Future Work
- Accounting Information
- User classification
- Data Storage capabilities
- Job History Information
- Fault tolerance
- Network Weather Service
39