- Install CentOS 7 (Minimal Compute Node and Development Tools)
- Add an user named "beam"
- Disable selinux by editing /etc/selinux/config and setting SELINUX=disabled
- Disable firewall by running: systemctl disable firewalld && systemctl stop firewalld
Installation of additional packages needed to compile the EUDAQ software
EUDAQ requires gcc version 4.9 or higher. Installation of gcc 6 from devtoolset-4
yum install centos-release-scl
yum-config-manager --enable rhel-server-rhscl-7-rpmsyum install devtoolset-4
Install ROOT and cmake3 from EPEL 7
yum install epel-releaseyum-config-manager --enable epelyum install rootyum install cmake3
Additional packages needed for EUDAQ
yum install libusb-devel
yum install qt5-qtbase-dev
Other useful/required packages (sshfs = user space ssh filesystem, emacs, etc.)
yum install sshfs emacs xauth
The server box has two ethernet ports. One is used to connect to the restricted ESA network, the second port to connect to a private RCE network.
Configuration of the ESA NIC (edit /etc/sysconfig/network-scripts/ifcfg-enp2s0)
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=enp2s0
UUID=a1104b8c-87b0-4867-b7df-9eca4bb605b2
DEVICE=enp2s0
ONBOOT=yes
IPADDR=172.27.104.45
PREFIX=22
GATEWAY=172.27.104.1
Configuration of the RCE NIC (edit /etc/sysconfig/network-scripts/ifcfg-enp3s0)
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=enp3s0
UUID=7689a12c-c8f6-43af-9d42-062a5e4967a2
DEVICE=enp3s0
ONBOOT=yes
IPADDR=192.168.1.1
PREFIX=24
Install and configure a dhcp server for the RCE network
yum install dhcp
systemctl start dhcpd
systemctl enable dhcpd
Edit /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
host rce0 {
hardware ethernet 08:00:56:00:45:10 ;
fixed-address 192.168.1.10;
}
host rce1 {
hardware ethernet 08:00:56:00:45:00;
fixed-address 192.168.1.11;
}
host rce2 {
hardware ethernet 08:00:56:00:46:21;
fixed-address 192.168.1.12;
}
}
Append RCE defintions to /etc/hosts
192.168.1.10 rce0
192.168.1.11 rce1
192.168.1.12 rce2
To allow updates in the restricted network yum needs to be configured to use a SOCKS5 proxy.
(Recipe for ssh tunnel for the SOCK5 proxy need to be defined/tested for ESA)
Edit /etc/yum.conf and add the line below to the "main" section:
proxy=socks5h://localhost:1080
Accessing the internet through a double hop ssh SOCKS5 proxy for yum and git.
This is using ar-eudaq and rhel32-6 as hops, localhost:1080 as SOCKS5 proxy, localhost:2222 as ssh forward to rhel6-32
ssh -t -L 1080:localhost:9696 -L2222:localhost:2222 <your_slac_user_name>@172.27.100.8 ssh -L2222:localhost:22 -D 9696 rhel6-32 -N
Compiling EUDAQ.
As user "beam" run
git config --global http.proxy 'socks5h://127.0.0.1:1080' #setup git proxy
git clone -b v1.7.0 https://github.com/eudaq/eudaq.git
mkdir /home/beam/afs
#use sshfs to mount AFS
sshfs -p 2222 <your_slac_user_name>@localhost:/afs /home/beam/afs
cp -r /home/beam/afs/desy.de/group/telescopes/tlu/ZestSC1 /home/beam/eudaq/extern
cp -r /home/beam/afs/desy.de/group/telescopes/tlu/tlufirmware /home/beam/eudaq/extern
#unmount AFS
fusermount -u /home/beam/afs
source /opt/rh/devtoolset-4/enable #enable gcc 4.9
cd /home/beam/eudaq/build
cmake3 -DBUILD_tlu=ON -DTLUFIRMWARE_PATH=/home/beam/eudaq/extern/tlufirmware ..
make
make install #this installs to /home/beam/eudaq/bin and lib
Installing RCE SDK as root
mkdir /opt/AtlasRceSdk
cd /opt/AtlasRceSdk
curl --socks5-hostname 127.0.0.1:1080 http://rceprojectportal.web.cern.ch/RceProjectPortal/software/SDK/V0.11.1.tar.gz | tar xvfz -
Obtaining and compiling the RCE software as user "beam"
git clone --recurse-submodules https://:@gitlab.cern.ch:8443/rce/pixelrce.git
cd pixelrce/rce
source /opt/rh/devtoolset-4/enable
source scripts/setup-dev.sh
Setting up an RCE with static IP
make sure the ntp daemon is installed and enabled:
yum install ntp
Edit /etc/ntp.conf and replace server definitions by
server 172.27.100.16
systemctl start ntpd
systemctl start enable ntpd
Edit /etc/rc.local
ntpdate -s 172.27.100.16
touch /var/lock/subsys/local
Fix permissions
chmod +x /etc/rc.d/rc.local
Edit /etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
TYPE=ethernet
BOOTPROTO=none
DEVICE=eth0
NETMASK=255.255.252.0
IPADDR=172.27.104.52
DNS1=134.79.111.111
GATEWAY=172.27.104.1
ONBOOT=yes
NM_CONTROLLED=no
IPV4_FAILURE_FATAL=no
IPV6INIT=no