Grid Toolkits Globus, Condor, BOINC, Xgrid Young Suk Moon
Grid Requirements Resource sharing / coordination Resource discovery / management Job managements Security Delegation Monitoring Communication Interoperability
Comparison to OS Grid RequirementsGridOS Resource sharing/coordination GIIS, GRRPMain memory (heap area) Resource discovery/management GRAMFile systems Job managementQueuing SystemsIR (Instruction Register), process scheduling SecurityGSIPermissions MonitoringGMAStandard output Communicationvia network systemsBuses on computer board
Needs for Grid Application Developments Standardized mechanisms APIs / SDKs for Grid protocols
Grid Toolkits Category Globus ToolkitGrid Computing CondorCluster Computing Condor-GGrid Computing BOINCPublic-Resource Computing XgridCluster Computing
Globus Toolkit Open-source project Software toolkit for Grid applications Being developed by the Globus Alliance
Globus Toolkit Requirements Resource location & allocation Communications Unified resource information service Authentication interface Process creation Data access Reference: from the slide “Globus: A Metacomputing Infrastructure Toolkit.” p.12.
Grid Architecture & Globus: Fabric Layer Access to the resources Computational resources Storage resources Network resources Globus uses existing fabric components If they do not exist, GT provides the missing components. Grid Protocol Architecture Collective Resource Connectivity Fabric Application
Grid Architecture & Globus: Connectivity Layer Defines communication & authentication protocols Transport, routing, naming Verify users & resources Globus Toolkit : Grid Security Infrastructure (GSI) Public-key based X.509 Grid Protocol Architecture Collective Resource Connectivity Fabric Application
Grid Architecture & Globus: Connectivity Layer - 2 Grid Security Requirements – Single sign on – Delegation – Integration with various local security solutions – User-based trust relationships
Grid Architecture & Globus: Resource Layer Resource managements Information protocols Management protocols (process creation, data access) Globus Toolkit Grid Resource Information Protocol (GRIP) Grid Resource Access and Management (GRAM) GridFTP Lightweight Directory Access Protocol (LDAP) Grid Protocol Architecture Collective Resource Connectivity Fabric Application
Grid Architecture & Globus: Collective Layer Access to “global” resources Resource discovery Task scheduling Monitoring Authorization Globus Toolkit: Meta Directory Service Grid Information Index Services (GIISs) Grid Resource Registration Protocol (GRRP) Grid Protocol Architecture Collective Resource Connectivity Fabric Application
Condor Cluster computing toolkit Developed at University of Wisconsin Runs on various Operating Systems Provides – Job queuing – Scheduling policy (job allocation, migrations, etc.) – Resource monitoring – Resource management
Condor Architecture A central manager – Detects idle machines – Matches job requirements to available resources Submit machines – Only submit jobs Full Install machines – Submit & run jobs Cluster Central Manager Submit Full Install Submit Full Install
Condor - Flocking Cluster ACluster B Submit Job Run Job No available resources in cluster A Send the job to cluster B Run the job in cluster B
Condor-G Grid computing Using the Globus Toolkit Can access a Globus Grid
Xgrid A Mac OS X application Security Extendability – A plug-in architecture Ease of use ugly-and-new-stuff
How Xgrid is used Ad hoc participation – Programs are run at idle computers Dedicated Grid – Computers are dedicated for programs
Xgrid Architecture Agent – Runs a job (dedicated mode, screensaver mode) Controller – Queues tasks, scheduling, handles failover Client – Submits jobs to the controller
Xgrid Architecture Plug-ins – For specific functionalities Networking – BEEP (The Blocks Extensible Exchange Protocol) Security – Xgrid requires a password – MD5 hash
BOINC Stands for Berkeley Open Infrastructure for Network Computing Public-resource computing – Also known as peer-to-peer computing Different from Grid computing – Grid: resources are owned by organizations (universities, research labs, etc.) – Public-resource: resources are owned by individuals
BOINC - participants Give “credits” to participants – Need participants to make a more capable system Meter contributions (computation, storage, network transfer, etc.) Participants are interested in their rankings
BOINC - Examples Climateprediction.net CERN project UCB/Intel study of Internet resources
BOINC - Features Components – A master URL, scheduling servers, data servers – Tools (Python scripts, C++ interfaces) Redundant computing – Detects errors and compute again Failure / backoff – Congestion control Local scheduling
References Globus Website: Presentation Slides, The Globus Project TM, “The Grid and Globus.” Argonne National Laboratory, JSC Information Sciences Institute. users.sdsc.edu/~ludaesch/ECS289F-W05/ECS289F-W05-16-globus.pdf Presentation Slides, Harhad, F, “Globus: A Metacomputing Infrastructure Toolkit.” International Journal of Supercomputer Applications, 11(2): , Foster, I., Kesselman, C. and Tuecke, S. “The Anatomy of the Grid: Enabling Scalable Virtual Organizations.” International Journal of High Performance Computing Applications, 15 (3) Habib, I. “Getting started with condor.” Linux J., 2006(149), 2. Website: Condor Website: Anderson, D.P. “BONIC: a system for public-resource computing and storage.” Grid Computing, Proceedings. Fifth IEEE/ACM International Workshop on, “Xgrid Guide” Apple Computer, Inc. 1 Infinite Loop, Cupertino, CA March