BEOSH: The Beowulf Cluster Shell

Mason Vail and Amit Jain
Boise State University
Boise, Idaho 83702


This material is based upon work supported by the National Science Foundation under Grant No. 0321233. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.

The Beowulf Cluster Shell (beosh) has been created to provide cluster users with a Single System Image (SSI) by distributing individual commands or pipelined jobs over available nodes without requiring the user to be aware of where or how jobs are distributed.  Job control of distributed jobs enables management of multiple concurrent remote jobs from a single shell session.  In addition to SSI features, beosh  supports parallel job execution through pdsh, a commonly used parallel-only cluster shell.  In either distributed or parallel mode,  beosh  can limit nodes to those reserved through a system like the Portable Batch System.

This shell seeks to address the lack of a full-featured, portable cluster shell that remains despite increasing availability and use of dedicated, high-performance computer clusters.  Many cluster ``shells'', for example, are actually scripts for local shells executing a sequence of remote commands for user convenience.  At the other extreme are specialized cluster operating systems requiring commitment of the cluster to a particular operating system and its included utilities.  Between these extremes, there are no choices for a general-purpose cluster shell comparable to even a basic single-system shell. Though opportunities for improvement remain, beosh  is already a usable shell providing a foundation for development of a full-featured, general-purpose shell for Beowulf clusters.

Beosh was originally developed by Mason Vail as a Masters in Computer Science project under the supervision of Amit Jain. The masters thesis is available here and is  a good reference for the details of beosh.

Download beosh tarball: beosh.tar.gz. Installation instructions are included in the tarball.