Kairns

Softwares for the operation and study of computing infrastructures

Quentin Guilloteau, Millian Poquet, Olivier RICHARD

Tutorial NixOS-Compose @ COMPAS25

Quentin Guilloteau, Millian Poquet, Olivier RICHARD

2025-06-24

On the 24/06/2025 we animated a tutorial on NixOS-Compose at the french conference COMPAS 25.

In total there were about 30 participants, mainly interns and PhD students: which was the most participants we ever had for a tutorial!

A "New" Tutorial

This was also the first edition of the "new" version of the tutorial. Historically, the tutorial goes through the setting up of the evaluation of a NFS server with an I/O benchmark (ior). However, when we update the nixpkgs version from 23.05 to 24.11, we had troubles with the configuration of the NFS... We thus decided to switch the file-system from NFS to GlusterFS, on which we had little experience before. In the end, it seems that besides some small typo in the commands to execute to set up the GlusterFS volume, everthing went right!

Technical Issues

Nix and NFS

As this was also the first edition with that many participants, we were also fearing some technical issues, namely the performance of the NFS servers of Grid'5000. This is because, as Nix is not installed and supported by default on Grid'5000, we have asked the participants to install Nix in their /home/ directory, which are stored on a NFS server. When evaluating and building, Nix will make a lot of system calls which could greatly impact the performance of any file system, but is even worse on NFS. (more information can be found in the very good Guix blog post). Howerver, it seems that the NFS servers of Grid'5000 survived, but the tutorial did stress it.

Below is the requests per second on the NFS server of the Grenoble site of Grid'5000. The tutorial took place between 9:00am to 12:45pm, with a break from 10:30am to 11:00am.

Usage of the NFS server of the Grenoble Grid'5000 site during the tutorial

We can indeed see the high loads in getattr and lookup system calls, which is what we expect from a Nix usage.

IP Banning

The unexpected issue however, was the ban of the IP address of the university due to too many connection attempts to Grid'5000! As all the participants were logged on the same WiFi and trying to connect to Grid'5000, Grid'5000 has received a lot of connections from the same IP address and decided to ban it. This left us unable to connect to Grid'5000 for a bit less than 30 minutes, but the admins of Grid'5000 were really fast to respond and solve this issue.

Conclusion

Overall the tutorial was a "success" despite the small technical issues. It is however unclear if we would get any users from it. Some participants seemed interested by the concepts of NixOS-Compose, but their experiments do not always required the power of NixOS-Compose.

Resource Usage

siteclustercore time
Grenobledahu66d 18H 52M 16S
Grenobledrac1H 19M 20S
Grenobletroll3d 2H 4M 16S
Lyonhercule5H 20M 0S
Lyonnova7H 6M 40S
Lyonorion1H 46M 48S
Lyontaurus19H 44M 0S
Nancygros21d 20H 48M 18S
Nanteseconome1d 22H 43M 12S
Nantesecotype2d 14H 18M 0S
Rennesparasilo6d 15H 26M 40S
Total104d 9H 29M 30S

In total this tutorial consummed about 104 core days. With 30 participants, that sums up to 3 day and 11 core hours per participants.