Kind reminder: I kicked off a discussion about installing podman on all
supported cfarm machines last November:
https://lists.tetaneutral.net/pipermail/cfarm-users/2023-November/001020.html
Unfortunately, it didn't get very far...
I also asked the cfarm-admins before contacting the users list. Baptiste
Jonglez' questions and my answers are attached below.
One little addendum: The overlay driver is used by default from podman 4.6
onwards. It was necessary to configure it explicitly before that version. See
this bug for some context: https://github.com/containers/podman/issues/19811
----
Hi Baptiste,
I've opened a discussion thread on cfarm-users, but I'm responding to your
questions here. I can forward these to the user list as well, if you think it
makes sense.
Some considerations though:
- it needs to be clear that this should be used to build/test/debug free
software (aka the purpose of the farm), not as a way to run long-running
services
I don't have an idea if it's possible to enforce killing user's containers on
logout, but any leftover processes will show up in the system's global process
list. They could be killed like any other long-running process if needed.
- do you know if it is required to map a range of UID/GID for each user?
The simplest approach for us would be to run all containers as the
existing farm user UID/GID.
Yes, Podman makes use of so-called subuids and subgids, which must be
configured:
https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md#etcsubuid-and-etcsubgid-configuration
Debian provides a default configuration, but it may require some tweaking for
the cfarm environment.
- storing containers in home directory is a good thing, this is where we
have available space
- can we easily setup a retention policy across all user containers, for
instance "delete all images and containers that were not used in the
last X months?"
I suppose it's possible, but there is a caveat: The VFS and OverlayFS drivers
store the actual files and directories as-is on disk, which means that a simple
file-based retention policy could potentially cripple containers and images,
instead of cleaning them up completely.
There is a podman-system-prune command that supports a date filter, though:
https://docs.podman.io/en/latest/markdown/podman-system-prune.1.html
It sounds like this is a local command that must be executed for each user
individually (despite the name).
- it looks like overlayFS requires a pretty recent kernel: that would
limit it to bookworm and later, and seemingly exclude CentOS 8 hosts
such as cfarm185
Debian has had fuse-overlayfs as a dependency of podman since bullseye, despite
not actually using OverlayFS by default. The native driver has been in Linux
since kernel 5.5 (which, incidentally, includes Debian bullseye and CentOS 8).
I don't know if there are any disadvantages in using the Fuse driver, and I
haven't tested OverlayFS before Debian trixie.
Regards,
Gregor
_______________________________________________
cfarm-users mailing list
cfarm-users@lists.tetaneutral.net
https://lists.tetaneutral.net/listinfo/cfarm-users