Model Cover Page for Deliverables

Doc. Identifier:
Note
DataGrid-xx-NOT-nnnn
Date: 28/07/2017
Subject: WP1-WP4 INTERACTIONS
Author: Massimo Sgaravatto ([email protected])
Partner: INFN Padova
Diffusion: Internal
Information:
1. OVERVIEW
WP 1 is implementing a resource broker, responsible to choose the resources where to submit the jobs
submitted by users.
We propose to consider as resource for the PM 9 release (since it has been agreed that for the the PM
9 release we will rely upon the Globus toolkit):
 a queue of an underlying local resource management system (e.g. a LSF queue, a PBS queue,
…). We assume that a queue represents a set of “homogeneous” resources, that is when a job
is submitted to a specific queue, it doesn’t matter in which node of this queue the job is
dispatched (since all the nodes of this queue has direct access to the same storage elements,
the required run time environments are installed on all nodes of the queue, etc…)
 a “single” node, that is a host that doesn’t rely upon a local resource management systems, and
therefore uses the fork system call as job manager
We assume that one or more storage elements are “attached” to the resource, that is these storage
elements can be directly accessed using a local protocol (e.g. NFS, AFS, etc…). We also assume that
these storage elements have the same authorization policies (i.e. the same grid-mapfile in the Globus
based model) of their corresponding resources.
For the PM 9 release the resource broker will dispatch a job on a resource “attached” to a storage
element where the required input data are stored. The output data produced by the job will be
“written” to a storage element “attached” to the executing resource (in case the output data set will
then be moved to an other storage element, using the services provided by WP 2).
We also assume that a local disk area is associated to each resource (possibly to each node served to
the same queue): this local disk is used by the job during its execution, and the disk space is released
once the job has been completed. The size of the minimum local disk space available within a resource
will be advertised along with the other resource characteristics (see below).
For this broker functionality, information on these resources is needed. We assume that all this
information will be published in one Grid Information Service, and we assume that the new release of
the Globus Grid Information Service, also known as MDS-2, will be used.
In section 3 a proposal for a schema for the Information Service (that is a set of attributes on
characteristics and status on resources, needed by the resource broker) is proposed. Specific
information providers (entities able to provide the Information Service with this information) must
therefore be implemented.
IST-2000-25182
INTERNAL
1/5
Doc. Identifier:
Note
DataGrid-xx-NOT-nnnn
Date: 28/07/2017
2. MDS-2
WP 1 is planning to use the Globus MDS-2 as backbone of the PM 9 information infrastructure, since
we think that we can’t rely on the current implementation of the Globus GIS (MDS), not even for a
prototype system.
Besides improvements in the performance, MDS-2 should include the possibility to extend the schema
in a user-defined way, and include associated plugin information producers.
WP 1 is going to evaluate Globus MDS-2, and in particular is going to:

Propose a schema, for what concerning the information about characteristics and status of
resources), since WP 1 is the major consumer of this information (see a first proposal in
section 3)

Implement the Index plugin module for MDS-2, which will be used as first filter in the
resource discovery process (to find a first set of suitable resources where to dispatch the
submitted job)
WP 1 is expecting that WP 4 will implement the required information producers, according to an
agreed schema (see section 3 for a proposal), considering the set of supported local resource
management systems (see section 4).
3. PROPOSAL FOR A SCHEMA
Having defined in section 1 what do we mean as resource, here is the information on resources that we
think should be published in the Grid Information Service:


ResourceId
A univocal identifier for the resource
GlobusResourceContactString
The Globus Resource Manager contact string (e.g. lxde01.pd.infn.it:2119/jobmanager-lsf),
which identifies in the Globus environment the resource

QueueName
The name of the queue (applicable for those LRMS’s that use queues)

ResourceManagementType
Defines the type of resource management system (e.g. LSF, PBS, Condor, …)

ResourceManagementVersion
The version of local resource management system

GRAMVersion
IST-2000-25182
INTERNAL
2/5
Doc. Identifier:
Note
DataGrid-xx-NOT-nnnn
Date: 28/07/2017
The GRAM version

Architecture
The architecture of this resource (it the resource is a queue, the architecture of the machines
associated to this queue)

OpSys
The operating system of this resource (if the resource is a queue, the operating system of the
machines associated to this queue)

PhysicalMemory
Minimum available physical memory for this resource (e.g. if the resource is a queue, the
minimum physical memory for the machines associated to this queue)

LocalDisk
Local disk footprint associated to the resource, available for a job submitted to this resource

TotalCPUs
Number of total CPUs associated to this resource

FreeCPUs
Number of free processors associated to this resource (that is processors able to run, in that
moment, jobs submitted to this resource)

NumSMPs
Number of SMP processors associated to this resource

