...
Interface 1: Extend PBS to support a list of scheduler objects
- Visibility: Public
- Change Control: Stable
- Details:
- PBS supports a list of scheduler objects to be created using qmgr. It is similar to how we create nodes in server.
- qmgr command can be used to create a scheduler object . It must be invoked by a PBS admin/manager.
- To create a scheduler object and make it run, the following are the mandatory attributes that needs to be set by the user
- Name of the scheduler is mandatory to be given while creating a scheduler object.
- qmgr -c "c sched multi_sched_1"
- This will create/set the following attributes for the sched object
- port - If not defined by the user, It will start from 15050 and try to run the scheduler on the next available port number.
- host (read-only for now, Has the same value as PBS server host)
- partition = "None" (default)
- sched_priv = $PBS_HOME/multi_sched_1_priv (default)
- sched_log = $PBS_HOME/multi_sched_1_log (default)
- scheduling = False (default)
- scheduler_iteration = 600 (default)
- sched_user = <pbs_server user> (default)
comment
- This will create/set the following attributes for the sched object
- qmgr -c "c sched multi_sched_1"
- Name of the scheduler is mandatory to be given while creating a scheduler object.
- Comment comment can be set to the following if scheduler undergoes restarting 2-3 times due to potential crashes in an hour for example.
comment => “NEEDS_ATTENTION” - This can also be used to tell when a particular scheduler is ready to function again by setting the comment as follows.
comment => “READY_TO_USE
- Comment comment can be set to the following if scheduler undergoes restarting 2-3 times due to potential crashes in an hour for example.
- Set the priv directory for the scheduler.
- The directory must be owned by the sched_user specified while creating scheduler object. It should have permissions set as "750". By default a sched object has
it's priv directory set as $PBS_HOME/<sched-name>_priv - qmgr -c "s sched multi_sched_1 sched_priv=/var/spool/pbs/sched_priv_1"
- If the priv directory is not accessible and admin tries to set "scheduling" attribute to true then error code is set to "15211" and following error if thrown to the user
"scheduler <scheduler name> can not access it's log or priv directory"
- The directory must be owned by the sched_user specified while creating scheduler object. It should have permissions as "755". By default a sched object has
it's logs directory set as $PBS_HOME/<sched_name>_logs - qmgr -c "s sched multi_sched_1 sched_log=/var/spool/pbs/sched_logs"
- If the log directory is not accessible and admin tries to set "scheduling" attribute to true then error code is set to "15211" and following error if thrown to the user
"scheduler <scheduler name> can not access it's log or priv directory"
- By default a multi-sched object has scheduling set as False.
qmgr -c " s sched <scheduler name> scheduling = 1"
- The directory must be owned by the sched_user specified while creating scheduler object. It should have permissions set as "750". By default a sched object has
- By default PBS server will configure a default scheduler which will run out of the box.
- The name of this default scheduler will be "sched"
- The sched_priv directory of this default scheduler will be set to the $PBS_HOME/sched_priv
- Default scheduler will log in $PBS_HOME/sched_logs directory.
- Default scheduler will be provided with default set of policies as mentioned in Interface 3.
...