Job classes specify limits for resource consumption by grid jobs.
A job class establishes a policy for resource consumption by a set of grid
jobs. Through this policy, execution time, number of concurrent jobs, job
log and job output queue storage may be controlled. The limits enforced by
the job classes feature are listed in this article.
Job classes can be configured using the administrative console and stored
in an .xml file called jobclass.xml under the <install_root>/ profiles/Dmgr/config/cells/<cellname>/gridjobclasses/ directory.
Each job is assigned to a job class.
A job class establishes policy for:
- Execution time - Maximum time a job can run before being automatically
cancelled by the system.
- Concurrent jobs - Maximum number of concurrently dispatched jobs of a
given job class.
- Job log retention - Specifies the rule for deleting aged job logs. Retention
can be specified by either time or space:
- Time - Specified as an integral number of days. Job logs of the specified
class older than N days old are automatically deleted by the system.
- Space - Specified in megabytes. Job logs of the specified class are deleted
from oldest to newest on an endpoint if the sum of space used by job logs
exceeds the specified maximum.
- Job output queue - Specifies the rule for deleting jobs on the job output
queue. A job is on the output queue after it has either completed, or stopped,
or cancelled. Output queue policy allows for automatic purging of the output
queue by:
- Time - Specified as an integral number of days. Job logs of the specified
class older than N days old are automatically deleted by the system.
- Number - Specified as an integral number of jobs. When jobs on the output
queue of the specified class exceed this number, they are deleted oldest to
newest until the total i less than the specified number.
Following are the limits enforced by job classes:
- maxExecutionTime: An integer, which specifies the maximum number of seconds
a job is allowed to execute before it is cancelled.
- maxConcurrentJob: An integer, which specifies the maximum number of jobs
belonging to same job class that can be dispatched to a cell. Once this limit
is reached, new jobs belonging to the same job class are not dispatched until
the ones that are currently running complete execution.
- maxClassSpace: An integer that specifies the amount of space, in megabytes,
that is allowed for a job log belonging to this job class. Once this limit
is reached, job logs are deleted oldest to newest.
- maxFileAge: An integer, which specifies the number of days a job log of
this job class is stored. Job logs older than this are deleted.
- maxJob: An integer, which specifies the maximum number of jobs of this
class are allowed on the output queue. Once this limit is exceeded, the job
are automatically purged, oldest to newest.
- maxJobAge: An integer value which specifies the maximum of number of days
a job of this class is allowed on the output queue. Jobs older than this value
are automatically purged.