TotalJobs
Total number of jobs submitted to this resource (running and idle jobs)

RunningJobs
Number of running jobs submitted to this resource

IdleJobs
Number of idle jobs submitted to this resource

MaxTotalJobs
The maximum number of jobs (running and idle) allowed for this resource

MaxRunningJobs
The maximum number of running jobs allowed for this resource

ExpectedStartTime
An estimation of the start time for a job submitted to this resource in that moment

Status
The status of the resource (for example, for a queue, if it is active, that is if it ready to dispatch
jobs to the executing machines)

RunWindows
The time windows that define when the queue is active

Priority
The priority associated to this resource

MaximumCPUtime
IST-2000-25182
INTERNAL
3/5
Doc. Identifier:
Note
DataGrid-xx-NOT-nnnn
Date: 28/07/2017
The maximum CPU time allowed for jobs submitted to this resource

MaximumWallClockTime
The maximum wall clock time allowed for jobs submitted to this resource

ComputingPower
The computing power of this resource.
Which format ??

AuthorizationPolicies
For the PM 9 release we propose to consider the Globus grid-mapfile as authorization policy

RunTimeEnvironments
The application/run time environments installed on this resource (e.g. Objectivity version X,
LHC++ version Y, CMS environment version Z, …)

StorageElements
The identifiers of the storage elements “attached” to this resource
For what concerning the storage elements, we think that the following information should be
published:

StorageElementId

An identifier for this storage element

URIPrefix
The URI prefix that identifies all the physical files stored on this storage element.
In fact the resource broker will find in which storage element(s) the required input data for a
job are stored, querying the ReplicaCatalog (provided by WP 2): given a logical file name, the
ReplicaCatalog provides the corresponding physical file name(s), expressed using URIs, with
the prefix of these URIs identifying the storage elements where these files are stored

AvailableSpace
The available space available on this storage element to store the output data produced by jobs
4. LRMS
Who recommends what Local Resource Management System (LRMS) to use ?
Who supports their integration with Globus ?
Saying that a LRMS is integrated with Globus, we mean that:
1. This LRMS can be configured as Globus resource, that is it is possible to submit Globus jobs
to this LRMS
2. The LRMS (via the so-called GRAM reporter) provides the MDS (aka GIS, Grid Information
Service), with information on characteristics and status of the resources managed by the
LRMS
IST-2000-25182
INTERNAL
4/5
Doc. Identifier:
Note
DataGrid-xx-NOT-nnnn
Date: 28/07/2017
Concerning the first bullet, Globus already supports different LRMS, which include for example LSF,
Condor and PBS, and which not include for example BQS (used in Lyon).
We (WP 1) have already tested the submission to Globus resources to:

Hosts that don’t rely upon a LRMS (that is, using just the fork system call as job manager)

LSF farms

Condor pools

PBS farms
We also tested the job submission via Condor-G (a job submission service built on top of the Globus
GRAM service, that WP 1 is planning to use in its first prototype) to these LRMS’s (actually for PBS
only preliminary tests have been performed, but we don’t expect major problems).
WP 1 is not planning at the moment to “implement” the integration of other LRMS’s with Globus.
For the PM 9 release, WP 1 plan to rely on the current implementation of the Globus GRAM service.
The Condor team is augmenting the GRAM service, in order to support a two phase commit
submission protocol and a persistent job manager. WP 1 will test this new release (that should be back
compatible): if it suitable for our needs and it works without problems, WP 1 will suggest to WP 6 to
deploy this new GRAM release.
Concerning the second bullet, the current implementation of the GRAM reporter is made up of shell
scripts that are used to publish some information about characteristics and status of local resources,
according to a well-defined schema.
We have already evaluated the current (Globus 1.1.3) implementation of the GRAM reporter
(considering as Globus resources machines managed by the fork system call, LSF farms and Condor
pools), and we think that the default schema is not fine for our needs, but, as reported in section 2, we
plan to rely upon MDS-2, which should feature plug-in additional schemas and associated information
producers.
Since we assume that it is up to WP 4 to implement these information providers, we think that WP 4
will have to propose (to WP 6 ?) the set of LRMS’s that should be supported.
Note

What happens if a job “disappears” ” without any exit job status (for example because of a crash
of the executing machine) ? Can we assume that we are relying upon a LRMS able to manage
these events? For example Condor provides this functionality: if a job “disappears” without any
exit status, it is resubmitted. LSF provides this functionality as well (called “Automatic Job
Rerun”). What about PBS and the other local resource management systems that we have to
support? Otherwise, if the underlying LRMS is not able to resubmit the job, Globus assumes that
the job has been completed (it is not able to understand about the problem). Neither Condor-G is
able to manage these kinds of problems.
IST-2000-25182
INTERNAL
5/5