UPDATE: Re: Clustering (Options)

"Dave Warchol" <[email protected]> Wed, 24 Dec 2003 15:02:40 -0500
Newsgroups gmane.linux.admin.managers
Message-ID <[email protected]>
First, thanks to those who responded: 
Will Backman,
Art Wildman,
Klaasjan Brand, and,
Pablo Jejcic

Couple of things first:
-The application is Matlab, in this cased used for (signal) processing
large amounts of data connected with fMRI research
- This is just an update, I'll post a summary when we've got something
working
- I think that what we are looking for is "high performance" cluster
and am beginning to delve into the workings of
OSCAR and OpenMosix.
- It turns out that Art had done a bunch of research on the subject
that he was kind enough to share.

>From Pablo:
Take a look to OpenMosix and the dinamic share memory patch. See if
the
application that you want to use can be run on it. Is the easiest way
to do
it, and is a dinamic cluster, so you can add and take away nodes at
any
time.

http://openmosix.sourceforge.net/ 

http://mcaserta.com/maask/ 


>From Art:
For High-Availability you may want to use one of the major distros
(like RHAS) with cluster support, if you have the budget for it. There
have been some very good articles in Linux Magazine & Journal on
clusters recently. I'm more familiar with the Scientific Hi-Perf kind...
and plan to use Oscar soon, so I've been lurking on their mail list.
Oscar has a System Installer Suite (SIS) built in for imaging the nodes,
and my have HA applications. The following email was posted to the
Florida Linux Users List awhile back. - HTH Art-FF/[email protected]


To: 	LINUX-L-1sD4k/[email protected] 

Well your in luck, I did most of the googleing last winter. It really
depends on your applications, there are like 4/5 major types of
clusters...

   * High Performance Clusters
     <http://dpnm.postech.ac.kr/cluster/hpc-cluster.htm> - low price
     supercomputing(Beowulf project)
   * High Availability Clusters
     <http://dpnm.postech.ac.kr/cluster/ha-cluster.htm> - high
     available and fault tolerant system(HA project)
   * Bulk Storage Clusters
     <http://dpnm.postech.ac.kr/cluster/storage-cluster.htm>- stored
     data sharing and service
   * Web/Internet Clusters
     <http://dpnm.postech.ac.kr/cluster/internet-cluster.htm>- load
     balancing(LVS project)
   * http://dpnm.postech.ac.kr/cluster/ 

Lots of docs talk about dbases-HA or load balancing web &
renderfarms...
the HP scientific kind are very application specific.

Linux Cluster HOWTO - good starting point
http://www.tldp.org/HOWTO/Cluster-HOWTO.html 

1. For calculations, the slave nodes only need enough space for your
apps plus a large /tmp /var & swap area, depends on memory available.
They shouldn't need more than 10-20gb for OS needs. I would consider
using LVM on the master in a RAID configuration & use smaller drives
that are quick to "image" on the nodes and put the big drives on the
master & share, unless you need the to use the local fast space for
caching portions of your parallel jobs. Slave nodes may still need
their
own /home for maint but it doesn't have to be called 'home'. This is
in
the howto, docs & links below...

2. Firewall the master, must configure the internal nics to allow lots
of stuff (rpc, messaging & distcc ports) & then there are some
routing/nat gotchas. The Howtos & mag-articles are your friends. Our
servers came with the intel 1gb nics for servers that have an extended
PCI-8x bus on the mb, so they dont saturate it & have dma. One died &
I
replaced it with a cheaper desktop nic, so far haven't had trouble
-ymmv.

3. Tools like KickStart are used to automate the partitioning and
package selection & usually done over network installs. Disk Image
tools
are the way to go (small drives on nodes, one large output drive/raid
array on master). System Installation Suite/SIS is part of OSCAR,
usually custom scripts copy stuff around, then there's always rdist &
rsync tools too. Got a good KVM switch with cables at provantage.com.
A
bootable ext firewire/usb cd & rescue cd from kernel.org may come in
handy. We're using ReiserFS & custom kernels, the super-rescue cd
handled it well when I needed it.

For a full blown scientific cluster, I would look at OSCAR...
http://oscar.sourceforge.net/ 
If you just want to play & learn, try the IBM OpenMosix tutorial
first,
or go the homebrew beowulf route.

- The parallel messaging & transport system is most important (Mosix,
PVM, LAM-MPI, MPICH), and depending on your applications you may
require
very nice, but expensive compilers from our friends in Portland...
http://www.pgroup.com 

Jon K. Akers wrote:
> Take a look at the Rocks cluster install. It has worked pretty well
for
> us so far, although I may be working on rolling my own cluster
sometime
> in the future now that I have worked with Rocks so much.
> http://rocks.npaci.edu/Rocks/ 
-Rocks looks interesting, Thanks Jon.

