[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [HTCondor-users] new htcondor_qusers features



User records live in the APâs (i.e. the scheddâs) job queue. So the condor_quesrs command works similarly to condor_q and condor_qedit. The -pool and -name options control how it finds the schedd.
Anyone with ADMINISTRATOR authorization can modify User ClassAds.

User ads correspond to the User attribute of the job ads. They indicate who owns the job (i.e. who placed it at the AP and is allowed to modify it) and what OS account to use for any files/processes. They are persistent and can be queried at the schedd.

Submitter ads correspond to the AccountingGroup attribute of the job ads. They indicate what account should be charged by the Central Manager for resource usage of the job. They are created as-needed by the schedd when there are idle jobs that need matching and sent to the collector (where they can be queried using condor_status). Submitter ads are also connected to the Accounting ads, which are stored persistently by the negotiator and can be queried using condor_status or condor_userprio.

At present, you canât use an accouting_groups attribute in the User ad to restrict what accounting group a job can be part of, but thatâs a capability weâd like to add.

As with any attribute in the job ad, you can reference AccountingGroup in the various Rank and Requirements expressions to help in steering jobs. I canât think of any special features in this regard specific to AccountingGroup.

 - Jaime

On Sep 1, 2024, at 1:28âPM, Matthew T West <m.t.west@xxxxxxxxxxxx> wrote:

Hi Jaime,

Glad you think so, and I know that the python bindings v2 is a work in progress, so will set that aside.

Some additional questions regarding `qusers` & accounting groups

  • Can one use the -pool &/or -name options along with add|edit|disable?
  • What unix accounts (condor?) have permissions to change User ClassAds?
  • What is the difference between Submitter and User ClassAds? The latter I don't see in the docs as a possible type.
  • One could use the accounting_groups attribute in the User ad to validate the use of a particular accounting group in a Job ad, right?
  • Does HTCondor already have the capability to use the accounting_group from the job ad to direct the work towards particular EPs, but not forcing them to do so?

I would have asked a bunch of these in person at Nikhef later this month, but sadly I cannot make time to go to the workshop. Hence dumping them here.

Cheers,
Matt

On 30/08/2024 22:14, Jaime Frey wrote:
CAUTION: This email originated from outside of the organisation. Do not click links or open attachments unless you recognise the sender and know the content is safe.

These are both excellent ideas. The python bindings are something we havenât gotten to yet.

 - Jaime

On Aug 29, 2024, at 3:35âPM, Matthew T West via HTCondor-users <htcondor-users@xxxxxxxxxxx> wrote:

Good evening Condor devs,

I see that `condor_qusers` has gotten some new features, particularly the ability to add (& edit existing?) custom attributes in User ClassAds. https://htcondor.readthedocs.io/en/latest/man-pages/condor_qusers.html

This is great to see!

Some associated feature requests if that's OK.

  • Being able to add & edit these ClassAds via htcondor python bindings.
  • Connect up User ClassAds and the accounting-groups functionality, ala rather than writing an explicit map file, each user ClassAd could have a list of groups they are in, if any. Though I figure this may require some more radical plumbing changes.

Cheers,
Matt

P.S. - if anyone cares about the context, I am trying to write an HTCondor plugin for the ColdFront allocation management system akin to the existing one for Slurm. https://github.com/ubccr/coldfront/tree/main/coldfront/plugins/slurm