Sunteți pe pagina 1din 10

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.

Version 1.0 24 May, 2006

Software Design Specification (SDS) for HEP Computational Grid Meta Scheduler and Registry Services by Ronald J. Desmarais 24 May, 2006

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

Revision History Name Date Reason For Changes Ronald Desmarais 24/05/06 Started Document based off SRS1.2 Version 1.0

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

Table of Contents
Introduction............................................................................................................................4 Purpose..............................................................................................................................4 Scope.................................................................................................................................4 Definitions, Acronyms and Abbreviations........................................................................4 Overview...........................................................................................................................5 Overall Description................................................................................................................5 ...............................................................................................................................................5 Product Features................................................................................................................6 User Characteristics................................................................................................................6 Registry..............................................................................................................................6 Software Components...................................................................................................6 Hardware Components..................................................................................................6 Specific Requirements............................................................................................................6 Functional Requirements...................................................................................................6 View Registered Services............................................................................................9 View GRAM Services.............................................................................................9 View RFT Services..................................................................................................9 View All Services....................................................................................................9 Register a Service.........................................................................................................9 Register GRAM Service..........................................................................................9 Register RFT Service ..............................................................................................9 Register Meta Scheduler Service.............................................................................9 Register a Registry Service .....................................................................................9 Unregister a Service ................................................................................................9 Change a Service Property.......................................................................................9 Unregister a Registry Service .................................................................................9 Transactions...............................................................................................................10 Design Constraints...........................................................................................................10 Constraint 1.................................................................................................................10 On Line User System Documentation and Help..............................................................10 Interfaces.........................................................................................................................10 Registry Service Interfaces.........................................................................................10 Command Line interface to use the Registry Service............................................10 Web Browser interface to use Registry Service.....................................................10 Web Services Interface to use Registry Service ...................................................10 . References..........................................................................................................................10

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

1. Introduction 1.1Purpose This document defines a Globus 4 and Condor implementation of the Software Requirements Specification document (version 1.2). This document refers directly to Globus and Condor components used to address the requirements (defines in SRS) needed for Registry and Meta Scheduling services. 1.2Scope This document focus's on the Globus and Condor implementation details for the computational grids Meta Scheduling and Registry Services. This document will define what resources can register/unregister with the Registry and how they can be use the Meta Scheduler. 1.3Definitions, Acronyms and Abbreviations Acronyms CGRS Computational Grid Registry Service: Refers to the Service being developed. GRAM Grid Resource Allocation Management RFT Reliable File Transfer MEJS Managed Executable Job Service MMJS Managed Multi Job Service WSRF Web Services Resource Framework Definitions
Registry Services:

Generally, a registry service is a program which allows resources to add themselves to the service as available or unavailable. Meta Scheduler: A scheduler service used to determine where and how jobs may run. GRAM: Used to submit jobs to, this process will use the available schedulers to schedule the job for execution. RFT: Uses GridFTP to stage files before and after executing a job, and allows monitoring of jobs. GridFTP: Used for staging of jobs to execute and monitoring job execution. RFT uses this service. Condor: A job scheduling Service. CSF: A job scheduling Service. PBS: A Scheduling Service MDS: A registry Service RGMA: A registry Service WebMDS: A web servicer to view services that are registered. SUDO: Is a method so commands can be run in a Users Account
University of Victoria HEPgrid 4

Confidential

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

GridMap file:

Maps a Local Users Account with a Grid ID. This will enable a user to execute a job on the local system. MEJS: 1.4Overview The remainder of this document is organized as follows: Overall hardware and software architectural view, Hardware and Software component descriptions followed by Data Design. 2. Overall Description 2.1Architectural View 2.1.1Hardware Architecture The Meta Scheduler machine will have to interface with the Registry machine so the Registry can keep the Meta Scheduler up to date with the current state of Grid Resources and Services. Figure 1 presents the overall system in that the Meta Scheduler and Registry may serve.

Figure 1 System Layout of Registry and Meta Scheduler

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