I've done the homebrew beowulf, for a 400km GIS domain we are modeling
the atmosphere in 3d with output files around 50gb every 8hrs, and 4gb
snapshots each hour. We got everything working with lots of time,
effort, duplicating configs, etc. When our testing period is over I
hope
to switch to OSCAR and eliminate many of the redundant operations, get
some management tools & add some additional features & stability. So
far
the only drawbacks to OSCAR I've found are that their mail-list is
very
spammy & you have to wait for their updates & new releases. OSCAR
v2.2.1
works with RedHat 7.2 and RedHat 7.3, as well as Mandrake 8.2.

Please share your experiences, as this is one of the main reasons I
lurk
this list... lots of talent & experience here, see Donald's post.

Here is some of my research & lots of links...

OSCAR Homepage
http://www.csm.ornl.gov/oscar/ 

OSCAR (Open Source Cluster Application Resource) is a snapshot of the
best known methods for building, programming, and using clusters. It
consists of a fully integrated and easy to install software bundle
designed for high performance cluster computing.
http://sourceforge.net/projects/oscar/ 

The OSCAR Revolution
http://www.linuxjournal.com/article.php?sid=5559 

For example, I was working on ntp config and it needed to be replicated
on
all cluster nodes. Oscar does it for you, and uses "opium" to manage
changes in user accounts. It even sets up ssh-agent between nodes! Take
a
look at the install manual, it appears to use multiple MPI's PVM or
others... still not sure if it does mosix too, or what the
requirements
for messaging may be. But, worth investigating, as it installs
SIS/systemimager too. Check it out & let me know if you see any show
stoppers.

OSCAR Cluster Mgmt Suite
<http://www.linuxjournal.com/article.php?sid=5559>http://freshmeat.net/releases/105709/


OSCAR Docs - /Installation (2.1)/
http://oscar.sourceforge.net/docs.php 
http://oscar.sourceforge.net/docs/oscar_installation_2.1.pdf 

Linux Magazine | June 2002 | EXTREME LINUX | Using MOSIX

http://www.linux-mag.com/2002-06/extreme_01.html 

openMosix, an Open Source Linux Cluster Project
http://openmosix.sourceforge.net/ 

openMosixview cluster-management GUI
http://www.openmosixview.com/ 

Linux: Parallel-Processing-HOWTO *
http://tldp.org/HOWTO/Parallel-Processing-HOWTO.html 

Message Passing Interface (MPI) standard *
http://www-unix.mcs.anl.gov/mpi/ 

MPI - Message Passing Interface
http://WWW.ERC.MsState.Edu/misc/mpi/ 

Linux Lab Parallel Howto - Mosix, PVM, LAM-MPI, MPICH
https://www.ee.washington.edu/computing/faq/labs/linuxlab-parallel.html


The Parallel Architecture Research Laboratory
http://www.parl.clemson.edu/ 

LinuxHPC.org - Linux High Performance Computing
http://www.linuxhpc.org/ 

Red Hat Linux Advanced Server 2.1
http://www.redhat.com/software/advancedserver/ 

SystemImager FAQ: How do I add a driver for a special card to the
autoinstall kernel?
http://www.systemimager.org/manual/html/c636.html#AEN770 

[email protected] 

The Oak Ridge Extreme Linux Page - Beowulf Builders *
http://extremelinux.ornl.gov/ 

Beowulf Builders Forum *
http://extremelinux.ornl.gov/ExtremeLinuxNews/get/forums/beowulf-builders.html


Beowulf Underground
http://www.beowulf-underground.org/ 

SourceForge.net Foundries: Cluster Foundries
http://clustering.foundries.sourceforge.net/ 
[email protected] -
http://www.topclusters.org/ 


The Open Cluster Group
http://www.OpenClusterGroup.org/ 

System Installer, SystemImager, System Configurator
http://sisuite.sourceforge.net 
http://www.systemimager.org 
http://systemconfig.sourceforge.net 

SysAdmin Mag: Recursive Use of SystemImager for Cloning Clusters
http://www.samag.com/articles/2003/0301/  - not avail online yet

SysAdmin Mag: Unifying Web Clusters with Spread
http://www.samag.com/documents/s=7789/sam0302a/0302a.htm 

SysAdmin Mag: Configuring Red Hat's High-Availability Server
http://www.samag.com/documents/s=1152/sam0104g/0104g.htm 

SysAdmin Mag: Remote Installation of Heterogeneous Linux Clusters
Using
LUI
http://www.samag.com/articles/2001/0104/ 

Beowulf clusters: Measuring and implementing multiple parallel CPUs
http://www-106.ibm.com/developerworks/library/l-beow.html 

IBM: Cluster Starter Kit for Linux -> Cluster Systems Management (CSM)
for Linux
http://www-1.ibm.com/servers/eserver/clusters/software/ 

IBM: Linux Clustering with Mosix - tutorial
http://www-105.ibm.com/developerworks/education.nsf/linux-onlinecourse-bytitle/F86D74C7B3B4E65486256B2900073A2E?OpenDocument

https://www6.software.ibm.com/developerworks/education/l-mosix/ 

Mosix.org
http://www.mosix.org/ 

MOSIX pumps up the penguin
http://www.itworld.com/Comp/1048/lw-01-mosix/ 

