wiki:Documentation/Manuals/ARCNativeAPELClients

Version 6 (modified by Andrii Salnikov, 11 years ago) (diff)

--

Install ARC BLAHP-logger:

svn co http://trac.grid.org.ua/repos/workarea/arc-misc/arc-blahp-logger /usr/libexec/arc/
mkdir /var/log/arc/accounting/

Make sure arcproxy tool is available on ARC CE node:

yum -y install nordugrid-arc-client

Configure ARC to call logger to write BLAHP log. In the /etc/arc.conf add following configuration and restart A-REX:

authplugin="FINISHED timeout=10,onfailure=pass /usr/libexec/arc/arc-blahp-logger /var/log/arc/accounting/blahp.log- %W %C %I %u ce.fqdn:2811/nordugrid-torque-"

Install APEL parser and client from EMI repos:

yum -y localinstall http://emisoft.web.cern.ch/emisoft/dist/EMI/3/sl6/x86_64/base/emi-release-3.0.0-2.el6.noarch.rpm
yum -y install apel-client apel-parsers

Install MySQL backend for APEL clients. MySQL can be installed on any host, running it on ARC host is not mandatory.

yum -y install mysql-server mysql
chkconfig mysqld on
service mysqld start
mysql_secure_installation
mysql -u root -p
mysql> CREATE DATABASE apel;
mysql> GRANT ALL PRIVILEGES ON apelclient.* TO apel@localhost IDENTIFIED BY 'myverysecureapelpassword';
mysql> quit

Provision APEL database with the required structures using the SQL file supplied with APEL packages:

mysql -u apel -p apelclient < /usr/share/apel/client.sql

Edit APEL parser configuration file (/etc/apel/parser.cfg) and specify DB access settings, batch system _accounting_ logs path, and ARC BLAH plugin logs path:

[db]
hostname = localhost
port = 3306
name = apelclient
username = apel
password = myverysecureapelpassword

[site_info]
site_name = GOCBD-SITE-NAME
lrms_server = some.fqdn.lrms.id

[blah]
enabled = true
dir = /var/log/arc/accounting
filename_prefix = blahp.log
subdirs = false

[batch]
enabled = false
reparse = false
type = PBS
dir = /path/to/torque/server_priv/accounting/
filename_prefix = 201
subdirs = false

[logging]
logfile = /var/log/apel/parser.log
level = INFO
console = false

Run apelparser and make sure records are parsed successfully looking into parser.log and of cause the database content :-)