wiki:Opal HowTo Install

Version 23 (modified by Richard Bramley, 9 years ago) ( diff )

--

Opal HowTo Install

Tags: HowTo Opal

See: http://wiki.obiba.org/display/OPALDOC/Opal+Installation+Guide

Process

We followed the Installation of Opal Zip distribution instructions that installed Opal from a zip file.

  1. Download Opal distribution into the /local/ directory
  2. Unzip the Opal distribution. Note that the zip file contains a root directory named opal-server-{version}.
  3. Create an Opal home directory (to facilitate subsequent upgrades) using the command mkdir opal-home.
  4. Create a symbolic link to the Opal server directory, using the command ln -s opal-server-{version} opal_server
  5. Copy the conf directory from the server directory into the home directory, using the command cp -r opal-server/conf opal-home.
  6. Create a script called start_opal.sh in the /local/ directory containing the following:
#!/usr/bin/env bash

echo "Starting Opal"

export JAVA_HOME=/opt/java
export PATH=$JAVA_HOME/bin:$PATH
export JAVA_TOOL_OPTIONS=-XX:CompressedClassSpaceSize=10m

#export JAVA_OPTS="-Xmx200m  -XX:-UseCompressedClassPointers"
export JAVA_OPTS="-Xmx2G -XX:-UseCompressedClassPointers"
export OPAL_HOME="/local/opal-home"

/local/opal-server/bin/opal start

echo "Ended"

The java options are:

-Xmx2G
increase the memory allocated to Java to 2GB
-XX:-UseCompressedClassPointers
Do not compress class pointers (because Opal creates too many classes?)
  1. Edit the /local/apache2/etc/loadmodule.conf to add the following lines at the bottom:
    # For Opal proxying
    LoadModule proxy_module /usr/lib64/apache2-prefork/mod_proxy.so
    LoadModule proxy_http_module /usr/lib64/apache2-prefork/mod_proxy_http.so
    ProxyPass / http://localhost:8080/
    

Gotcha

  • Opal uses the HTTP OPTIONS method to check authorisation. Therefore you need to allow this method through the firewall for Opal to work. If you do not, no buttons will appear in Opal to allow you to do anything. Very frustrating and confusing.

Running as wwwrun

Permissions

The following permission changes should be used to make Opal run as wwwrun, but they don't work yet!

    setfacl -R -m u:wwwrun:rwx /local/opal-home
    setfacl -m u:wwwrun:rwx /local/start_opal.sh

Starting Opal

    sudo -u wwwrun /local/start_opal.sh

ToDo: This needs to start on boot

Opal Post Installation

See:

Opal Database Setup

See:

1. Update MySql Config

  1. The config file for MySQL files on a LAMP server is stored at /db/mysql/etc/my.cnf
  2. Change the default character set in the [mysqld] section:
default-character-set=utf8
default-collation=utf8_bin
  1. Change the storage engine in the [mysqld] section:
default-storage-engine=INNODB

Actually these both look OK, with the exception that the collation is utf8_general_ci, so I will just change that

2. Create Databases

  1. Create the following script:
# Create Opal database and user.
#
# Command: mysql -u lampuser -p < create_opal_databases.sql
#
 
CREATE DATABASE opal_data CHARACTER SET utf8 COLLATE utf8_bin;
 
CREATE USER 'opal_data' IDENTIFIED BY '<opal-data-user-password>';
GRANT ALL ON opal_data.* TO 'opal_data'@'localhost' IDENTIFIED BY '<opal-data-user-password>';
FLUSH PRIVILEGES;

CREATE DATABASE opal_identifiers CHARACTER SET utf8 COLLATE utf8_bin;
 
CREATE USER 'opal_identifiers' IDENTIFIED BY '<opal-identifiers-user-password>';
GRANT ALL ON opal_identifiers.* TO 'opal_identifiers'@'localhost' IDENTIFIED BY '<opal-identifiers-user-password>';
FLUSH PRIVILEGES;
  1. Change the passwords to something appropriate
  2. Run the script like it says in the command comment at the top of the script.

3. Register Databases with Opal

See:

  1. Log into the Opal web application as administrator
  2. If none have already been set up, it will ask you to enter the details of the

Installing RServe

Resources

Installation

Again from Olly's notes:

sudo -u wwwrun R
install.packages('Rserve')
  • When you install the package in R it puts a folder called R in your home directory. Several Layers down this you will find the RServe binary. Mine in at ~/R/x86_64-suse-linux-gnu-library/3.1/Rserve/libs/Rserve. At the minute it errors that it doesn't know where the R home directory is, but hopefully I can find that out from somewhere.

To run Rserve manually

    export  R_HOME='/usr/lib64/R'
    ~/R/x86_64-suse-linux-gnu-library/3.1/Rserve/libs/Rserve

ToDo: This needs to be started on reboot. An example of how to do it can be found at: http://wiki.obiba.org/display/OPALDOC/R+Server+Installation+Guide.

Install Opal DataShield Packages

  1. In Opal go to Administration / DataSHIELD
  2. Click on Add Package
  3. Select Install all DataSHIELD packages
  4. Click Install button

Installing DataShield

See:

Error: Macro BackLinks(None) failed
'Environment' object has no attribute 'get_db_cnx'

Note: See TracWiki for help on using the wiki.