News for hackers. Stuff that matters.
Re:Run0 – systemd based alternative to sudo announced by mbreese on Tuesday April 30, 2024 @06:27PM (#40217191)
Multi-user clusters are still quite common in HPC. And I think you're not going to see a switch away from multi-user systems anytime soon. Single user systems like laptops might be a good use-case, but even the laptop I'm using now has different accounts for me and my wife (and it's a Mac).

When you have one OS that is used on devices from phones, to laptops, to servers, to HPC clusters, you're going to have this friction. Could Linux operate in a single-user mode? Of course. But does that really make sense for the other use-cases?

Re:Run0 – systemd based alternative to sudo announced by whimsicalism on Tuesday April 30, 2024 @07:17PM (#40217636)
is it? most HPC (if GPU clusters count) are probably in industry and managed by containers
Re:Run0 – systemd based alternative to sudo announced by birdiesanders on Tuesday April 30, 2024 @10:43PM (#40218964)
Containers rely on many privilege separation systems to do what they do, they are in fact a rather extreme case of multi-user systems, but they tend to present as “single” user environs to the container’s processes.
Re:Run0 – systemd based alternative to sudo announced by whimsicalism on Wednesday May 01, 2024 @11:52AM (#40225015)
> they are in fact a rather extreme case of multi-user systems

Are they? My understanding was that by default, the `dockerd` (or whatever) is root and then all containers map to the same non-privileged user.

Re:Run0 – systemd based alternative to sudo announced by airocker on Friday May 03, 2024 @12:32PM (#40249510)
Good software hides complexity. User does not have to understand user group permissions suid etc etc
Re:Run0 – systemd based alternative to sudo announced by bayindirh on Wednesday May 01, 2024 @01:45AM (#40219910)
HPC admin here.

Yes. First, we use user level container systems like apptainer/singularity, and these containers run under the user itself.

This is also same for non academic HPC systems.

From schedulers to accounting, everything is done at user level, and we have many, many users.

It won’t change anytime soon.

Re:Run0 – systemd based alternative to sudo announced by pankajkumar229 on Wednesday May 01, 2024 @04:28AM (#40220850)
there is no reason for users to be maintained in the kernel.
Re:Run0 – systemd based alternative to sudo announced by bayindirh on Wednesday May 01, 2024 @07:22AM (#40221822)
Can you elaborate on that?
Re:Run0 – systemd based alternative to sudo announced by whimsicalism on Wednesday May 01, 2024 @02:17PM (#40227072)
I thought most containers shared the same user, ie. `dockremap` in the case of docker.

I understand academia has lots of different accounts.

Re:Run0 – systemd based alternative to sudo announced by bayindirh on Wednesday May 01, 2024 @02:48PM (#40227561)
Nope, full usermode containers (e.g.: apptainer) run under the user's own context, and furthermore under a cgroup (if we're talking HPC/SLURM at least) which restricts the user's resources to what they requested in their job file.

Hence all containers are isolated from each other, not only at process level, but at user + cgroup level too.

Apptainer: https://apptainer.org

Re:Run0 – systemd based alternative to sudo announced by airocker on Friday May 03, 2024 @12:30PM (#40249497)
I think a admin would better understand the system if there was only one subsystem doing a particular type of security and not two. Two subsystems doing security would lead to more problems down the road.
Re:Run0 – systemd based alternative to sudo announced by mbreese on Tuesday May 07, 2024 @08:25AM (#40284651)
For HPC, there are two different contexts where users need to be considered - interactive use and batch job processing. Users login to a cluster, write their scripts, work with files, etc. This is your typical user account stuff. But they also submit jobs here.

Second, there are the jobs users submit. These are often executed on separate nodes and the usage is managed. Here you have both user and cgroup limits in place. The cgroups make sure that the jobs on have the required resources. The user authentication makes sure that the job can read/write data as the user. This was the user can work with their data on the interactive nodes.

So the two different systems have different rationales, and both are needed. It all depends on the context.

Re:Run0 – systemd based alternative to sudo announced by airocker on Thursday May 09, 2024 @08:10PM (#40314244)
If we forget how the current system is architected, we are looking at two problems: First problem is that Linux capabilities are also dealing with isolating processes so they have limited capabilities because the user based isolation is not enough. Second problem is that local identity has no relation to the cloud identity which is undesirable. If we remove user based authentication and rely on capabilities only with identity served by cloud or kubernetes, it could be a simpler way to do authenticating and authorization
Re:Run0 – systemd based alternative to sudo announced by mbreese on Thursday May 09, 2024 @09:11PM (#40314600)
I'm not sure I even follow...

The primary point of user-authentication is that we need to be able to read/write data and programs. So you have to have a user-level authentication mechanism someplace to be able to read and write data. cgroups are used primarily for restricting resources, so those two sets of restrictions are largely orthogonal to each other.

Second, user-authentication is almost always backed (at least on interactive nodes) by an LDAP or some other networked mechanism, so I'm not sure what "cloud" or "k8s" really adds here.

If you're trying to say that we should just run HPC jobs in the cloud, that's an option. It's not necessarily a great option from a long-term budget perspective, but it's an option.

Re:Run0 – systemd based alternative to sudo announced by airocker on Tuesday April 30, 2024 @06:46PM (#40217382)
you could potentially create multiple containers in that machine which are single user and give to every user who needs access. CPU/Memory/GPU can be assigned in any way you want(shared/not shared). Now no user can mess up another user.
Re:Run0 – systemd based alternative to sudo announced by SoftTalker on Tuesday April 30, 2024 @10:09PM (#40218780)
It's not "that machine" it's a cluster of dozens or hundreds of machines that is partitioned in various ways and runs batch jobs submitted via a queuing system (probably slurm).
Re:Run0 – systemd based alternative to sudo announced by wongarsu on Wednesday May 01, 2024 @03:32AM (#40220499)
Isn't that just reinventing multiuser operating systems? Normal Linux already has the property that no user can mess up any other user (unless they are root or have sudo rights)
Re:Run0 – systemd based alternative to sudo announced by airocker on Thursday May 02, 2024 @12:10AM (#40232607)
no it is not
Re:Run0 – systemd based alternative to sudo announced by weebull on Wednesday May 01, 2024 @03:56AM (#40220652)
Not containers, but cgroups, and that is how HPC clusters work today. You still need multiple users though.