Simple Load-balancing

Rigler, Steve srigler at marathonoil.com
Fri Aug 20 15:41:23 UTC 2004


OpenSSI can migrate processes to the least busy node.  OpenMosix does
the same.

If you're not interested in making such a drastic change to your cluster
some sort of job scheduler would accomplish this as well.  The benefit
of this is that if you foresee your environment becoming heterogenous
(suppose you want to try combining IA32 and 64bit architectures), a job 
scheduler can act as a front end and send jobs to the appropriate
platform/architecture.  This type of solution would require some user-
education (I'd just assume write a wrapper for the apps so that they
go through the queueing system).

-Steve

-----Original Message-----
From: redhat-list-bounces at redhat.com
[mailto:redhat-list-bounces at redhat.com] On Behalf Of Reuben D. Budiardja
Sent: Friday, August 20, 2004 10:13 AM
To: redhat-list at redhat.com
Subject: Simple Load-balancing


Hi all,
I need some suggestions on how to do this, or some poimter in the right 
direction. I tried to STW, but most of the stuffs that I found is too 
involved or complicated, I think.

Here's the situation. I have a beowulf linux cluster that we primarilly
use 
for parallel computing using MPI. Assume there are 4 nodes in cluster,
called 
node1, node2, etc. Only node1 is can see the world, so from outside,
people 
can only do 'ssh node1'. Then after that, they can go to any other nodes

since the nodes are in a LAN. /home is NFS mounted across all nodes.

However, people also uses this cluster to run application, and
executables 
that does not need parallel computing. The problem is, people would do
'ssh 
node1', then run X apps or executable there. This makes nodes1 the
busiest 
nodes all the time, while other nodes idle (if there are no parallel
job). 

What I'd like to do is to distribute this load automatically. Since all
the 
nodes are homogenous, for most apps and executables it can be run in any

nodes. This may not be so hard if that's all there is to it. The problem
is, 
some program only exist and can be started from node1, ie. we have some 
compilers with only 1 license, thus only exist in node1, parallel job
with 
mpi can only be started from the master node (node1).

So, how do I do:
1. If user just do 'ssh node1' from outside, the user will automatically
be 
'transferred' to the most available node, so that the user run
applications 
from that less busy node.

2. If this user really knows that the program s/he needs only exist in
node1, 
or want to start parallel job, the user can do something like 
'ssh node1 -notransfer', or any other option so that for sure the user
gets to 
node1.

Any suggestion? 

Thanks in advance
RDB
-- 
Reuben D. Budiardja
Dept. Physics and Astronomy
University of Tennesse, Knoxville, TN

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GIT/M/MU/P/S d-(++) s: a-- C++(+++) UL++++ P-- L+++>++++ E- W+++ 
N+ o? K- w--- !O M- V? !PS !PE Y PGP- t+ 5 X R- tv+ 
b++>+++ DI D(+) G e++>++++ h+(*) r++ y->++++
------END GEEK CODE BLOCK------


-- 
redhat-list mailing list
unsubscribe mailto:redhat-list-request at redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list







More information about the redhat-list mailing list