cvmfs-argo server and client setup
Documentation
CmvFS technical report 2.1-4
Hardware
Server installation and setup
Download RPMs
# wget --no-check-certificate https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-2-4.el6.noarch.rpm
# rpm -ivh cvmfs-release-2-4.el6.noarch.rpm
# wget https://ecsft.cern.ch/dist/cvmfs/kernel/2.6.32-358.18.1.el6/kernel-firmware-2.6.32-358.18.1.el6.aufs21.x86_64.rpm --no-check-certificate
# wget https://ecsft.cern.ch/dist/cvmfs/kernel/2.6.32-358.18.1.el6/kernel-2.6.32-358.18.1.el6.aufs21.x86_64.rpm --no-check-certificate
# wget https://ecsft.cern.ch/dist/cvmfs/cvmfs-2.1.15/cvmfs-server-2.1.15-1.el6.x86_64.rpm --no-check-certificate
# wget https://ecsft.cern.ch/dist/cvmfs/cvmfs-2.1.15/cvmfs-2.1.15-1.el6.x86_64.rpm --no-check-certificate
# yum install -y awstats webalizer
Server installation
# yum localinstall kernel*.rpm
# reboot
# yum localinstall cvmfs*.rpm
Setup cvmfs repository
# /etc/init.d/httpd restart
# adduser argo
# cvmfs_server mkfs argo
Owner of argo. [root]: argo
Creating configuration files... done
Creating CernVM-FS master key for argo. in /etc/cvmfs/keys/argo..pub... done
Creating self-signed certificate for argo. in /etc/cvmfs/keys/argo..crt... done
Create CernVM-FS Storage... done
Create Initial Repository... done
Mounting CernVM-FS Storage... done
Initial commit... New CernVM-FS repository for argo.
Before you can install anything, call `cvmfs_server transaction`
to enable write access on your repository. Then install your
software in /cvmfs/argo. as user argo.
Once you're happy, publish using `cvmfs_server publish`
For client configuration, have a look at 'cvmfs_server info'
If you go for production, backup you software signing keys in /etc/cvmfs/keys/!
# cvmfs_server transaction
# ls /cvmfs/
argo.
* - nofile 8192
in the file
/etc/security/limits.d/90-nproc.conf
# ulimit -n
8192
Software installation
- As
root
type cvmfs_server transaction
- Install software in
/cvmfs/argo
as user argo
# su - argo
$ cd /cvmfsargo./
$ pwd
/cvmfs/argo.
-bash-3.2$ ls
new_repository
-bash-3.2$ cat helloworld.sh
#!/bin/sh
echo "Welcome on cvmfs for argo VO"
chmod +x helloworld.sh
How to publish cvmfs repository
As
root
exec
cvmfs_server publish
(but outside the directory
/cvmfs/argo.
)
# cvmfs_server publish
Processing changes...
[add] /cvmfs/argo./helloworld.sh
Waiting for upload of files before committing...
Committing file catalogs...
Exporting repository manifest
Signing /var/spool/cvmfs/argo./tmp/manifest
Remounting newly created repository revision
cron to update the signature of a repository
# cat /etc/cron.weekly/cvmfs-resign.cron
#!/bin/sh
date >>/var/log/cvmfs-resign.log
/usr/bin/cvmfs_server info|grep valid >>/var/log/cvmfs-resign.log
/usr/bin/cvmfs_server resign >>/var/log/cvmfs-resign.log
/usr/bin/cvmfs_server info|grep valid >>/var/log/cvmfs-resign.log
# chmod +x /etc/cron.weekly/cvmfs-resign.cron
cvmfs repository info
# cvmfs_server info
Repository name: argo.
Created by CernVM-FS 2.1.10
Stratum1 Replication Allowed: no
Whitelist is valid for another 29 days
Client configuration:
Add argo. to CVMFS_REPOSITORIES in /etc/cvmfs/default.local
Create /etc/cvmfs/config.d/argo..conf and set
CVMFS_SERVER_URL=http://localhost/cvmfs/argo.
CVMFS_PUBLIC_KEY=/etc/cvmfs/keys/argo..pub
Copy /etc/cvmfs/keys/argo..pub to the client
Repository structure
TODO
Client setup
WN and UI
cvmfs repository
# SL5x/CentOS5x
wget --no-check-certificate https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-2-4.el5.noarch.rpm
rpm -ivh cvmfs-release-2-4.el5.noarch.rpm
# SL6x/CentOS6x
wget --no-check-certificate https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-2-4.el6.noarch.rpm
rpm -ivh cvmfs-release-2-4.el6.noarch.rpm
Client installation and setup
# yum install cvmfs-keys cvmfs cvmfs-init-scripts
# cvmfs_config setup
Starting CernVM-FS: [ OK ]
# cat /etc/cvmfs/default.local
CVMFS_REPOSITORIES=argo.
# ll /etc/cvmfs/keys/
total 24
[...]
-r--r--r-- 1 root root 451 Sep 25 16:24 argo..pub
# cat /etc/cvmfs/config.d/argo..conf
CVMFS_SERVER_URL=http://cvmfs-argo.cnaf.infn.it/cvmfs/argo.
CVMFS_PUBLIC_KEY=/etc/cvmfs/keys/argo..pub
CVMFS_HTTP_PROXY="http://squid01.cnaf.infn.it:3128|http://squid02.cnaf.infn.it:3128"
Download the public key to (
/etc/cvmfs/keys/argo..pub
) from
HERE
# /etc/init.d/autofs restart
# chkconfig autofs on
Client test
cvmfs_config chksetup
# cvmfs_config chksetup
OK
cvmfs_config showconfig
# cvmfs_config showconfig argo.
CVMFS_REPOSITORY_NAME=argo.
CVMFS_USER=cvmfs # from /etc/cvmfs/default.conf
CVMFS_NFILES=65536 # from /etc/cvmfs/default.conf
CVMFS_CACHE_BASE=/var/lib/cvmfs # from /etc/cvmfs/default.conf
CVMFS_CACHE_DIR=/var/lib/cvmfs/shared # from
CVMFS_MOUNT_DIR=/cvmfs # from /etc/cvmfs/default.conf
CVMFS_QUOTA_LIMIT=4000 # from /etc/cvmfs/default.conf
CVMFS_SERVER_URL=http://cvmfs-argo.cnaf.infn.it/cvmfsargo. # from /etc/cvmfs/config.d/argo..conf
CVMFS_DEBUGLOG=
CVMFS_HTTP_PROXY=http://squid01.cnaf.infn.it:3128|http://squid02.cnaf.infn.it:3128 # from /etc/cvmfs/config.d/argo..conf
CERNVM_GRID_UI_VERSION=
CVMFS_SYSLOG_LEVEL=
CVMFS_SYSLOG_FACILITY=
CVMFS_TRACEFILE=
CVMFS_TIMEOUT=5 # from /etc/cvmfs/default.conf
CVMFS_TIMEOUT_DIRECT=10 # from /etc/cvmfs/default.conf
CVMFS_PUBLIC_KEY=/etc/cvmfs/keys/argo..pub # from /etc/cvmfs/config.d/argo..conf
CVMFS_KEYS_DIR=/etc/cvmfs/keys # from /etc/cvmfs/default.conf
CVMFS_MAX_TTL=
CVMFS_RELOAD_SOCKETS=/var/run/cvmfs # from /etc/cvmfs/default.conf
CVMFS_DEFAULT_DOMAIN=
CVMFS_MEMCACHE_SIZE=
CVMFS_KCACHE_TIMEOUT=
CVMFS_ROOT_HASH=
CVMFS_REPOSITORIES=argo. # from /etc/cvmfs/default.local
CVMFS_PROXY_RESET_AFTER=300 # from /etc/cvmfs/default.conf
CVMFS_MAX_RETRIES=1 # from /etc/cvmfs/default.conf
CVMFS_BACKOFF_INIT=2 # from /etc/cvmfs/default.conf
CVMFS_BACKOFF_MAX=10 # from /etc/cvmfs/default.conf
CVMFS_IGNORE_SIGNATURE=no # from /etc/cvmfs/default.conf
CVMFS_STRICT_MOUNT=no # from /etc/cvmfs/default.conf
CVMFS_SHARED_CACHE=yes # from /etc/cvmfs/default.conf
CVMFS_NFS_SOURCE=no # from /etc/cvmfs/default.conf
CVMFS_NFS_SHARED=
CVMFS_CHECK_PERMISSIONS=yes # from /etc/cvmfs/default.conf
CVMFS_AUTO_UPDATE=
CVMFS_MOUNT_RW=no # from /etc/cvmfs/default.conf
Software check
# /cvmfs/argo./helloworld.sh
Welcome on cvmfs for argo VO
cvmfs_config stat
# cvmfs_config stat
Running /usr/bin/cvmfs_config statargo.:
VERSION PID UPTIME(M) MEM(K) REVISION EXPIRES(M) NOCATALOGS CACHEUSE(K) CACHEMAX(K) NOFDUSE NOFDMAX NOIOERR NOOPEN HITRATE(%) RX(K) SPEED(K/S) HOST PROXY ONLINE
2.1.14.0 7349 2 23024 2 57 1 28 4096001 0 65024 0 2 50 3 n/a http://cvmfs-argo.cnaf.infn.it/cvmfs/argo. http://squid02.cnaf.infn.it:3128 1
--
PaoloVeronesi - 2013-12-02