Not that I recommend it much, but you can build them for each environment and install the ones needed in each.
A simple example is when you have nodes with and without GPUs. You can build slurmd packages without for those nodes and with for the ones that have them.
Generally, so long as versions are compatible, they can work together. You will need to be aware of differences for jobs and configs, but it is possible.
Brian Andrus
On 5/22/2024 12:45 AM, Arnuld via slurm-users wrote:
We have several nodes, most of which have different Linux distributions (distro for short). Controller has a different distro as well. The only common thing between controller and all the does is that all of them ar x86_64.
I can install Slurm using package manager on all the machines but this will not work because controller will have a different version of Slurm compared to the nodes (21.08 vs 23.11)
If I build from source then I see two solutions: - build a deb package - build a custom package (./configure, make, make install)
Building a debian package on the controller and then distributing the binaries on nodes won't work either because that binary will start looking for the shared libraries that it was built for and those don't exist on the nodes.
So the only solution I have is to build a static binary using a custom package. Am I correct or is there another solution here?