Installation of EOS FST for federated cloud

Test log

Tested on

CentOS 6.7

-- EygeneRyabinkin

Installation process

Base system and repositories

Standard software repositories:

EOS repository (users of Scientific Linux and its derivatives should use alternative files, see below):
cat << EOF > /etc/yum.repos.d/eos.repo
[eos-aquamarine]
name=EOS aquamarine, modern location
baseurl=https://dss-ci-repo.web.cern.ch/dss-ci-repo/eos/aquamarine/tag/el-$releasever/$basearch/
gpgcheck=0
enabled=1
priority=45

[eos-aquamarine-depends]
name=EOS aquamarine, dependencies
baseurl=https://dss-ci-repo.web.cern.ch/dss-ci-repo/eos/aquamarine-depend/el-$releasever-$basearch/
gpgcheck=0
enabled=1
priority=45
EOF

Scientific Linux and its derivatives have major.minor $releasever, so for these OS variants we should hardcode mainline version into repo files:

cat << EOF > /etc/yum.repos.d/eos.repo
[eos-aquamarine]
name=EOS aquamarine, modern location
baseurl=https://dss-ci-repo.web.cern.ch/dss-ci-repo/eos/aquamarine/tag/el-6/$basearch/
gpgcheck=0
enabled=1
priority=45

[eos-aquamarine-depends]
name=EOS aquamarine, dependencies
baseurl=https://dss-ci-repo.web.cern.ch/dss-ci-repo/eos/aquamarine-depend/el-6-$basearch/
gpgcheck=0
enabled=1
priority=45
EOF

Use yum-priorities plugin and make EOS repository priority higher than EPEL one (default priority is 99, lower number gives more priority).

Packages

Install packages:

yum install -y eos-server eos-client eos-nginx eos-fuse eos-test eos-apmon eos-cleanup jemalloc nscd

Authentication between MGM and FST

Install EOS keytab: to be done by central team. Keytab ownership/mode must be tweaked:

chmod 400 /etc/eos.keytab
chown daemon:daemon /etc/eos.keytab

Firewall

Firewall configuration:

  • FST allows incoming connections to the port 1095 from the world: it is the main client port for getting the data

EOS FST configuration

Edit standard SysV -init script configuration:

cat << EOF > /etc/sysconfig/eos
XRD_ROLES="fst"
export EOS_MGM_ALIAS="muon.grid.kiae.ru"
export EOS_MGM_URL="root://${EOS_MGM_ALIAS}:1097"
export EOS_BROKER_URL="root://${EOS_MGM_ALIAS}:1097//eos"
APMON_INSTANCE_NAME=ALICE::KIAE-RUFED::EOS_xrootd
MONALISAHOST=aliendb2.cern.ch
EOF

You can customize EOS_MGM_ALIAS to your taste and project requirements.

Filesystems and registration at MGM

All filesystems where data will be kept are to be mounted under /eosXY, like

/dev/cciss/c0d1 /eos01 xfs defaults 0 0
/dev/cciss/c0d2 /eos02 xfs defaults 0 0
/dev/cciss/c0d3 /eos03 xfs defaults 0 0

One can use any filesystem, but XFS and ext4 are preferred.

The script that will mark your filesystems for EOS:

#!/bin/sh

GROUP=default
OWNER=daemon:daemon

mark_fs() {
[ -z "$1" ] && return
if ! [ -d "$1" ]; then
echo "No such directory '$1'." >&2
exit 1
fi

UUID_FILE="$1"/.eosfsuuid
if [ -e "$UUID_FILE" ]; then
uuid=$(cat "$UUID_FILE")
else
uuid=$(uuidgen)
echo "$uuid" > "$UUID_FILE"
chown "$OWNER" "$UUID_FILE"
fi
echo "eos -b fs add $uuid $(hostname --fqdn):1095 $1 default.${2:-0} rw"
}

group=0
for i in "$@"; do
group=$(($group + 1))
mark_fs "$i" "$group"
done

Save it and run, it will give you the commands to be executed on MGM nodes to register your filesystems,

# /root/mark-eos-fs.sh /eos01 /eos02 /eos03
eos -b fs add 1148556e-5a92-41db-a504-767956d4be7c xr15.grid.kiae.ru:1095 /eos01 default.1 rw
eos -b fs add abe8e289-ab55-44bf-83da-6a338e54dfeb xr15.grid.kiae.ru:1095 /eos02 default.2 rw
eos -b fs add 1bd2d034-0026-4784-b2ea-1e3f67538676 xr15.grid.kiae.ru:1095 /eos03 default.3 rw

After your filesystems will be registered in MGMs, one should restart EOS services:

service eos restart

remarks

  • On MGM sever:
    • Change node status
# eos node set $fsthostname on
    • Open tcp ports 1097, 1096 for new fst

  • On FST srver
    • check output of command "hostname"
    • Add to file /etc/sysconfig/eos line
export EOS_GEOTAG="DOMAIN NAME"
    • BUG: install libmicrohttpd from eos repo by hand:
yum -y install https://dss-ci-repo.web.cern.ch/dss-ci-repo/eos/aquamarine-depend/el-6-x86_64/libmicrohttpd-0.9.38-eos.slc6.x86_64.rpm

-- EygeneRyabinkin - 2016-03-04

Edit | Attach | Watch | Print version | History: r9 < r8 < r7 < r6 < r5 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r9 - 2016-08-25 - AndreyZarochentsev
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback