Version 3.0.0 of the QCG-Computing service introduced some major changes in files and configuration layout, namely:
* the layout of the directories adheres now general packages guidances, i.e. service is not installed anymore in `/opt/plgrid` but in standard paths (whit a few minor exceptions):
* configuration is now stored in `/etc/qcg/qcg-comp/`,
* logs can be found in `/var/log/qcg/qcg-comp/`,
* the service and client binaries can be found in `/usr/sbin/` and `/usr/bin` respectively.
* the 5.X Globus packages from EPEL/IGE repository are used (instead of providing it qcg-dep packaged),
* the service can use the host certificate and key from standard location (i.e. /etc/grid-security),
* the service can listen on standard 443 (HTTPs port),
* optional integration with [[VOMSIntegration|VOMS infrastructure]].
This guide aims to help with migration from 2.X version.
= Stop the services =
{{{
/etc/init.d/qcg-compd stop
/etc/init.d/qcg-ntfd stop
}}}
= Update the qcg-comp packges =
{{{
yum clean all
yum update qcg-comp qcg-comp-client qcg-comp-logrotate
}}}
= Update GridFTP to Globus 5.X =
1. Remove the old packages:
{{{
yum erase qcg-dep qcg-dep-gridftp-server
}}}
2. Install new one using this [[GridFTPInstallation|instruction]] as reference.
= Update configuration file =
Upon update the old configuration files should be stored as `.rpmsave files`. Instead of configuring the service from scratch its easier to copy old configuration files and modify just paths in order to adjust to the new directory layout:
* archive and copy
{{{
#save dist file for reference
cp /etc/qcg/qcg-comp/qcg-compd.xml /etc/qcg/qcg-comp/qcg-compd.xml.dist
cp /etc/qcg/qcg-comp/qcg-comp.xml /etc/qcg/qcg-comp/qcg-comp.xml.dist
#copy old configuration files
cp /opt/plgrid/qcg/etc/qcg-comp/qcg-compd.xml.rpmsave /etc/qcg/qcg-comp/qcg-compd.xml
cp /opt/plgrid/qcg/etc/qcg-comp/qcg-comp.xml.rpmsave /etc/qcg/qcg-comp/qcg-comp.xml
cp /opt/plgrid/qcg/etc/qcg-comp/application_mapfile.rpmsave /etc/qcg/qcg-comp/application_mapfile
cp /opt/plgrid/qcg/etc/qcg-comp/sysconfig/qcg-compd.rpmsave /etc/sysconfig/qcg-compd
}}}
* modify /etc/qcg/qcg-comp/qcg-comp**d**.xml by replacing:
{{{
/opt/plgrid/qcg/lib/qcg-core/modules/
/opt/plgrid/qcg/lib/qcg-comp/modules/
...
/opt/plgrid/var/log/qcg-comp/qcg-compd.log
INFO
...
/opt/plgrid/qcg/etc/qcg-comp/certs/qcgcert.pem
/opt/plgrid/qcg/etc/qcg-comp/certs/qcgkey.pem
}}}
* with:
{{{
/usr/lib64/qcg-core/modules/
/usr/lib64/qcg-comp/modules/
...
/var/log/qcg-comp/qcg-compd.log
INFO
...
/etc/grid-security/hostcert.pem
/etc/grid-security/hostcert.pem
...
}}}
* also replace all occurrences of `/opt/qcg/lib/qcg-comp/modules/python/` with `/usr/lib64/qcg-comp/modules/python`, e.g. in VIM it can be done by issuing the following command:
{{{
:%s/\/opt\/plgrid\/qcg\/lib\/qcg-comp\/modules\/python\//\/usr\/lib64\/qcg-comp\/modules\/python/g
}}}
* you may want to edit the `/etc/sysconfig/qcg-compd` and remove all `export` keywords (there are not needed anymore) and leave just key=value pairs
* now you are ready to start the service
{{{
/etc/init.d/qcg-compd start
}}}
* now edit `/etc/qcg/qcg-comp/qcg-comp.xml` and replace
{{{
/opt/plgrid/qcg/lib/qcg-core/modules/
/opt/plgrid/qcg/lib/qcg-comp/modules/
}}}
* with
{{{
/usr/lib64/qcg-core/modules/
/usr/lib64/qcg-comp/modules/
}}}