Difference between revisions of "Upgrading Quattor managed glite servers"

From PDP/Grid Wiki
Jump to navigationJump to search
Line 4: Line 4:
 
== As ndpfmgr@stal ==
 
== As ndpfmgr@stal ==
  
# Run the skript  ~/bin/mirror-glite-3.1
+
* Run the skript  ~/bin/mirror-glite-3.1
  
 
This creates a Quattor template file in /tmp which can be used to create a cern-mirror of the latest glite in /project/quattor/www/html/mirror/glite
 
This creates a Quattor template file in /tmp which can be used to create a cern-mirror of the latest glite in /project/quattor/www/html/mirror/glite
Line 13: Line 13:
 
First argument of rpmUpdates.pl script is the directory of the mirror created as ndpfmgr before.
 
First argument of rpmUpdates.pl script is the directory of the mirror created as ndpfmgr before.
  
# $L/..//bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-i386
+
* $L/..//bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-i386
# $L/../bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-x86-64  
+
* $L/../bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-x86-64  
# cd $L/cfg
+
* cd $L/cfg
# cp /tmp/glite-3.1-update-31.tpl ./  
+
* cp /tmp/glite-3.1-update-31.tpl ./  
# cd $L/cfg/grid/glite-3.1/update/
+
* cd $L/cfg/grid/glite-3.1/update/
# cp -a 29 31
+
* cp -a 29 31
# find $L/cfg/grid/glite-3.1/update/31 -type d -name CVS -exec rm -rf {} \; (delete the CVS files, this command will change when moving to subversion)
+
* find $L/cfg/grid/glite-3.1/update/31 -type d -name CVS -exec rm -rf {} \; (delete the CVS files, this command will change when moving to subversion)
# for file in `grep -H -r "/29/" 31/* |awk -F : '{print $1}'`; do  sed -i "s/\/29\//\/31\//g" $file; done (replace the old update nr with the new one).
+
* for file in `grep -H -r "/29/" 31/* |awk -F : '{print $1}'`; do  sed -i "s/\/29\//\/31\//g" $file; done (replace the old update nr with the new one).
# replace the entries in $L/cfg/grid/glite-3.1/update/31/{i386,x86_64}/rpms.tpl with entries in glite-3.1-update-31.tpl, take care to uncomment torque packages and that the manualy added packages are appended.
+
* replace the entries in $L/cfg/grid/glite-3.1/update/31/{i386,x86_64}/rpms.tpl with entries in glite-3.1-update-31.tpl, take care to uncomment torque packages and that the manualy added packages are appended.
# rm  $L/cfg/glite-3.1-update-31.tpl (file copied  above, will not pass quattor syntax checks.)
+
* rm  $L/cfg/glite-3.1-update-31.tpl (file copied  above, will not pass quattor syntax checks.)
# edit $L/cfg/grid/glite-3.1/glite/defaults.tpl replace update version nr to the actual one (set new update to default version)
+
* edit $L/cfg/grid/glite-3.1/glite/defaults.tpl replace update version nr to the actual one (set new update to default version)
# makexprof -u -f itb tbn09 (try to compile it for some testbed node)
+
* makexprof -u -f itb tbn09 (try to compile it for some testbed node)
# check if the changes for 64 bit are also OK, for example: makexprof -f prd hooi-ei-12   
+
* check if the changes for 64 bit are also OK, for example: makexprof -f prd hooi-ei-12   
# if OK, submit the changes to CVS
+
* if OK, submit the changes to CVS
  
 
== Again as ndpfmgr@stal ==
 
== Again as ndpfmgr@stal ==
 
Get the updates commited as normal user above, confirm they compile, push profile to a testbed node, here are the steps:
 
Get the updates commited as normal user above, confirm they compile, push profile to a testbed node, here are the steps:
  