2.1.2Software Architecture /**************************************INCOMPLETE UPTO HERE********************************/ 2.2Product Features The Registry will need to have a web services capability. The Registry will allow cluster head nodes to register the state of their worker nodes along with the number of jobs executing and number of jobs waiting execution. The Meta Scheduler takes in job requests from clients (client could be a user or another Meta Scheduler). The meta scheduler must use data provided by the registry to determine which head node to the send the job to. The scheduler will require some sort of job allocation algorithm to determine the best place to submit a job. The Head Nodes publish their state and job information to the registry. They as well have a local scheduler used to determine which worker nodes to use when running jobs. The Worker Nodes actually execute jobs. The worker node need a way to send job results back to the user that submitted the job. 2.3User Characteristics The users of the meta scheduler will be people interested in submitting jobs to our clusters or another meta scheduler which has decided to use our grid. The users of the registry will be other services (such as the Meta Scheduler) and maintainer users who may need to view the contents of the registry when problems arise. 2.4Registry 2.4.1 Software Components The registry service will require several software packages/programs to be installed. The registry service will require a middle ware to handle communications. The registry will need a way to keep a list of registered services and a way for the clusters to publish their information to the registry.. The Meta Scheduler service will need to send requests to the Registry. 2.4.2 Hardware Components As indicated in Figure 1, a minimum of two machines are required to implement the grid servers (registry, meta scheduler). 3. Specific Requirements 3.1 Functional Requirements The are ten primary functional requirements that the Registry must provide. See Figure 2 Use Case Diagram and Figure 3 for Registry Interfaces along with their description below.
Confidential University of Victoria HEPgrid 6

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

Figure 2 Use Case Diagram of Primary Use Cases

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

Figure 3 Registry Service Interfaces

Confidential

University of Victoria HEPgrid

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

3.1.1 View Registered Services 3.1.1.1 View GRAM Services This requirement will return a list of GRAM services running on the Registry. 3.1.1.2 View RFT Services This requirement will return a list of RFT services running on the Registry. 3.1.1.3 View All Services This Requirement will enable the requester to view all of the services currently Registered by the Registry. 3.1.2Register a Service 3.1.2.1 Register GRAM Service This requirement will allow a gram service to be registered as available to the registry. 3.1.2.2 Register RFT Service This requirement will allow a RFT service to be registered as available to the registry. 3.1.2.3 Register Meta Scheduler Service This requirement will allow a Meta Scheduler to register itself as a consumer to the registry (possibly used for load balancing). 3.1.2.4 Register a Registry Service This requirement allows other Grid Registries to register themselves with the Main Registry. This should allow the system to be scalable, robust, and allow for load balancing. 3.1.2.5 Unregister a Service This requirement allows a Registered Service to unregister itself or allow some other service to unregister a registered service. 3.1.2.6 Change a Service Property This requirement allows a Registered Service to have its properties changed. 3.1.2.7 Unregister a Registry Service This requirement will allow a Registry to unregistered itself with the Main Registry. This could as well be used by any of the Registries to unregister any other Registry. 3.2 Usability The Registry Service will primarily be used by other Grid Services with the exception of Testing. 3.3 Reliability The Registry is a key service and should have active or redundant back ups. 3.4 Availability The Registry should be able to operate 24/7 365 days of the year.
Confidential University of Victoria HEPgrid 9

HEP Computational Grid Meta Scheduler and Registry Service Software Design Specification (SDS) HEP CGMSRS SDS1.0

Version 1.0 24 May, 2006

3.4 Performance 3.4.1 Transactions The Registry should be able to handle 2000 requests per minute (30 per second). <more here for transaction sequence diagrams save for design document> 3.6 Design Constraints 3.6.1 Constraint 1 Design must use Globus and be Globus 2 compatible. Service must be able to run on a linux machine. 3.7 On Line User System Documentation and Help A TWIKI has been setup to provide a document base and tutorials on using the system. This is currently maintained by Ian Gable and can be viewed at http://wiki.gridx1.ca . 3.9Interfaces 3.9.1 Registry Service Interfaces There are several ways for a user/service to interface with the Registry System. First is with command line program (any shell program) to send Globus commands to the Registry Box (globus_job_run). Second is with a Web browser (user interaction with Web Page). Third is by using web services communication protocol (HTTP via command line i.e. globus_ws ...). Refer to Figure 3 for Interface diagram. 3.9.1.1 Command Line interface to use the Registry Service The command line interface to access the Registry Service will have to be able to provide the functionality to satisfy the requirements listed in section 3.1. Having Globus installed on the Registry Service computer will satisfy the interface, but the scripts to execute will have to be created. 3.9.1.2 Web Browser interface to use Registry Service This interface if for a user interested in viewing state and table information stored by the registry. 3.9.1.3 Web Services Interface to use Registry Service Use of the WSRF to communicate with the registry service. Globus does provide web services communication between servers. This could be used to communicate to the Registry.

5. References

Confidential

University of Victoria HEPgrid

10

S-ar putea să vă placă și