[Beowulf] Software installation across cluster
landman at scalableinformatics.com
Tue May 26 18:12:16 PDT 2015
On 05/26/2015 05:45 PM, Trevor Gale wrote:
> Hello all,
> I was wondering what solutions other use for easy software installation across clusters. Is there any method that is generally accepted to be the most effective for making sure that all the software is consistent across each node?
Many different methods, depending upon stateful/stateless modes.
For stateful modes (local installation, mutable boot drives), you have
to worry about version/configuration drift, among many other issues.
Here programmatic tools can help, but really, a simple shared file
system (read only) across the stateful nodes has been my preferred
mechanism when we use stateful systems.
For stateless systems, we normally have two types: hybrid and pure.
Hybrid nodes will eventually mount state preserving directories, so
curiously, they can make effective use of the shared mounting as
indicated above. Pure stateless mounts no external stateful resources,
so the applications need to be local. This is hard when the
applications are sizeable. FWIW, we keep our toolchain of about 800MB
of app stacks, in /opt/scalable on our stateless nodes. I've debated
whether to use squashfs for this in the past, but its all one 8G ramdisk.
Stateful nodes are at risk if the server providing the file system goes
offline. Stateless nodes have limited space for apps.
For most things a remotely hosted /opt/apps or /apps etc. would
suffice. Use modules as indicated to handle environment bits. As it
turns out, the stateful single apps namespace makes installation of
software across a cluster completely trivial.
With the use of docker/rkt and other similar things in HPC, expect the
mechanisms to change, again.
Joseph Landman, Ph.D
Founder and CEO
Scalable Informatics, Inc.
e: landman at scalableinformatics.com
p: +1 734 786 8423 x121
c: +1 734 612 4615
More information about the Beowulf