1 Globus Toolkit 2 Peter Kacsuk Sipos Gergely
1 Globus Toolkit 2 Peter Kacsuk – Sipos Gergely MTA SZTAKI {kacsuk, sipos}@sztaki. hu
2 Progress in Grid Systems Cluster computing Supercomputing Client/server High-throughput High-performance computing Condor Network Computing Web Services 2 nd Globus Gen. OGSA/OGSI OGSA/WSRF Grid Systems
3 The Globus-2 model Resource description GIIS (MDS-2) Publish MDS-2 API Resource requestor (configuration description) GRAM API Resource provider Client program moves to resource(s) Security is a serious problem!
4 Solutions by Globus (GT-2) • • Dynamic creation of Virtual Organizations (VOs) Clients can directly choose resources Standard protocols are used to connect Globus sites Security issues are basically solved – Firewalls are allowed between Grid sites – PKI: CAs and X. 509 certificates – SSL for authentication and message protection • The client does not need account on every Globus site: – Proxies and delegation for secure single Sign-on • Still: – provides metacomputing facilities (MPICH-G 2) – Not service-oriented either
5 Globus Layered Architecture Applications Application Toolkits DUROC MPICHG 2 globusrun Condor-G Nimrod/G GAT Basic Grid Services – Globus Toolkit 2 GRAM GSI MDS-2 Condor MPI LSF PBS GSI-FTP Grid Fabric NQE Linux Replica Mngt GASS TCP NT Solaris UDP Diff. Serv
6 The Role of Grid Middleware and Tools Collaboration Tools Remote access Information services Remote monitor Credit to Ian Foster Data Mgmt Tools Resource mgmt . . . Data mgmt Distributed simulation . . . net
7 Globus Approach • Focus on architecture issues – Provide implementations of grid protocols and APIs as basic infrastructure – Use to construct high-level, domain-specific solutions Applications Diverse global services Core Globus services • Design principles – Keep participation cost low – Enable local control – Support for adaptation Local OS
8 Globus Approach: Hourglass High-level services TCP, FTP, HTTP, etc. Internet protocol Ethernet, ATM, FDDI, etc. Low-level tools Resource brokers, Resource coallocators GRAM protocol Condor, LSF, NQE, Load. Leveler, etc.
9 GRAM Components MDS client API calls to locate resources Client MDS: Grid Index Info Server Site boundary MDS client API calls to get resource info GRAM client API calls to MDS: request resource allocation and process creation. GRAM client API state change callbacks Globus Security Grid Resource Info Server Query current status of resource Local Resource Manager Infrastructure Request Create Gatekeeper Job Manager Parse RSL Library Monitor & control Allocate & create processes Process
10 Resource Specification Language • Much of the power of GRAM is in the RSL • Common language for specifying job requests • A conjunction of (attribute=value) pairs • GRAM understands a well defined set of attributes
11 “Standard” MDS Architecture (v 1. 1. 3) • Resources run a standard information service (GRIS) which speaks LDAP and provides information about the resource (no searching). • GIIS provides a “caching” service much like a web search engine. Resources register with GIIS and GIIS pulls information from them when requested by a client and the cache as expired. • GIIS provides the collective-level indexing/searching function. Resource A Client 1 Clients 1 and 2 request info directly from resources. GRIS Resource B GRIS Client 2 Client 3 uses GIIS for searching collective information. GIIS requests information from GRIS services as needed. GIIS Cache contains info from A and B
12 GASS Architecture for file staging Submit machine Execution machine main( ) { fd = globus_gass_open(…) … read(fd, …) … globus_gass_close(fd) } &(executable=https: //…) (b) RSL extensions GRAM (a) GASS file access API GASS Server HTTP Server FTP Server Cache (d) Low-level APIs for customizing cache & GASS server (c) Remote cache management % globus-gass-cache
13 GRAM & GASS: Putting It Together 1. 2. 3. 4. 5. Derive Contact String Build RSL string Startup GASS server Submit to request Submit machine Return output 5 GASS server stdout Host name Command Line Args 3 1 Contact string 2 RSL string globus-job-run Execution machine program 5 4 jobmanager 4 4 gatekeeper
14 Globus Components In Action Local Machine mpirun RSL string Machines RSL multi-request globusrun GRAM Client RSL parser GRAM GASS Server GRAM Job Manager GASS Client PBS GSI App AIX Client GSI GRAM Job Manager GRAM Gatekeeper GSI GASS Client Unix Fork App Nexus MPI X 509 User Cert grid-proxy-init RSL single request DUROC GSI GRAM Gatekeeper Remote Machine User Proxy Cert Remote Machine Solaris Nexus MPI
15 What is Condor-G? • Condor-G is a Personal-Condor enhanced with Globus services • It knows how to speak to Globus resources via GRAM • It can be used to submit jobs to remote Globus resources • It makes Condor keep track of their progress
16 Condor-G: Condor for the Grid • Condor is a high-throughput scheduler • Condor-G uses Globus Toolkit libraries for: – Security (GSI) – Managing remote jobs on Grid (GRAM) – File staging & remote I/O (GASS) • Grid job management interface & scheduling – Robust replacement for Globus Toolkit programs • To implement a reliable, crash-proof, checkpointable job submission service – Supports single or high-throughput apps on Grid • Personal job manager which can exploit Grid resources
17 The Use of Condor-G Globus resource Condor Master Condor Schedd Condor Grid. Manager Globus resource condor_submit condor_q condor_rm Globus resource
18 Condor-G as user job submission service Condor-G condor_submit condor_q condor_rm Globus GRAM CONDOR LSF PBS fork
19 Globus-based production Grids • LHC Grid (LCG-2) – – A homogeneous Grid developed by CERN Restrictive policies (global policies over rule local policies) A dedicated Grid to the Large Hydron Collider experiments Works 24 hours/day and used in EGEE • UK-NGS – – A homogeneous Grid deployed in the UK Restrictive policies Non-dedicated Works 24 hours/day
- Slides: 19