# cd $/cfg
+
* cd $/cfg
# cvs upd -APd
+
* cvs upd -APd
# makexprof -u -f itb tbn09   
+
* makexprof -u -f itb tbn09   
# pushxprof -u -f itb tbn09
+
* pushxprof -u -f itb tbn09
# if OK, push profiles to itb: makexprof -f itb     
+
* if OK, push profiles to itb: makexprof -f itb     
# pushxprof -f itb
+
* pushxprof -f itb
  
== And finaly, since Quattor somehow has to add its ideas of package managing ==
+
== And finaly-A, since Quattor somehow has to add its ideas of package managing ==
 
If you get noticed, preferably by a monitoring system (if you don't have one -good luck), that something does not work after carefully doing these simple some 20 steps above. You could try the following:
 
If you get noticed, preferably by a monitoring system (if you don't have one -good luck), that something does not work after carefully doing these simple some 20 steps above. You could try the following:
  
# Logon the host who shows problems
+
* Logon the host who shows problems
# tail /var/log/ncm/ncd.log
+
* tail /var/log/ncm/ncd.log
 
  2008/10/02-15:25:30 [INFO] Errors while configuring spma (1)
 
  2008/10/02-15:25:30 [INFO] Errors while configuring spma (1)
 
  2008/10/02-15:25:30 [ERROR] 1 errors, 0 warnings executing configure
 
  2008/10/02-15:25:30 [ERROR] 1 errors, 0 warnings executing configure
 
This tells us, that we actualy have to look into  
 
This tells us, that we actualy have to look into  
# tail /var/log/spma.log
+
* tail /var/log/spma.log
 
  2008/10/02-15:25:28 [WARN] Errors found:
 
  2008/10/02-15:25:28 [WARN] Errors found:
 
  depcheck: package glite-UI 3.1.19-0 needs glite-amga-api-python >= 1.3.0-1
 
  depcheck: package glite-UI 3.1.19-0 needs glite-amga-api-python >= 1.3.0-1
Line 57: Line 57:
 
These packages have to be added to the respective rpm list, don't expect something fancy or advanced as in the package managers (rpm, apt,...) which are around, its a simple text file, but stepwise:
 
These packages have to be added to the respective rpm list, don't expect something fancy or advanced as in the package managers (rpm, apt,...) which are around, its a simple text file, but stepwise:
  
== Again as normal-user@stal ==
+
== And finaly-B, again as normal-user@stal ==
 
Here the package managing for the ui is wrong. Note that you don't add it to the updates directory, this goes to the "base list".
 
Here the package managing for the ui is wrong. Note that you don't add it to the updates directory, this goes to the "base list".
  
Line 69: Line 69:
 
  cvs commit /home/sveng/Quattor/nl.nikhef.ndpf.quattor-config/conf-ns/cfg/grid/glite-3.1/glite/ui
 
  cvs commit /home/sveng/Quattor/nl.nikhef.ndpf.quattor-config/conf-ns/cfg/grid/glite-3.1/glite/ui
  
== Again as ndpfmgr@stal ==
+
== And finaly-C, again as ndpfmgr@stal ==
 +
Get the updates commited as normal user above, confirm that they compile, push profile to the node that misses packets (here bosui, an UI)
 +
 
 +
* cd $/cfg
 +
* cvs upd -APd
 +
* makexprof -u -f prd bosui
 +
* if OK, pushxprof -u -f prd bosui

Revision as of 09:53, 3 October 2008

Upgrading to a new glite release

The following notes were taken during the upgrade from glite-3.1-update-29 to glite-3.1-update-31.

As ndpfmgr@stal

  • Run the skript ~/bin/mirror-glite-3.1

This creates a Quattor template file in /tmp which can be used to create a cern-mirror of the latest glite in /project/quattor/www/html/mirror/glite (fetch release from: http://glitesoft.cern.ch/EGEE/gLite/).

As normal-user@stal

Assuming you have a working Quattor environment, in particular $L points to a usable Quattor checkout. First argument of rpmUpdates.pl script is the directory of the mirror created as ndpfmgr before.

  • $L/..//bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-i386
  • $L/../bin/rpmUpdates.pl /project/quattor/www/html/mirror/glite/3.1/generic/sl4/x86_64/updates/ > /tmp/31-x86-64
  • cd $L/cfg
  • cp /tmp/glite-3.1-update-31.tpl ./
  • cd $L/cfg/grid/glite-3.1/update/
  • cp -a 29 31
  • find $L/cfg/grid/glite-3.1/update/31 -type d -name CVS -exec rm -rf {} \; (delete the CVS files, this command will change when moving to subversion)
  • for file in `grep -H -r "/29/" 31/* |awk -F : '{print $1}'`; do sed -i "s/\/29\//\/31\//g" $file; done (replace the old update nr with the new one).
  • replace the entries in $L/cfg/grid/glite-3.1/update/31/{i386,x86_64}/rpms.tpl with entries in glite-3.1-update-31.tpl, take care to uncomment torque packages and that the manualy added packages are appended.
  • rm $L/cfg/glite-3.1-update-31.tpl (file copied above, will not pass quattor syntax checks.)
  • edit $L/cfg/grid/glite-3.1/glite/defaults.tpl replace update version nr to the actual one (set new update to default version)
  • makexprof -u -f itb tbn09 (try to compile it for some testbed node)
  • check if the changes for 64 bit are also OK, for example: makexprof -f prd hooi-ei-12
  • if OK, submit the changes to CVS

Again as ndpfmgr@stal

Get the updates commited as normal user above, confirm they compile, push profile to a testbed node, here are the steps:

  • cd $/cfg
  • cvs upd -APd
  • makexprof -u -f itb tbn09
  • pushxprof -u -f itb tbn09
  • if OK, push profiles to itb: makexprof -f itb
  • pushxprof -f itb

And finaly-A, since Quattor somehow has to add its ideas of package managing

If you get noticed, preferably by a monitoring system (if you don't have one -good luck), that something does not work after carefully doing these simple some 20 steps above. You could try the following:

  • Logon the host who shows problems
  • tail /var/log/ncm/ncd.log
2008/10/02-15:25:30 [INFO] Errors while configuring spma (1)
2008/10/02-15:25:30 [ERROR] 1 errors, 0 warnings executing configure

This tells us, that we actualy have to look into

  • tail /var/log/spma.log
2008/10/02-15:25:28 [WARN] Errors found:
depcheck: package glite-UI 3.1.19-0 needs glite-amga-api-python >= 1.3.0-1
depcheck: package glite-UI 3.1.19-0 needs glite-amga-cli >= 1.3.0-4
there were 2 dependency problem(s) and 0 conflict(s)

With this information now simply visit the web page which has the rpm list for this particular server, in our case: http://glite.web.cern.ch/glite/packages/R3.1/deployment/glite-UI/3.1.20-0/glite-UI-3.1.20-0.html

These packages have to be added to the respective rpm list, don't expect something fancy or advanced as in the package managers (rpm, apt,...) which are around, its a simple text file, but stepwise:

And finaly-B, again as normal-user@stal

Here the package managing for the ui is wrong. Note that you don't add it to the updates directory, this goes to the "base list".

  • In our example the following should work:
cat << EOF >> $L/cfg/grid/glite-3.1/glite/ui/rpms.tpl
"/software/packages"=pkg_repl("glite-amga-cli","1.3.0-4","i386");
"/software/packages"=pkg_repl("glite-amga-api-python","1.3.0-1","noarch");
EOF
  • makexprof -f prd bosui
  • If compilation is successful proceed with:
cvs commit /home/sveng/Quattor/nl.nikhef.ndpf.quattor-config/conf-ns/cfg/grid/glite-3.1/glite/ui

And finaly-C, again as ndpfmgr@stal

Get the updates commited as normal user above, confirm that they compile, push profile to the node that misses packets (here bosui, an UI)

  • cd $/cfg
  • cvs upd -APd
  • makexprof -u -f prd bosui
  • if OK, pushxprof -u -f prd bosui