TDAQ SW Migration Process
Introduction
This page shows the steps to follow when migrating to a new tdaq version at the Valencia Lab Setup.
Preparation
First off, we are going to create a copy of the current tdaq folder. For example, let's say we want to migrate from
tdaq-09-00-00 to
tdaq-09-02-01:
cp -ar tdaq-09-00-00/ tdaq-09-02-01/
Installation
Once we have a copy, we start working on this one. We can reuse the database, but we have to check if there are some files that have to be updated with the new version number.
For the ROS and ROD, databases have not been changed at all, but for SWROD we had to replace some files with the newest ones that can be found here:
/cvmfs/atlas.cern.ch/repo/sw/tdaq/tdaq/tdaq-09-02-01/swrod/
Maybe in future releases this is not needed.
File setup_daq.sh
One file that has to be modified for sure is the setup_daq.sh, were we have to
replace all the tdaq-09-00-00 and tile.9.0.0.0 with tdaq-09-02-01 and tile-9.2.1.0 respectively.
This file has been modified to be used at the IFIC lab setup. Original file can be found at:
/afs/cern.ch/atlas/project/TicalOnline/runtime/tdaq-09-02-01
File clean_tdaq.sh
This file is used to clean the Tile partition and all the TDAQ files. As previously done with the other files, replace the
tdaq-09-00-00 string to the new version.
TDAQ Drivers
A new location has been set for the TDAQ Drivers. New location is at
/work/TDAQ_DRIVERS/
Add new drivers
New drivers are located at
tilerod@sbctil-rod-01, at the following route:
/sw/tdaq/drivers/
Here we'll find a few folders, were we'll have to copy the one ralted with the new TDAQ version number, i.e. following the example:
/sw/tdaq/drivers/drivers-09-02-01-x86_64/
We need to copy this folder into the following route:
/work/TDAQ_DRIVERS/drivers/
Now we apply the folowing commands:
cd /work/TDAQ_DRIVERS/drivers/drivers-09-02-01-x86_64
sudo rm -rf tdaq-release-inst
sudo ln -sf tdaq-release-inst /cvmfs/atlas.cern.ch/repo/sw/tdaq/tdaq/tdaq-09-02-01/installed/
These commands remove an existing
tdaq-release-inst folder at the drivers folder to replace it by a symbolic link that points to cvmfs.
REMEMBER to replace all the tdaq-09-02-01 with the newer version number
Drivers and kernel
At the /work/TDAQ_DRIVERS/drivers/drivers-09-02-01-x86_64 we can find all the drivers needed for the TDAQ, but it is possible that the current kernel version of your computer doesn't fully match with the version of the driver.
To check the kernel version number of the computer, type:
uname -r
In our case, we got the following response at
tical01:
3.10.0-1160.11.1.el7.x86_64
Then we check all the files and find the one that matches with the major release, in our case
3.10.0-1160, and replace all the number by the one from our kernel.
Here's an example:
cp cmem_rcc-3.10.0-1160.2.2.el7.x86_64.ko cmem_rcc-3.10.0-1160.11.1.el7.x86_64.ko
Repeat this process for all the drivers of this folder.
Configuration files
Configuration files are located at
/work/TDAQ_DRIVERS/daq-drivers/clients-configs/
Here we will find a few files, but we are interested in
tical01 and
rcc04 as are the ones nedded for the configuration for each one of these computers.
We need to replace in these files all the references to the old version of tdaq to the new version.
Automatic start
This should be optional as we are not going to change the location of
/work/TDAQ_DRIVERS folder, but we'll keep this here as a reference.
To start the drivers at boot time, we'll follow the following guide:
https://www.golinuxcloud.com/run-script-at-startup-boot-without-cron-linux/
In our case, the service is located at:
/etc/systemd/system/tdaq_drivers.service
We have to modify the routes to
TDAQ_DRIVERS in this file in case we moved the directory to a different location.
We enable the service using the following command:
sudo systemctl enable tdaq_drivers.service
REMEMBER to do this in both tical01 and rcc04
Possible issues
Firewall
In case we have some issues with the connectivity, might be that the firewall has loaded a wrong configuration.
To check so we execute the following command:
sudo iptables --list
If the output doesn't show something like this:
ACCEPT tcp -- 192.168.0.0/24 anywhere state NEW tcp dpt:sunrpc
ACCEPT udp -- 192.168.0.0/24 anywhere state NEW udp dpt:sunrpc
ACCEPT udp -- 147.156.0.0/16 anywhere state NEW udp dpt:sunrpc
ACCEPT tcp -- 147.156.0.0/16 anywhere state NEW tcp dpt:sunrpc
Then execute the following command:
sudo iptables-restore /home/tdaq/iptables-tical01-NOportmapperv2
Major updates:
--
AntonioCervelloDuato - 2021-02-09 - Added firewall issues
--
AntonioCervelloDuato - 2021-02-08 - First draft of the page
--
AntonioCervelloDuato - 2021-02-03