-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
launch a multiuser instance as a job #5531
Comments
Some notes offline from @garlick:
Other notes found experimentally:
|
If (non-critical) nodes crash during a DAT, the DAT instance continues but we don't have a way to re-add them. #5184 (FLUB bootstrap) might be once piece of a solution... |
This is a minimal proof-of-concept of launching a multi-user capable subinstance: As user flux: $ flux alloc -N2 --conf=access.allow-guest-user=true --conf=exec.imp=$(flux config get exec.imp)
$ flux exec sh -c 'chmod uo+x $(flux getattr rundir)' Then as another valid user on the system: $ flux jobs -A
JOBID USER NAME ST NTASKS NNODES TIME INFO
ƒMDKKUWCR4B flux flux R 2 2 1.517m pi[3-4]
$ flux uptime
13:38:57 run 2.9m, owner flux, depth 1, size 2
$ flux run -N2 id
uid=1001(grondo) gid=1001(grondo) groups=1001(grondo),100(users)
uid=1001(grondo) gid=1001(grondo) groups=1001(grondo),100(users) For testing purposes, more complex configuration could be placed in a [job-manager]
plugins = [ { load = "perilog.so" } ]
[job-manager.prolog]
command = [
"flux",
"perilog-run",
"prolog",
"--timeout=10s",
"--with-imp",
"-e",
"prolog"
] Then just add One potential issue is that if the subinstance were to use sdexec or housekeeping, I think there is a potential for name collision in the units at different instance levels. |
BTW, there was a question about whether users would have access to the URI for child instances launched by the |
This one is a bit of a head-scratcher. Seen in the prolog of a multiuser instance:
The error was triggered by calling For the record,
Maybe the gid also needs to be root to run this operation? This is similar to what we do in the system-instance prolog, except I'm not running |
Oh, you might need to ensure that |
That did it, thanks @grondo! |
For a final summary here is how to start a multiuser instance as a job under the instance owner of a system instance:
Note the need for some directory permission mangling:
And then as another user on the system
|
Correction: "will overwrite" in that comment is a bit of a misstatement. The final TOML table that is read in alphabetical order from |
It would be useful to be able to launch a subinstance in a system instance which is also capable of running multiuser jobs.
This feature in combination with user-based access controls could offer one way implement dedicated access time.
This is a tracking issue to discuss the implementation and track any bugs that need to be fixed to get a basic implementation.
Tasks
owner
option may be incorrect underflux-proxy(1)
#5530The text was updated successfully, but these errors were encountered: