TWiki> LCG Web>GridView>GridviewAdminGuide (revision 6)EditAttachPDF

Gridview Administration Guide

This document describes the steps involved in installing, configuring and administration of the Gridview service.

Gridview components and rpms:

More information about gridview components and their functions can be found in Gridview Deployment Page. The following table lists out the different modules which are packaged in rpm format.

Module Description Name of rpms
Common Common module needed in all instances gridview-common
Frontend Frontend modules (web interface) gridview-fe-dt, gridview-fe-js, gridview-fe-sa
Summarizers Summarizer modules for different metrics gridview-sum-dt, gridview-sum-js, gridview-sum-sa
Synchronizers Synchronizer modules for GOCDB and CICDB gridview-sync-gocdb, gridview-sync-cicdb
Arch Common Common module for archivers gridview-arch-common
Archivers R-GMA and web service archvers gridview-arch-rgma, gridview-arch-ws

Gridview Installation Pre-requisites:

The following middleware components should be available in the machines before installing Gridview.
Module Pre-requisite middleware components Remarks
Common Oracle 10g Instantclient library Should be available on every Gridview server
Frontend Apache Web Server, PHP, PHP-gd PHP-gd is the GD library support module for PHP
Summarizers and Synchronizers PHP and CRON These are sets of PHP programs run as Cron jobs
Archivers Java, Tomcat, R-GMA All archivers are written in Java, the Web service Archivers run under Tomcat

Grid certificates for Gridview machines:

Standard grid certificates issued by the CERN Trusted CA are required to be installed on each gridview system. These certificates are typically stored in /etc/grid-security directory, from which they need to be copied to different directories for gridview.

User IDs for Gridview:

Different modules of Gridview run under different user credentials because of their environment as listed below:
Module Runs under User ID
Frontend Apache apache
Summarizers Standalone gridview
Synchronizers Standalone gridview
Archivers Both standalone and under tomcat gridview and tomcat

A new user 'gridview' with group 'gridview' needs to be created in the system. The group 'gridview' should contain the users 'gridview', 'apache' and 'tomcat' in order to be able to read the configuration file and write logs.


Configuration of gridview and pre-requisite rpms can be either performed manually or by Gridview NCM Component under Quattor.

Oracle Database:

It is required to have an Oracle Database account before proceeding with Gridview configuration. Presently this will have to be done manually. The Oracle database should be accessible with 3 different user accounts
  • Owner/Administrator account: Create tables, indexes and table synonyms
  • Reader account: For read-only access
  • Writer account: For read-write access
The following operations should be performed on the database:
  • Create all required tables by means of SQL scripts in /opt/gridview/scripts
  • Create synonyms for read/write access
  • Grant accesses to Service Availability related tables to SAM service
  • Populate some of the tables with initial values

The following table describes the different scripts and their function:

Script Function
create_general_tabs.sql Create some general tables
create_gridftp_tabs.sql Create tables related to data transfer
populate_gridftp_tabs.sql Populate certain data transfer tables with initial values
create_job_tabs.sql Create tables related with job status
populate_job_tabs.sql Populate certain job status tables with initial values
create_same_tabs.sql Create tables related with service availability monitoring
populate_same_tabs.sql Populate certain service availability monitoring tables with initial values

The create_same_tabs.sql script also creates synonyms to certain tables created by the SAM service.

Gridview Configuration File

All modules of Gridview share a common configuration file "/opt/gridview/etc/gridview-common.conf". Configuration consists of a set of key/value pairs. The file is informally divided into different sections purely for readability, otherwise the order of the lines do not make any difference. Each gridview module parses the file and picks up the configuration it needs.

A sample configuration file is shown below:

# Gridview configuration file. This file could be automatically
# generated in Quattorized machines. Otherwise feel free to edit
# this file as long as you know what you are doing!

# Section 1: Gridview-Common configuration (Oracle database)
# There should be a separate reader and writer accounts to the
# single Gridview repository. Information to be filled in here
# should be made available by the DBA.
#gridview.common.db.reader.database =
#gridview.common.db.reader.hostspec =
#gridview.common.db.reader.options =
#gridview.common.db.reader.password =
#gridview.common.db.reader.port =
#gridview.common.db.reader.protocol =
#gridview.common.db.reader.username =
#gridview.common.db.writer.database =
#gridview.common.db.writer.hostspec =
#gridview.common.db.writer.options =
#gridview.common.db.writer.password =
#gridview.common.db.writer.port =
#gridview.common.db.writer.protocol =
#gridview.common.db.writer.username =

# Section 2: Gridview Frontend configuration
# Path name for the directory containing bitstream vera truetype fonts.
# By default jpgraph searches in /usr/X11R6/lib/X11/fonts/truetype
#gridview.frontend.ttf_path =

