Generic Information Provider

Overview

The Generic Information Provider, GIP, is a framework which simplifies the creation and deployment of information providers. The GIP enables smaller plugins to be used which makes it easier to support new systems by separating static and dynamic information. It can be used in conjunction with other LDAP based grid information system components to inject information into the system.

An information provider in its simplest form is a script that prints an LDIF file to standard out. The LDIF file should conform to the schema used. There are usually only a few attributes that have to be found dynamically from a specific system. To avoid the creation of many different information providers that duplicate much of their functionality, the GIP uses a plugin mechanism to obtain these dynamic values from the specific system.

The GIP reads in all the LDIF files from the static directory. Depending on the state of the cache, the information providers in the providers directory and dynamic plug-ins found in the_plugin_ directory are run and the output stored in a temporary directory before updating the cache. When the providers or plugins are executed, a lock file is placed in the lock directory to stop multiple instances being spawned. The dn is used to identify attributes and values from the same entry entry. The cached entries resulting from running information providers will overwrite entries from the static files. The cached values from the dynamic plug-ins will overwrite the values from static files and/or information providers. The resulting LDIF is then printed to standard out. Instead of putting plugins and providers directly into the directories, symbolic links or wrapper scripts can be used. This enables them to be turned on and off without having to uninstall them.

gip.png

Configuration

The GIP has only one configuration file:
  • /opt/glite/etc/gip/glite-info-generic.conf

glite-info-generic.conf

This configuration file is used to configure the GIP itself. The format is key/value pairs with an '=' sign as the separator. A default configuration file comes with the GIP. This may require editing in order for the GIPto function as desired. The table belows describes the key/value pairs found in the configuration file.

Key Typical Value Description  
temp_dir /opt/glite/var/tmp/gip The temporary directory used by the GIP
cache_dir /opt/glite/var/cache/gip The directory containing the cache files
lock_dir /opt/glite/var/lock/gip The directory containing the lock files
static_dir /opt/glite/etc/gip/ldif The directory where to put the static LDIF files
provider_dir /opt/glite/etc/gip/provider The directory where to put information providers
plugin_dir /opt/glite/etc/gip/plugin The directory where to put the dynamic plugins
freshness 60 How long in seconds to use the cache before running the dynamic plugins again
cache_ttl 300 How long in seconds the cache is valid
response 5 How long in seconds the GIP will wait for dynamic plugins before continuing
timeout 30 Timeout in sceonds for the dynamic plugins
Topic attachments
I Attachment History Action Size Date WhoSorted descending Comment
PNGpng gip.png r1 manage 5.1 K 2008-01-22 - 13:35 LaurenceField  
Edit | Attach | Watch | Print version | History: r5 < r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r5 - 2009-03-09 - AkosFrohner
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EGEE All webs login

This site is powered by the TWiki collaboration platform Powered by Perl 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.
Ideas, requests, problems regarding TWiki? Ask a support question or Send feedback