GOCDB/Regional Module Technical Documentation
This page is the main technical documentation for GOCDB-4 regional module
SUPPORTED VERSION: GOCDB-4.0.d7 - build GOCDB-4.0-4.d7.noarch
- 1 Deployment
- 1.1 System prerequisites
- 1.2 Preparing your installation
GOCDB-4 regional module has two components: a database and a web front end. Both components can work on the same machine but it is very likely that in most environments they will be separated. This is what we would advise anyway. Machine requirements for these 2 components are described below.
- Required database: Oracle 10g or higher (note: Oracle 10g Express edition, which comes with a free license, is perfectly suitable)
- Required space: 150 MB
The machine to use as the web frontend will need the following:
- Apache http server version 2.0 or higher.
- PHP version 5.2 or higher.
- PHP oci8 extension
- libxml2 and DOM support for PHP (Note: On RHEL, PHP requires the PHP XML RPM to be installed for this component to function).
- OpenSSL Extension for PHP
- Oracle Instant client version 10 or higher (downloadable from Oracle website)
- a X509 host certificate for the machine
Preparing your installation
Important note: This section needs to be executed by Database System Administrators.
- If you don't have admin rights on the DB you are using, please contact your DBAs with the instructions contained in this section.
1- Create tablespaces for GOCDB
GOCDB-4 database contains 3 distinct groups of tables: Metadata or core data, GOCDB data, and local data. Although this is not mandatory, we recommend that 3 different tablespaces be created to store these different tables:
|TS_GRIDCORE||50m||Will store the core tables containing schema metadata|
|TS_GOCDBDATA||50m||Will store GOCDB data tables (common structure to all GOCDB modules)|
|TS_LOCALDATA||50m||Will store your local tables if you have some local information to store|
Note: Choose whatever names you want for your tablespaces. You'll be able to configure the system to use whatever names your tablespaces have.
2- Create a DB user for GOCDB
Any existing user is OK but we advise that a user be dedicated to run GOCDB.
- Grant access and unlimited quotas to your GOCDB user on previously defined tablespaces.
3- Manage user privileges
Grant the following privileges to your GOCDB user:
- CREATE SESSION
- CREATE TABLE
- CREATE TYPE
- CREATE SEQUENCE
- CREATE TRIGGER
- CREATE PROCEDURE
- CREATE MATERIALIZED VIEW
- CREATE JOB
Web machine preparation
1- install host certificate for the machine
- GOCDB web portal component needs the machine to run a https server which requires a server X509 certificate. Please check that Apache is properly configured to use the installed server certificate. Help about how to set up SSL configuration on Apache can be obtained from Apache mod_ssl online documentation.
2- Get and deploy GOCDB-4 code package
- download GOCDB-4 regional package from: https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/tags/gocdb/GOCDB-4.0d7_distrib/RPM/
- Install the GOCDB-4 RPM (rpm -i GOCDB-4.0-4.d7.noarch.rpm)
- Verify the user running httpd has read access to the directories/files. The files are often not accessible by the Apache user by default. (Default installation location: /usr/share/GOCDB)
- Create the following Apache Aliases (or set up virtual hosts)
- Alias "/portal" "/usr/share/GOCDB/htdocs/web_portal"
- Alias "/admin" "/usr/share/GOCDB/htdocs/admin"
- Alias "/xml_input" "/usr/share/GOCDB/htdocs/xml_input"
- Configure Apache to use SSL and client certificate verification for the web portal section of the site. The user certificate DN's are used for authentication to the web front end.
- Ensure the web server port is open on your machine. As a first step, you probably want the port to be open internally only (giving the whole wide world access to your GOCDB admin page is probably not a good idea)
- Restart Apache so that the new aliases are loaded from the configuration file.
- Check that the pages can be correctly accessed by browsing to the newly created "admin" alias. Note that the system is not yet fully set up and will not work!