21-12-2012, 05:51 PM
Beowulf Cluster Design and Setup
Beowulf Cluster.pdf (Size: 578.17 KB / Downloads: 124)
Cluster Nodes
Hardware
• Buy generic PCs and shelves. May want keyboard switches for smaller configurations.
For larger configurations, a better solution would be use the serial ports from each
machine and connect to a terminal server.
• Build custom PCs from commodity off-the-shelf components. Requires a lot of work
to assemble the cluster but we can fine-tune each node to what we want.
• Custom rack-mount nodes. More expensive but saves space. May complicate cooling
issues due to closely packed components.
Node Software
Just Install Linux. For parallel libraries, install PVM and MPI both. For example, PVM
and LAM/MPI come preinstalled with Fedora Core Linux (if you install everything or use
custom install and select Scientific Computation packages).
Obviously, you can stick the CD in each machine to install Linux. However, there are some
choices available to allow you to install the cluster over the network. This would be needed
if the nodes do not have CD drives. We will discuss these options later.
Ethernet Protocol
In an Ethernet network, machines use the Carrier Sense Multiple Access with Collision Detect
(CSMA/CD) protocol for arbitration when multiple machines try to access the network at
the same time. If packets collide, then the machines choose a random number from the
interval (0, k) and try again. On subsequent collisions, the value k is doubled each time,
making it a lot less likely that a collision would occur again. This is an example of an
exponential backoff protocol.
TCP/IP Addresses
The most prevalent protocol in networks is the Internet Protocol (IP). There are two higherlevel
protocols that run on top of the IP protocol. These are TCP (Transmission Control
Protocol) and UDP (User Datagram Protocol).
IPv4 protocol has 32-bit addresses while the IPv6 protocol has 128-bit addresses. IP address
range is divided into networks along an address bit boundary. The portion of the address
that remains fixed within a network is called the network address and the remainder is the
host address. Three IP ranges are reserved for private networks.
A n-Node Ring
In order to create larger rings, we can write scripts or programs to automate the task of
coming up with the route commands. We can also use the concept of net masks to simplify
the routing commands. Suppose we have 15 machines in our ring, with IP addresses in
the range 192.168.0.1–192.168.0.15. Then consider the network address 192.168.0.0 (which
implicitly selects all 254 machines in the range 192.168.0.1–192.168.0.254, 192.168.0.255 is the
broadcast address). If we use a netmask of 255.255.255.0, then we are selecting all addresses
in that network. However, a netmask of 255.255.255.248 selects machines with addresses in
the range 192.168.0.1–192.168.0.7. Similarly, a netmask of 255.255.255.248 selects machines
with addresses in the range 192.168.0.8–192.168.0.254, which for us would be the furthest 8
machines. So now we can use the following script to set up the routing on node n0.