Install PBSPRo on a single node


#1

Dear All,

I am new in using PBS system. I followed the steps to compile from the source code and started the PBS without seemingly any problem from this link.

I want to install the PBSPro in only one node (one single desktop computer), i.e. compute node, execute node and head node become in one node. Is that possible?

OS: OpenSUSE 42.3

sudo /etc/init.d/pbs start

/opt/pbs/sbin/pbs_comm ready (pid=5292), Proxy Name:hostname:17001, Threads:4
PBS comm
PBS mom
Creating usage database for fairshare.
PBS sched
Connecting to PBS dataservice…connected to PBS dataservice@hostname
Licenses valid for 10000000 Floating hosts
PBS server

but there is some problem

pbsnodes -a
pbsnodes: Server has no node list

qmgr -c “create node hostname”
qmgr obj=hostname svr=default: Unauthorized Request
qmgr: Error (15007) returned from server

sudo qmgr -c “create node hostname”
sudo: qmgr: command not found

qsub scriptfile.sh
qsub: No default queue specified

ps -ef | grep pbs
root 5292 1 0 12:27 ? 00:00:00 /opt/pbs/sbin/pbs_comm
root 5322 1 0 12:27 ? 00:00:00 /opt/pbs/sbin/pbs_mom
root 5334 1 0 12:27 ? 00:00:00 /opt/pbs/sbin/pbs_sched
root 5555 1 0 12:27 ? 00:00:00 /opt/pbs/sbin/pbs_ds_monitor monitor
postgres 5592 1 0 12:27 ? 00:00:00 /usr/lib/postgresql96/bin/postgres -D /var/spool/pbs/datastore -p 15007
postgres 5609 5592 0 12:27 ? 00:00:00 postgres: postgres pbs_datastore 10.6.24.10(57422) idle
root 5610 1 0 12:27 ? 00:00:00 /opt/pbs/sbin/pbs_server.bin
aulia 5703 2592 0 12:31 pts/0 00:00:00 grep --color=auto pbs

the hostname is pingable and the firewall has been turned off

/etc/pbs.conf
PBS_SERVER=hostname
PBS_START_SERVER=1
PBS_START_SCHED=1
PBS_START_COMM=1
PBS_START_MOM=1
PBS_EXEC=/opt/pbs
PBS_HOME=/var/spool/pbs
PBS_CORE_LIMIT=unlimited
PBS_SCP=/usr/bin/scp

Please let me know whether I have wrong configuration file or I have some mistakes or I skip some installation steps. I greatly appreciate anyone help


#2

Please run these commands:
#source /etc/profile.d/pbs.sh
#qmgr -c "create node "
< Hostname of the Compute Node > is actually the output of the hostname command on the compute node

hostname - - should be replaced with output of the hostname command on that compute node

Please share the contents of the scriptfile.sh and output of this below command qstat -Bf and qmgr -c ‘p s’

The PATH variable to the /opt/pbs/bin is not set , hence the issue. Please set it  or use as below
   
 #source /etc/profile.d/pbs.sh
    #qmgr 

    or 
    use   /opt/pbs/bin/qmgr     
    similarly, use  /opt/pbs/bin/qstat

Thank you


#3

Thanks, now it is hopefully working

pbsnodes -a
xxx.xxx.xxx
     Mom = xxx.xxx.xxx
     ntype = PBS
     state = free
     pcpus = 4
     resources_available.arch = linux
     resources_available.host = xxx
     resources_available.mem = 7853896kb
     resources_available.ncpus = 4
     resources_available.vnode = xxx.xxx.xxx
     resources_assigned.accelerator_memory = 0kb
     resources_assigned.hbmem = 0kb
     resources_assigned.mem = 0kb
     resources_assigned.naccelerators = 0
     resources_assigned.ncpus = 0
     resources_assigned.vmem = 0kb
     resv_enable = True
     sharing = default_shared
     last_state_change_time = Mon Aug 27 13:14:37 2018
    

scriptfile.sh

#!/bin/sh
echo "Working directory is $PWD"
qstat -Bf
Server: xxx.xxx.xxx
    server_state = Active
    server_host = xxx.xxx.xxx
    scheduling = True
    total_jobs = 0
    state_count = Transit:0 Queued:0 Held:0 Waiting:0 Running:0 Exiting:0 Begun
	:0 
    default_chunk.ncpus = 1
    scheduler_iteration = 600
    FLicenses = 20000000
    resv_enable = True
    node_fail_requeue = 310
    max_array_size = 10000
    pbs_license_min = 0
    pbs_license_max = 2147483647
    pbs_license_linger_time = 31536000
    license_count = Avail_Global:10000000 Avail_Local:10000000 Used:0 High_Use:
	0
    pbs_version = 18.1.0
    eligible_time_enable = False
    max_concurrent_provision = 5
qmgr -c 'p s'
#
# Set server attributes.
#
set server scheduling = True
set server default_chunk.ncpus = 1
set server scheduler_iteration = 600
set server resv_enable = True
set server node_fail_requeue = 310
set server max_array_size = 10000
set server pbs_license_min = 0
set server pbs_license_max = 2147483647
set server pbs_license_linger_time = 31536000
set server eligible_time_enable = False
set server max_concurrent_provision = 5

thank you


#4

Perfect ! Nice one !

To create a queue:

qmgr -c “create queue workq queue_type=e,started=t,enabled=t”

To set default queue, if no queue is requested in the job request, it will directly go to this queue:

qmgr -c “set server default_queue=workq”

These additional attributes would be helpful

qmgr -c  "set server job_history_enable = true"
qmgr -c "set server flatuid=true"

How to request a queue while submitting a job?

qsub -q workq

or in the script using the directive

#!/bin/sh
#PBS -q workq
echo “Working directory is $PWD”