You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

The basic setup was done with internet access in the SLAC group C lab
  • 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-rpms
yum install devtoolset-4

Install ROOT and cmake3 from EPEL 7

yum install epel-release
yum-config-manager --enable epel
yum install root
yum 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 6

cd /home/beam/eudaq/build

cmake3 ..

make

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 

 (cd build.rce ; make -j4  ) && ( cd build.host; make -j4 )

 

 

  • No labels