[PL #6755] updates - planetlab in a box discussion (bugs found)

jaffe at cs.huji.ac.il via RT devel at planet-lab.org
Sun Nov 27 09:52:14 EST 2005


Email Recipients (see http://www.planet-lab.org/Support)
       Owner: alk
       Requestor: alk at absarokasoft.com
       Ticket Ccs: Thierry.Parmentelat at sophia.inria.fr, abenda at cs.huji.ac.il, alk at absarokasoft.com, alsbergt at cs.huji.ac.il, daniel51 at cs.huji.ac.il, devel-community at lists.planet-lab.org, jaffe at cs.huji.ac.il, jeff.sedayao at intel.com, nakao at iii.u-tokyo.ac.jp, renault.john at epfl.ch, smuir at cs.princeton.edu, winson.c.chan at intel.com

==================================================

I've been trying to install the latest pl_box on an FC4 platform and  
I've found the following problems.  Since I don't have CVS access,  
I'll describe them and let one of you fix it in the tree.

These problems were minor, but painful to debug given that this list  
has claimed multiple times that everything was working.
<flame omitted>

Problem (1)

There is an option in the config file called SERVER_NAME_RESOLVES to  
which the documenation says:
# if the name in SERVER_DNS_NAME doesn't resolve to SERVER_IP,
# set this to 0, and /etc/hosts will be updated for this entry

If you set this to 1, then the entry in the /etc/hosts file is a line  
like
127.0.0.1	myhost.mydomain.edu localhost.localdomain localhost

Now this looks just fine, but in the security file for postgres, the  
IP address of the local machine is added for access my plcmdline.py.

but in /etc/planetlab/plc_db, instead of the IP address, we have the  
host name.

Now because of this, plcmdline.py cannot work (nor can any of the web  
interfaces) because plcmdline.py tries to access the host via  
127.0.01 (TCP), and this is not allowed.

There are many solutions.
The best is to put the host name on a separate line of the /etc/hosts  
file with its correct external IP address.
Alternatively, we should add a line with 127.0.0.1 to the /var/lib/ 
pgsql/data/pg_hda.conf file.

Problem (2)

The setup_plc.sh script attempts to modify the bootcd yum.conf file  
in order to have it download rpm's from the local machine.  This is a  
good idea, but the build.sh scripts in bootcd creates the yum.conf  
file itself (correctly as it turns out).  These lines should be  
deleted from the setup_plc.sh file.

Index: setup_plc.sh
===================================================================
RCS file: /cvs/pl_box/setup_plc.sh,v
retrieving revision 1.64
diff -r1.64 setup_plc.sh
611,612c611,612
<     echo "Forcing boot cd build to use local repository"
<     sed -i "s/boot.planet-lab.org/$SERVER_DNS_NAME/g" yum.conf
---
 >     #echo "Forcing boot cd build to use local repository"
 >     #sed -i "s/boot.planet-lab.org/$SERVER_DNS_NAME/g" yum.conf


Problem (3)

pl_box/update_rpm_repo.sh has an incorrect line for createrepo.  The  
arguments should be . and not ./$dir since we are already in that  
directory when this is run.

Index: update_rpm_repo.sh
===================================================================
RCS file: /cvs/pl_box/update_rpm_repo.sh,v
retrieving revision 1.4
diff -r1.4 update_rpm_repo.sh
36c36
<       createrepo $crargs ./$dir
---
 >       createrepo $crargs .

Problem (4)

For FC4, in bootmanager, we need to explicitly tell yum not to use  
the default repositories.  I added the following arguments:

Index: support-files/buildnode.sh
===================================================================
RCS file: /cvs/bootmanager/support-files/buildnode.sh,v
retrieving revision 1.3
diff -r1.3 buildnode.sh
107c107
< yum -c yum.conf --installroot=$VROOT -y install glibc yum
---
 > yum -c yum.conf --installroot=$VROOT --disablerepo=extras -- 
disablerepo=updates-released --disablerepo=base -y install glibc yum
121c121
< yum -c yum.conf --installroot=$VROOT -y groupinstall PlanetLab
---
 > yum -c yum.conf --installroot=$VROOT --disablerepo=extras -- 
disablerepo=updates-released --disablerepo=base -y groupinstall  
PlanetLab

Problem (5)

in the bootcd_v3 directory, for some reason, the yum.conf file does  
not include the BootCD repository, but it does explicitly refer to  
it.  I was able to make it work with the following patch:

cvs diff: Diffing .
Index: build.sh
===================================================================
RCS file: /cvs/bootcd_v3/build.sh,v
retrieving revision 1.26
diff -r1.26 build.sh
103a104,107
 >
 > [BootCD]
 > name=BootCD RPMS -- PlanetLab Central
 > baseurl=http://$PRIMARY_SERVER/install-rpms/bootcd/





More information about the Devel-community mailing list