ATP main package

This contains the database schema for MySQL and Oracle, plus the ATP synchroniser (a python based package, for synchronizing the data from various topology providers like GOCDB, OIM, VO feeds etc). It synchronizes data from these providers with ATP repository periodically and this synchronization frequency can be changed, if desired.The package, also, has all necessary scripts for Oracle and MYSQL databases creation/re-creation and migration.

ATP web package

This acts as a front-end for the ATP repository. It is developed using Django, a high level python framework. The search interface for finding topologies of grid resources as well as programmatic feeds for exposure of ATP data through JSON/XML interfaces are available.

Installation and configuration

For the two components mentioned above, there are two separate rpms, one corresponding to core functionality while the other handling the web interface portion for ATP. These are available on koji repository at CERN. and will typically have names like atp-x.x-x.el5.noarch.rpm and atp-web-x.x-x.el5.noarch.rpm. Just download and install them on the target system.

ATP main package

As explained above, this package contains ATP synchronizer modules and MYSQL/Oracle database scripts for ATP.

ATP Synchronizer

The main module of ATP Synchronizer is

and it picks up configuration information from different files as described below:

  • Database configuration: This contains database specific settings and they are done in /etc/atp_db.conf

Typical database configuration looks like this:

      # enter mysql or oracle
      #enter 'Y' or 'N'

  • Synchronizer configuration: This configuration file has various sections on logging, certificate/key files, different synchronizer specific configurations, field mappings between GOCDB and ATP repositories, messaging broker configuration etc and they need to be tuned appropriately for successful running of synchronizer. This configuration file usually resides in /etc/atp_synchro.conf

By default, certificate files are assumed to be present in /etc/nagios/globus directory. Please make sure that the certificate and key files are present in this directory or change the path of this to the directory where these are present. If this is not done , ATP synchronizer will not run properly.

ATP synchronizer runs all the synchronizers defined in [run_synchronizer] section of the file /etc/atp_synchro.conf by default. However, each individual synchronizer can be turned on/off by entering "Yes"/"No" for its corresponding entry.

The configuration of VO feeds is done using /etc/atp/vo_feeds.conf file. A sample VO feeds configuration is given below:

                 # feed definition: - <vo_name>_topology = url,<yes> or <no>
                 # <vo_name> - name of vo
                 # <yes>/<no>: determines the run-state in atp synchronizer

                alice_topology =,no
                atlas_topology =,no
                cms_topology =,yes
                lhcb_topology =,yes

  • Logging configuration: This defines various parameters for logging the run-time information of ATP synchronizer and this is done in /etc/atp_logging_files.conf. The logged data is saved in /var/log/atp/atp.log by default but the location can be changed if required.

Once the correct configuration is done, the synchronizer can be run by giving these files as a command line arguments.


 atp_synchro -c /etc/atp/atp_synchro.conf -d /etc/atp/atp_db.conf -l /etc/atp/atp_logging_files.conf  
and the logs can be seen in

ATP DB scripts for Oracle/MySQL

The ready-made SQL scripts for creation of tables, procedures/functions, triggers are available in this module. They can be used for creation/re-creation of Oracle/MySQL databases. In case, there is a version change in ATP database schema , the migration script for migrating existing ATP database to the new version is also present here.

ATP Web package

The front-end for ATP is developed using Django, a high level python framework. There are several pre-requisites before we move towards configuration of Django settings for ATP. The following softwares must be installed and configured on the target system:

  1. python (2.4.3 or higher)
  2. MYSQL(5.1 or higher) or Oracle 10g
  3. Apache
  4. mod_wsgi
  5. Django 1.0/1.1
  6. Django-pagination
  7. Python module for accessing Oracle database - cx_Oracle
  8. Python module for accessing MYSQL database - MySQLdb

The detailed instructions on how to install and configure Django for working with multiple databases are available on Django site. Please follow them.

As far as ATP web package configuration is concerned, the configuration is done through the atp.ini file. The .ini file has various sections like database configuration, base_url path, debug settings etc. which are more or less self explanatory. The important parameters that need to be configured in are database specific settings and base_url. Typical database settings for ATP are:

       DATABASE_USER: username
       DATABASE_ENGINE: mysql # for mysql, only a DATABASE_NAME is needed
       DATABASE_NAME: atp
  1. DATABASE_USER username to use when connecting to the database
  2. DATABASE_PASSWORD password to use when connecting to the database.
  3. DATABASE_NAME: name of the database to use.
  4. DATABASE_ENGINE: database backend to use. The built-in database backends are oracle, mysql
  5. DATABASE_HOST host to use when connecting to the database.
  6. DABASE_PORT: port to use when connecting to the database

For the base_url setting, you have to specify the base_url path e.g. ATP front-end will then be available at It is recommend that all settings in debug section should be false in productive environment in atp.ini file.

Edit | Attach | Watch | Print version | History: r9 < r8 < r7 < r6 < r5 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r9 - 2011-03-03 - unknown
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main 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.
Ideas, requests, problems regarding TWiki? Send feedback