V2 config questions

I have the following v2 config set on one of the nodes in our cluster (just testing for now):

x1000c7s7b1n1:/var/spool/pbs/mom_priv # pbs_mom -s show base_config
$configversion 2
x1000c7s7b1n1: ntype = billtest
x1000c7s7b1n1: sharing = force_exclhost
x1000c7s7b1n1: resources_available.system = billtest
x1000c7s7b1n1: resources_available.nodetype = billtest

I have tried both HUPing the MoM and doing a restart. When I do pbnsnodes -av the sharing is as expected. However, the value of ntypedoes not change(still shows PBS). resources_available.system is a custom resource we created and it has a value of polaris set via qmgr, but this does not override it. The resources_available.nodetype I don’t really expect to work. I copied that from an example in the manual, but that is the only reference to it in the manual, so I expect I would need to create that as a custom resource. I tried it just in case. So my questions are:

  1. Why are ntype and system not being updated? Both are writeable and presumably permissions are not an issue as this is startup configuration. Is there some order of precedence or something? A v2 config file won’t overwrite anything already set by the server? Is this in the manual anywhere? I looked, but did not find it.
  2. Is there a list somewhere of what can be in a v2 config file? Or is any attribute listed in Sec 6.10 of the reference guide (Vnode Attributes) fair game?
  3. There is also /var/spool/pbs/mom_priv/config, which I believe is a v1 config file. The main thing it has is $clienthost. Is there any way to consolidate all of this into one config file?
  4. In general, is there any thought of unifying/simplifying the configurations? I saw a 5 year old enhancement request to be able to set things via qmgr. I was just curious if there was anything on the roadmap.

Thanks for your help.

Bill

The vnode attribute ntype was only used to distinguish between PBS and Globus vnodes. Globus can still send jobs to PBS, but PBS no longer supports sending jobs to Globus. The ntype attribute is read-only. Please refer: PBS Professional 2021.1 User’s Guide - Page UG-49

For the resources_available.system , please unset its attribute/value in qmgr and then let the v2 config file set its value.

Custom resources and standard built-in resources can be part of v2 config file. All we have to make sure is the natural node appears first in the pbnodes -av output and then the vnodes .

This is configuration file for PBS Mom and is not related to v2 configuration. The v2 configuration stored int mom_priv/config.d/v2_filename ( if config.d folder does not exist, then it needs to be created and v2_filename should be copied inside the folder) . There is no way to consolidate
mom_priv/config and mom_priv/config.d/v2_filename, they are not related, they need to be kept as they are .

This has been implemented in the latest releases now server and scheduler configuration can be applied using qmgr. Everything is not completely configurable via qmgr yet, but compared of the past of editing files (resourcedef , hooks, sched_config ,etc) , it is now done via qmgr.

Thanks for the info. Comments inline. The executive summary is:

  • ntypes is only for Globus and is meant to be read-only
  • I have to unset the value of the system custom resources in order for the v2 file to populate that.

| adarsh
August 10 |

  • | - |

weallcock:

Why are ntype and system not being updated? Both are writeable and presumably permissions are not an issue as this is startup configuration. Is there some order of precedence or something? A v2 config file won’t overwrite anything already set by the server? Is this in the manual anywhere? I looked, but did not find it.

The vnode attribute ntype was only used to distinguish between PBS and Globus vnodes. Globus can still send jobs to PBS, but PBS no longer supports sending jobs to Globus. The ntype attribute is read-only. Please refer: PBS Professional 2021.1 User’s Guide - Page UG-49

Got it. I had not seen that. It was a bit confusing because the attributes table on RG-322 shows that it is R/W for managers.

For the resources_available.system , please unset its attribute/value in qmgr and then let the v2 config file set its value.

Also good to know. I went back and searched through the bigbook and I didn’t see that fact mentioned anywhere. It might be good to add that to the doc unless v2 configs are going away in the next release.

weallcock:

Is there a list somewhere of what can be in a v2 config file? Or is any attribute listed in Sec 6.10 of the reference guide (Vnode Attributes) fair game?

Custom resources and standard built-in resources can be part of v2 config file. All we have to make sure is the natural node appears first in the pbnodes -av output and then the vnodes .

weallcock:

There is also /var/spool/pbs/mom_priv/config , which I believe is a v1 config file. The main thing it has is $clienthost . Is there any way to consolidate all of this into one config file?

This is configuration file for PBS Mom and is not related to v2 configuration. The v2 configuration stored int mom_priv/config.d/v2_filename ( if config.d folder does not exist, then it needs to be created and v2_filename should be copied inside the folder) . There is no way to consolidate
mom_priv/config and mom_priv/config.d/v2_filename, they are not related, they need to be kept as they are .

Interesting… The only mention I see of a config.d directory in the bigbook is IG-84 in the section titled “Remove Old PBS Configuration and Resource Conflicts”. I put my files in /var/spool/pbs/mom_priv/ and it worked (the sharing part worked). Is creating a config.d directory and placing the input files there considered a best practice? If so, another suggestion for an update to the documentation.

weallcock:

In general, is there any thought of unifying/simplifying the configurations? I saw a 5 year old enhancement request to be able to set things via qmgr . I was just curious if there was anything on the roadmap.

This has been implemented in the latest releases now server and scheduler configuration can be applied using qmgr. Everything is not completely configurable via qmgr yet, but compared of the past of editing files (resourcedef , hooks, sched_config ,etc) , it is now done via qmgr.

Excellent. Thanks for the info.

Bill

Version 1 config files are for the MoM. Version 2 are for the vnode. The reason you don’t see anything else about the config.d directory is that the supported method for creating version 2 configuration files is to use the pbs_mom -s insert command, instead of editing these files directly. We describe configuring MoMs and vnodes, and how to use version 1 and 2 configuration files, in Chapter 3, “Configuring MoMs and Vnodes”, in the Admin Guide.