<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 5.50.4522.1800" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV>
<DIV><FONT face=Arial size=2>People,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>The start poin is:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Im new in beowulf and ive decided to construct a 
beowulf machine based in the tutorial of Starling (see </FONT><A 
href="http://www.cacr.caltech.edu/beowulf"><FONT face=Arial 
size=2>http://www.cacr.caltech.edu/beowulf</FONT></A><FONT face=Arial size=2> 
):</FONT></DIV>
<DIV><FONT face=Arial size=2>The tutorial is divided in:</FONT></DIV>
<DIV><FONT face=Arial size=2>1) Introduction of Beowulf:</FONT></DIV>
<DIV><FONT face=Arial size=2>2) Planning the system: About the hardware and some 
informations about the partition configuration, etc...</FONT></DIV>
<DIV><FONT face=Arial size=2>3) Software Installation: </FONT></DIV>
<DIV><FONT face=Arial size=2>Its the maily point of my doubts. </FONT></DIV>
<DIV><FONT face=Arial size=2>Ive cut and paster the item 3 of the tutorial (see 
bellow):</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial 
size=2>/-------------------------------------------</FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>To make the system as easy as 
possible to maintain, plan on making all compute nodes identical, i.e. same 
partition sizes, same software and same configuration files. This makes the 
software a whole lot easier to install and maintain. For partition sizes, I like 
to give 128 MB to root, 2X memory for swap partition for less than 128 MB RAM, 
1X memory if you have 128 MB or more RAM. Some people would say, "Why have any 
swap space at all?" For most usage, swapping should not happen on the compute 
nodes, but accidents happen. For /usr partition it really depends on the number 
of packages you are planning to install, about 800 MB should go a long way for 
most systems.</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2>I recommend installing at least the 
following, if you are installing </FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2>RedHat or Mandrake 
Linux:</FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2> Basic System Software, 
including networking software <BR> Kernel Sources <BR> C, C++, g77 
compilers and libraries <BR> X11 with development libraries <BR> xntp 
or another time synchronizer <BR> autofs <BR> rsync </FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2>To install these packages, please 
follow the standard instructions that come with the Linux distribution you 
choose to use. You want to try to install all you need, before you start the 
cloning process. There are a few files that you probably want to edit before 
cloning the system:</FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2> /etc/hosts 
<BR> /etc/hosts.equiv <BR> /etc/shosts.equiv <BR> /etc/fstab 
<BR> /etc/pam.d/rlogin <BR> /etc/ntp.conf <BR> /etc/lilo.conf 
<BR> /etc/exports <BR> /etc/auto.master <BR> /etc/auto.beowulf 
<BR></FONT></DIV>
<DIV><FONT face=Arial 
size=2>-------------------------------------------/</FONT></DIV>
<DIV><FONT face=Arial size=2>Ive install the first machine. I labed it of 
node00. The clones will be named node01, node02, ..., node07. (My Beowulf will 
be 8 PCs)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Next step:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>For the hosts file, you need to 
list all the names, with aliases, for each node. All nodes need to be listed in 
hosts.equiv and shosts.equiv to let users use rsh commands without creating 
their own .rhosts and .shosts files. In your /etc/pam.d/rlogin file, you want to 
make sure you do not require secure tty when logging into the nodes. To fix 
this, I just switch the order of the modules pam_securetty.so and 
pam_rhosts_auth.so., and end up with the following:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>auth sufficient 
/lib/security/pam_rhosts_auth.so <BR>auth required 
/lib/security/pam_securetty.so <BR>auth required /lib/security/pam_pwdb.so 
shadow nullok <BR>auth required /lib/security/pam_nologin.so <BR>account 
required /lib/security/pam_pwdb.so <BR>password required 
/lib/security/pam_cracklib.so <BR>password required /lib/security/pam_pwdb.so 
shadow nullok use_authtok <BR>session required /lib/security/pam_pwdb.so 
</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>When setting up ntp, have the 
front-end machine (could be node 0) sync up to the outside world and broadcast 
the time to the private network. The nodes will be configured to sync their time 
to the front-end machine. If you don't use a private network, you can have all 
machines sync up to any ntp server.</EM></FONT></DIV>
<DIV><FONT color=#ff0000></FONT> </DIV>
<DIV><FONT face=Arial 
size=2>/-------------------------------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2>Ive done this...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Next step:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>We decided to export scratch 
partitions from all nodes and use autofs to mount these from any node upon 
request. Our exports file looks like:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>/scratch 
n???.cacr.caltech.edu(rw,no_root_squash)</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>The no_root_squash option lets 
root on one node operate as root on any of the mounted files 
systems.</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>To set up autofs, add a line 
like:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 
size=2><EM>/data        
/etc/auto.beowulf         --timeout 
600</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>to the file /etc/auto.master and 
create /etc/auto.beowulf with entries like:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>n000 -fstype=nfs 
n000:/scratch<BR>n001 -fstype=nfs n001:/scratch<BR>n002 -fstype=nfs 
n002:/scratch<BR>n003 -fstype=nfs n003:/scratch</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>On the nodes, you will also want 
to automatically mount home directories from the front-end machine, so you'll 
need to have:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>home -fstype=nfs 
front-end-machine-name:/home</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>added to the /etc/auto.beowulf 
file as well.</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>On the front-end machine I create 
a directory named "local" on the large partition used for home directories, move 
everything from /usr/local to this directory and make a symbolic link to this 
directory from the /usr directory (ex. ln -s /home/local /usr/local). For 
software packages like MPICH and PVM, I install them under /usr/local/mpich and 
/usr/local/pvm on the front-end machine On the nodes /usr/local will will be a 
symbolic link to the NFS mounted file system on the front-end machine. This way 
I only have to maintain the packages in one place. PVM can be found at 
</EM></FONT><A href="http://www.epm.ornl.gov/pvm"><FONT face=Arial color=#ff0000 
size=2><EM>http://www.epm.ornl.gov/pvm</EM></FONT></A><FONT face=Arial 
color=#ff0000 size=2><EM> and MPICH can be found at </EM></FONT><A 
href="http://www.mcs.anl.gov/mpi/mpich"><FONT face=Arial color=#ff0000 
size=2><EM>http://www.mcs.anl.gov/mpi/mpich</EM></FONT></A><FONT face=Arial 
color=#ff0000 size=2><EM>.</EM></FONT></DIV>
<DIV><FONT color=#ff0000></FONT> </DIV>
<DIV><FONT face=Arial size=2>/------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2>My partition configuration is:</FONT></DIV>
<DIV><FONT face=Arial size=2>HD total: 6GB</FONT></DIV>
<DIV><FONT face=Arial size=2>Swap:     400MG</FONT></DIV>
<DIV><FONT face=Arial size=2>/root       1.5 
GB</FONT></DIV>
<DIV><FONT face=Arial 
size=2>/usr         1GB</FONT></DIV>
<DIV><FONT face=Arial size=2>/home      3 
GB</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>After configure the files as described before, i 
istall the first clone a named it node01 as described in item 4 of the 
tutorial:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Item 4 of the tutorial:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>4. The Cloning Process</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>There are different ways to clone 
your first system.  One way is to physically connect a drive to an already 
configured system and then copy the content from one drive to another. Another, 
maybe more elegant method, is to boot the nodes like diskless clients the first 
time and let setup scripts partition and copy the system from tar files or 
another already running system.</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>The first method is simpler, but 
it requires a lot of reboots and power shut downs. This is the only way to do it 
if you don't have a floppy drive in every system. When copying from one drive to 
another there are two simple ways of doing this:</EM></FONT></DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial color=#ff0000 size=2><EM>1. Use dd on the entire drive. If 
your configured drive is hda and the unconfigured is hdb, you would do "dd 
if=/dev/hda of =/dev/hdb". This will take care of partitions as well as boot 
sector and files.</EM></FONT></DIV>
<DIV><FONT color=#ff0000></FONT> </DIV>
<DIV><FONT face=Arial size=2>I used the command dd to clone the 
system.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Testing the systems:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>After doing everything described i expted my clone 
run well. Ive tested criating a user named teste in node00 and node 01. When i 
log in node01 i criate a directory named sun (/home/geraldo/sun). As 
described before the sun wuld be created in the node00, wuld not? Im doing 
something wrong... The exports isnt running... </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Its because my question about scratch partition, 
etc...Then, now im studing the linux configuration, export, autofs, 
etc.</FONT></DIV>
<DIV><FONT face=Arial size=2>I think after understand the nfs, int teory an 
practice, ill be able to complete my beowulf system...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>So, any hint will be great...mainly of someone that 
construt the beowul based in the tutorial of Starling....</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Im using the online tutorial of linux (Linux 
Howto, Deja News, etc), but some pointsre dificult to be 
solved...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Obs: Im sorry my poor english...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Thanks,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Geraldo Pereira de Souza (</FONT><A 
href="mailto:geraldo@cic.unb.br"><FONT face=Arial 
size=2>geraldo@cic.unb.br</FONT></A><FONT face=Arial size=2>)<BR>Laboratrio de 
Sistemas Integrados e Concorrentes - LAICO<BR>Universidade de Braslia - 
UNB</FONT></DIV>
<DIV><FONT face=Arial size=2>Brazil.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>----- Original Message ----- </FONT>
<DIV><FONT face=Arial size=2>From: "Mark Hahn" <</FONT><A 
href="mailto:hahn@physics.mcmaster.ca"><FONT face=Arial 
size=2>hahn@physics.mcmaster.ca</FONT></A><FONT face=Arial 
size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>To: "Carlos O'Donell Jr." <</FONT><A 
href="mailto:carlos@baldric.uwo.ca"><FONT face=Arial 
size=2>carlos@baldric.uwo.ca</FONT></A><FONT face=Arial size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>Cc: <</FONT><A 
href="mailto:beowulf@beowulf.org"><FONT face=Arial 
size=2>beowulf@beowulf.org</FONT></A><FONT face=Arial size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>Sent: Monday, December 10, 2001 6:17 
PM</FONT></DIV>
<DIV><FONT face=Arial size=2>Subject: Re: Scratch 
partition...</FONT></DIV></DIV>
<DIV><FONT size=2><BR><FONT face=Arial></FONT></FONT></DIV><FONT face=Arial 
size=2>> > mount -t tmpfs /dev/shm /tmp<BR>> > <BR>> > And in 
theory, the numbers I've seen tend to show that this is a bit<BR>> > 
faster than having /tmp in the vfs cache path. Though I'm not an <BR>> > 
expert on the topic.<BR>> <BR>> generally, filesystems try to be 
synchronous with metadata,<BR>> that is, directory entries, inodes, 
etc.  so you'd be avoiding<BR>> that traffic by using tmpfs.  file 
*contents* tend to be lazily<BR>> written out by filesystems anyway, so 
there's probably <BR>> no savings there.  (depends on timing)<BR>> 
<BR>> > However, I have noticed that on our compile box<BR>> > 
(since gcc tends to toss it's temp .o files in /tmp) it's a bit lighter<BR>> 
> on the drive.<BR>> <BR>> gcc -pipe avoids that traffic...<BR>> 
<BR>> _______________________________________________<BR>> Beowulf mailing 
list, </FONT><A href="mailto:Beowulf@beowulf.org"><FONT face=Arial 
size=2>Beowulf@beowulf.org</FONT></A><BR><FONT face=Arial size=2>> To change 
your subscription (digest mode or unsubscribe) visit </FONT><A 
href="http://www.beowulf.org/mailman/listinfo/beowulf"><FONT face=Arial 
size=2>http://www.beowulf.org/mailman/listinfo/beowulf</FONT></A></DIV></BODY></HTML>