You are here: TWiki > Accounting Web>InstallationGuideFNAL (16 Aug 2010, ChrisGreen)

FNAL-specific Gratia collector installation guide.

Install and configure a standard VDT CA certificates installation.

Obtain and install the Java Runtime.

Install the appropriate java-sun-compat from the FSL distribution's yum repository.

Obtain and install the MySql client.

If not already available on the node, install the MySql client from the FSL distribution's yum repository.

Ensure the existence of a suitable DB schema.

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 database:

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';
FLUSH PRIVILEGES;

Create or adjust configuration data file.

The [PATH-TO-GRATIA-RELEASE]/common/configuration/configure-collector 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: :ext:cvsuser@cdcvs.fnal.gov:/cvs/cd/fermigrid/gratia-ops/collector-config/. Current contents (2010/08/02) are:

  • collector-fermi-gratia10.dat
  • collector-fermi-gratia11.dat
  • collector-integration-gratia05.dat
  • collector-osg-gratia12.dat
  • collector-osg-gratia13.dat

Edit the appropriate data file if it does not already contain the correct information for the collector you wish to install. Refer to %default_attributes 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.

The .dat file is 'eval'ed by perl and should constitute a properly constructed perl associative array ('hash').

Example configuration:

  
 "fermi-osg" =>
 {
  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",
  "properties.attributes" =>
  {
   "maintain.history.log" => 75,
   "monitor.from.address" => 'gratia-operation@opensciencegrid.org',
   "monitor.recordProcessor.wait" => 60,
   "monitor.to.address.0" => 'gratia-root@fnal.gov',
   "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 service-configuration.properties should be in the "properties.attributes" section of the configuration file.

Also note: this will alter the configuration for future installs (provided the area ~gratia/gratia-ops is updated). For current installs it is easier by far to edit /data/tomcat-gratia/gratia/service-configuration.properties manually and restart the service.

Perform the install / upgrade.

There are several short-cut scripts in :ext:cvsuser@cdcvs.fnal.gov:/cvs/cd/fermigrid/gratia-ops/:

  • upgrade-fermi-collectors
  • upgrade-fermi-reporting
  • upgrade-osg-collectors
  • upgrade-osg-reporting

They all make use of the install-group (https://gratia.svn.sourceforge.net/svnroot/gratia/trunk/build-scripts/install-group) script infrastructure for installing multiple similar releases in the same operation, which in turn uses install-release (https://gratia.svn.sourceforge.net/svnroot/gratia/trunk/build-scripts/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.

Set up backups and other maintenance tasks

  • 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).

Set up production reporting.

  • As the Gratia user on the reporting DB, install the reporting crontab, currently saved as ~gratia/cron.gr13x5:
    crontab ~gratia/cron.gr13x5

-- ChrisGreen - 02 Aug 2010

Topic revision: r31 - 16 Aug 2010 - 19:12:15 - ChrisGreen
Hello, TWikiGuest
Register

 
TWIKI.NET

TWiki | Report Bugs | Privacy Policy

This site is powered by the TWiki collaboration platformCopyright by the contributing authors. All material on this collaboration platform is the property of the contributing authors..