Beowulf Clusters
http://www.beowulf.org/beowulf/projects.html 

PVM (Parallel Virtual Machine) -- permits a heterogeneous collection
of
Unix and/or NT computers to be used as a single large parallel
computer:
http://www.epm.ornl.gov/pvm/ 

PS and TOP tools -- display information about the location of
processes
in a MOSIX cluster:
http://www.mosix.cs.huji.ac.il/ftps/contrib/mproc-1.01-1.2.9.tar.gz 

Linux Virtual Server project:
http://www.linuxvirtualserver.org 

TurboLinux Cluster Server is a clustering product that increases
performance for applications and Internet services:
http://www.turbolinux.com/products/tcs/ 

TurboLinux EnFuzion allows the assembly of a supercomputer from
workstations running on a LAN:
http://www.turbolinux.com/products/enf/ 

QPS is a GUI process manager built on top of the Qt library. QPS
versions after 1.9.7 can display MOSIX-specific fields:
http://www.student.nada.kth.se/~f91-men/qps/ 

Piranha is a cluster solution developed by Red Hat with load
balancing,
internode replication, and fault tolerance. It is a part of the Red
Hat
High Availability Server:
http://sources.redhat.com/piranha/ 

Linux High Availability Project:
http://www.linux-ha.org 

Message Passing Interface (MPI) package:
http://www.erc.msstate.edu/labs/hpcl/projects/mpi/ 

CluClo -- automatic tool for cloning whole OS between cluster nodes:
http://www.linuxberg.com/conhtml/preview/38999.html 


Subject: LVM, Journaling File Systems, Batch Processing

Linux Magazine | October 2002 | Journaling File Systems
http://www.linux-mag.com/2002-10/jfs_01.html 

Linux Magazine | EXTREME LINUX | Job Scheduling and Batch Systems
<http://www.linux-mag.com/2002-10/jfs_01.html>http://www.linux-mag.com/2002-10/extreme_01.html


Enterprise Volume Management System (EVMS) Project
http://evms.sourceforge.net/ 

<http://www.linux-mag.com/2002-10/jfs_01.html> LVM - George
[email protected]
http://www.linuxjournal.com/article.php?sid=5957 
http://www.hawaiianharddrive.com/articleview.cfm?articleid=149 
http://www-106.ibm.com/developerworks/linux/library/l-lvm/ 
http://www.linux-mag.com/2000-11/guru_02.html 
<http://www.linux-mag.com/2002-10/jfs_01.html>

-End FireHose... GL, [email protected]

-- PGPID=0x710B8A1F
Art Wildman/ITO - 
National Weather Service, JAX FL. -

Alex wrote:

>Hi List,
>
>I am in the process of setting up a small 4-PC cluster for scientific
>calculations at my lab. It will be running with SuSE Linux 8.2 if for
no
>other reason than that I am used to it and have the CDs. I'd like to
get
>some input from the list about how to set things up.
>
>1. Each node has its own 80 GB hard drive holding /, /var, and /tmp
>partitions. Particularly, /tmp is necessary to be local as it will
hold
>much of the intermediate files that are generated in the calculations.
On
>the other hand, I'd like to have just one /home partition on the
master
>node, either on a separate HD or as part of its main HD. How do I set
>things up to make sure that all slave nodes see /home?
>
>2. Networking will be done through a 1 GB switch to which the four
nodes
>are hooked up. I also have a separate NIC for the master node to go to
the
>general internet. What are some of the points to watch out for when
>setting up the local network?
>
>3. What would be the most efficient way to install the operating
system
>and extra software on the nodes? I guess I could install one and burn
a
>bootable CD that could then be plugged into the others to safe time
(well
>I'd have to attach the CD-ROM to each one in turn). Or, I could hook
up
>each individual hard drive to the machine that I install first and
simply
>disk dump. Would an install from the local network work, too? That
would
>avoid the problem of having to switch drives between PCs.
>
>4. Finally, can you please point me to web resources that would teach
me
>more about how to set things up?
>
>Thank you very much in advance, Alex.
>

Thanks very much (again) and Happy Holidays,

Dave


>>> "Dave Warchol" <[email protected]> 12/16/03 03:05PM >>>
Hello all:
           Charged with investigating the possibility of building a 5
node linux cluster to support load balancing for a specific
application.
 Any all information is welcome (links, products, etc.).  I will
summarize.  I apologize for not being more specific, the request
details
are fairly thin at this point.

Thanks
Dave   
submissions: LinuxManagers-35TzE1X9F6582KRnZfj+bdi2O/[email protected] 
subscribe/unsubscribe:
http://www.linuxmanagers.org/mailman/listinfo/linuxmanagers
_______________________________________________
LinuxManagers mailing list - http://www.linuxmanagers.org
submissions: LinuxManagers-35TzE1X9F6582KRnZfj+bdi2O/[email protected]
subscribe/unsubscribe: http://www.linuxmanagers.org/mailman/listinfo/linuxmanagers