# Webroot for this installation. Typically if Gridview is installed with URl
#  the webroot will be /GRIDVIEW/
#gridview.frontend.webroot =

# Section 3: Gridview Synchronizer Configuration
# Here we have currently 2 synchronizers - one for GOCDB and the other for CICDB
# For both we define oracle db parameters.
#gridview.synchronizer.cicdb.db.database =
#gridview.synchronizer.cicdb.db.hostspec =
#gridview.synchronizer.cicdb.db.options =
#gridview.synchronizer.cicdb.db.password =
#gridview.synchronizer.cicdb.db.port =
#gridview.synchronizer.cicdb.db.protocol =
#gridview.synchronizer.cicdb.db.username =

#gridview.synchronizer.gocdb.db.database =
#gridview.synchronizer.gocdb.db.hostspec =
#gridview.synchronizer.gocdb.db.options =
#gridview.synchronizer.gocdb.db.password =
#gridview.synchronizer.gocdb.db.port =
#gridview.synchronizer.gocdb.db.protocol =
#gridview.synchronizer.gocdb.db.username =

Gridview Frontend Configuration:

The Gridview frontend modules have dependencies on Apache, PHP and Jpgraph.

Apache Configuration for Gridview

This involves the following actions:
  • Creating an alias for Gridview and permanent redirection to this alias, if needed
  • Configuring SSL certificates and parameters
  • Copying of certificates

A sample /etc/httpd/conf.d/httpd-gridview.conf is shown below:

# Application gridview
Redirect permanent /index.php

Alias /GRIDVIEW/ "/opt/gridview/frontend/"

The following parameter should be modified in the standard /etc/httpd/conf.d/ssl.conf for gridview:

SSLVerifyClient optional
SSLVerifyDepth  10

PHP Configuration for Gridview

The PHP configuration file is named
. The following parameters in the file need to be configured for Gridview.
max_execution_time = 0
memory_limit = 256M
error_reporting = E_ALL
display_errors = Off

Bitstream Vera truetype fonts for jpgraph

Gridview uses jpgraph library for generating graphs. Vera and Vera Mono fonts are used for the lettering inside the graphs. By default jpgraph library looks for these font files in
directory whereas bitstream fonts are usually stored in /usr/share/fonts/bitstream-vera directory. Therefore jpgraph needs to be configured to use the correct directory. For this, the following line should be added to /opt/gridview/frontend/lib/jpgraph/src/ :
Please note that this line should be added to the file before the closing

Gridview Summarizer Configuration

The PHP configuration described above in the frontend configuration will be required for summarizers too.

There are no specific configuration related to the summarizer modules. All summarizer modules reside under the subtree

In this subtree are directories for data transfer(dt), job status (js) and service availability(sa) summarizers. The 'bin' directories of each summarizer contains the summarizer executables i.e. a shell script and a php script.

Summarizer programs need to be activated as cron jobs under the user name 'gridview'. Typically these should be run with a frequency of an hour, but higher frequencies (multiple times in an hour) are also possible. The summarizer scripts create lock files in /opt/gridview/lock directory so that multiple cron jobs do not clash with each other. An example cron job for data transfer summarizer is shown below.

25,55 * * * * gridview /opt/gridview/summarizer/dt/bin/ >> /opt/gridview/logs/gridftpSummarize.log 2>&1

This table shows all summarizer scripts for the different metrics:

Module Summarizer script
Data transfer /opt/gridview/summarizer/dt/bin/
Job Status /opt/gridview/summarizer/js/bin/,,
Service Availability /opt/gridview/summarizer/sa/bin/,

Gridview Synchronizer Configuration

The PHP configuration described above will be required for synchronizers too.

Presently, two synchronizers are operational in Gridview - one, the GOCDB synchronizer and the second, the CICDB synchronizer. Both these remote databases are hosted in Oracle and Gridview has direct database read only access to these tables. To enable accesses to these databases, the /etc/tnsnames.ora file should be updated with Oracle access information to the databases. Moreover the gridview configuration file should contain the login and password information for these databases.

Similar to the summarizers described above, the synchronizer programs too need to be activated as cron jobs with a frequency of once in an hour. A sample cron job is shown below.

10 * * * * /opt/gridview/synchronizer/gocdb3/bin/SyncGocDB3/ >> /opt/gridview/logs/SyncGocDB3.log 2>&1

Gridview Archivers Configuration

-- RajeshKalmady - 12 Nov 2007

Edit | Attach | Watch | Print version | History: r15 | r8 < r7 < r6 < r5 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r6 - 2007-11-12 - RajeshKalmady
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LCG 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