FNAL-specific Gratia collector installation guide.
Install the appropriate
from the FSL distribution's yum repository.
If not already available on the node, install the MySql client from the FSL distribution's yum repository.
Create a new empty DB if necessary with appropriate access permissions for gratia (all) and reader (SELECT and EXECUTE).
These are the MySql commands (as MySql root user) using gratia_mydb
with tomcat on gratia-vm02.fnal.gov
as the example:
CREATE DATABASE [MY_DATABASE];
GRANT ALL PRIVILEGES ON [MY_DATABASE].* TO 'gratia'@'%.fnal.gov' IDENTIFIED BY 'update_password';
GRANT SELECT,EXECUTE ON [MY_DATABASE].* TO 'reader'@'%' IDENTIFIED BY 'reader_password';
Additionally. you may need to add this entry is it does not exist in the mysql.db
GRANT SELECT ON information_schema.* TO 'gratia'@'%.fnal.gov' IDENTIFIED BY 'update_password';
You will also need to allow root access from the collector node (this is for the post-install.sh script executed by the collector):
GRANT ALL PRIVILEGES ON *<nop>**.* TO 'root'@'[COLLECTOR_NODE]' IDENTIFIED BY 'root_password';
GRANT GRANT OPTION ON *<nop>**.* TO 'root'@'[COLLECTOR_NODE]' IDENTIFIED BY 'root_password';
script configures necessary software and configuration files for the Gratia collectors at FNAL based on a data file. The current production data files are to be found in the CD CVS repository:
. Current contents (2010/08/02) are:
Edit the appropriate data file if it does not already contain the correct information for the collector you wish to install. Refer to
and existing or commented attributes in [PATH-TO-GRATIA-RELEASE]/common/configuration/service-configuration.properties
for possible attributes. Be especially careful not to use ports already in use.
file is 'eval'ed by perl and should constitute a properly constructed perl associative array ('hash').
access_log => 1,
collector_host => "gratia-fermi-osg.fnal.gov",
db_host => "gr-fnal-mysql-collector.fnal.gov",
db_port => 3306,
db_schema => "fermi_osg",
http_port => 80,
install_prefix => "/data",
instance_name => "gratia",
jsvc => "/data/jsvc/bin/jsvc",
max_heap_size => "1536m",
max_perm_size => "256m",
remote_host => "gr10x0.fnal.gov",
rmi_port => 17000,
server_port => 8104,
ssl_port => 443,
tomcat_group => "daemon",
tomcat_user => "daemon",
want_reporting => "redirect",
"maintain.history.log" => 75,
"monitor.from.address" => 'firstname.lastname@example.org',
"monitor.recordProcessor.wait" => 60,
"monitor.to.address.0" => 'email@example.com',
"service.admin.DN.0" => '/DC=org/DC=doegrids/OU=Services/CN=gr10x5.fnal.gov',
"service.admin.DN.1" => '/DC=org/DC=doegrids/OU=Services/CN=gr11x5.fnal.gov',
"service.admin.DN.2" => '/DC=org/DC=doegrids/OU=Services/CN=gr10x0.fnal.gov',
"service.admin.FQAN.0" => "/fermilab/Role=GratiaAdmin",
"service.lifetime.JobUsageRecord" => "3 months",
"service.lifetime.MetricRecord" => "1 month",
"service.lifetime.ComputeElement" => "3 months",
"service.lifetime.StorageElement" => "3 months",
"service.lifetime.ComputeElementRecord" => "3 months",
"service.lifetime.StorageElementRecord" => "3 months",
"service.lifetime.Subcluster" => "3 months",
"service.lifetimeManagement.checkInterval" => "24 hours",
"service.security.level" => 3,
Once the above steps have been carried out, the rest of the procedure is identical to upgrading an already-installed collector.
Note that any attribute to be found by name in
should be in the "properties.attributes"
section of the configuration file.
Also note: this will alter the configuration for future
installs (provided the area
is updated). For current installs it is easier by far to edit
manually and restart the service.
There are several short-cut scripts in
They all make use of the install-group
) script infrastructure for installing multiple similar releases in the same operation, which in turn uses install-release
For an in-depth example of all the steps required to perform a production upgrade, including taking account of such things as heartbeat and minimizing service downtime, see the release 1.06 notes
- See the backups section of the service operation guide for details on backups of various types. Note DB schema backups should generally only be done on the reporting DB.
- On each DB VM, set up schema optimization in root's crontab (collector and reporting DB).
- 02 Aug 2010