Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{tip}
Kuali Milestone Release 0.3 is now available\! Visit OLE in the Cloud:&nbsp;{html}<A href="http://demo.ole.kuali.org/ole-demo/portal.jsp" mce_href="http://demo.ole.kuali.org/ole-demo/portal.jsp" target="_Blank">DEMO Drive</A>{html}, or use our online&nbsp;[OLE 0.3 Drivers Manual|OLE:OLE 0.3 Milestone Release Documentation]&nbsp;to navigate Kuali OLE with your local installation\!
{tip}

h2. Overview

These instructions provide the necessary steps to install OLE on to a local Linux server under Tomcat running either an Oracle or MySQL database. &nbsp;While it is possible to install the software locally on a laptop via an IDE, these instructions do not those steps. There are multiple options for installation, but the suggested layout is two schemas/databases. &nbsp;One for OLE/Rice/KFS and one for the Docstore. The development version of OLE is currently running on two separate applications servers. &nbsp;One for OLE and one for the Docstore, but a single application server can be used. &nbsp;

The installation process is in two distinct parts:&nbsp;

1. &nbsp;[#OLE /Rice/KFS Server Installation]

2. &nbsp;[#Docstore/Docsearch server installation]

h1. *Server Requirements*


{color:#333333}The installation of the OLE Server requires the following:{color}

Ant (OLE is using 1.7.1)

Maven (OLE is using 2.2.1)

Tomcat (OLE is currently running under Tomcat6 and has only been tested with Tomcat6)

Oracle or MySQL Database. (OLE is using Oracle 11.2.0.2.v3 and MySQL 5.1.57)
\\

The easiest means of installing the software is to have access to root or the ability to sudo &nbsp;root.
\\

h2. *Oracle Requirements*

Two empty schemas will be needed.&nbsp; One for the OLE/Rice/KFS installation and one for the OLE Docstore installation. &nbsp;Schema name, username, Password, Host Address, Port and SID are needed for installation configuration. The names can be of the sites choosing to meet local naming conventions.

h2. *MySQL Requirements*

Two empty databases will be needed.&nbsp; One for the OLE/Rice/KFS installation and one for the OLE Docstore installation. &nbsp;Database name, username, Password, Host Address and Port are needed for installation configuration.&nbsp;The names can be of the sites choosing to meet local naming conventions.

h2. *Tomcat Requirements*

The following JAVA_OPTS need to be added to the local configuration file for Tomcat.

JAVA_OPTS="$JAVA_OPTS \-Xmx1024m \-Xms768m \-XX:MaxPermSize=256m \-XX:PermSize=256m&nbsp; \-XX:MaxNewSize=256m \-XX:NewSize=256m"

JAVA_OPTS="$JAVA_OPTS \-XX:+UseParNewGC \-XX:+UseConcMarkSweepGC \-XX:SurvivorRatio=128 \-XX:MaxTenuringThreshold=0 \-XX:+UseTLAB"

JAVA_OPTS="$JAVA_OPTS \-XX:+CMSClassUnloadingEnabled \-XX:+CMSPermGenSweepingEnabled"

JAVA_OPTS="$JAVA_OPTS \-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false \-Djava.awt.headless=true"

JAVA_OPTS="$JAVA_OPTS \-Dcom.sun.jndi.ldap.read.timeout=60000 \-Dcom.sun.jndi.ldap.connect.pool.timeout=30000 \-Dcom.sun.jndi.ldap.connect.timeout=10000"

JAVA_OPTS="$JAVA_OPTS \-Dnetworkaddress.cache.ttl=60 \-Doracle.net.CONNECT_TIMEOUT=10000 \-Djava.util.prefs.syncInterval=2000000"

JAVA_OPTS="$JAVA_OPTS \-Duser.timezone=-05:00 \-Duser.language=en \-Duser.region=US"

JAVA_OPTS="$JAVA_OPTS \-Dapp.environment=dist"

JAVA_OPTS="$JAVA_OPTS \-Dhttp.url=localhost:8080"

JAVA_OPTS="$JAVA_OPTS \-Dorg.apache.jackrabbit.repository.home=/opt/docstore \-Dorg.apache.jackrabbit.repository.conf=/opt/docstore/repository.xml"
{anchor:OLE /Rice/KFS Server Installation}

h1. *OLE Server Installation*


h6. {color:#ff0000}{*}It is suggested the Tomcat server be down during the installation process{*}{color}


h2. *Software Checkout*

Checkout the software from the OLE SVN repository into a local working directory:
\\

svn co {html}<A href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole" mce_href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole" target="_Blank">https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole</A>{html}&nbsp; <local working directory>
\\

This will checkout a copy of the current distribution onto your machine for local configuration.
\\

h2. *Modification of impex-build.properties*

Change to the home directory of the installation user (*cd ~*) and create an impex-build.properties file and add the following options(only options in <> need to be provided):

h3. *For Oracle Installations:*

import.torque.database.user=<schema/database username>

import.torque.database.schema=<oracle schema name you created for OLE>

import.torque.database.password=<password>
\\

torque.project=ole

torque.schema.dir=<local working directory>/ole-cfg-dbs/rice

torque.output.dir=$\{torque.schema.dir\}/output

torque.schema.dir.2=<local working directory>/ole-cfg-dbs/development

torque.output.dir.2=$\{torque.schema.dir.2\}/output

import.torque.database=oracle

import.torque.database.driver = oracle.jdbc.OracleDriver

import.torque.database.url = jdbc:oracle:thin:@<hostname>:<port>:<SID>
\\

post.import.liquibase.project=ole

post.import.liquibase.xml.directory=<local working directory>/work/db/rice-data
\\

h3. *For MySQL Installation:*

import.torque.database.user=<database username>

import.torque.database.schema=<mysql db name you created for OLE>

import.torque.database.password=<password>
\\

torque.project=ole

torque.schema.dir=<local working directory>/ole-cfg-dbs/rice

torque.output.dir=$\{torque.schema.dir\}/ouput

torque.schema.dir.2=<local working directory>/ole-cfg-dbs/development

torque.output.dir.2=$\{torque.schema.dir.2\}/output

import.torque.database=mysql

import.torque.database.driver=com.mysql.jdbc.Driver

import.torque.database.url=jdbc:mysql://<host address>:3306/<db name>
\\

post.import.liquibase.project=ole

post.import.liquibase.xml.directory=<local working directory>/work/db/rice-data
\\

h2. *Run Impex Script*

Change directory to <local working directory>/ole-cfg-dbs/db-impex/impex

Run the Ant build:&nbsp; *ant import*

This will run the impex script, creating the OLE/Rice/KFS schemas and initial importing of data.

h2. *Modify dist-build.properties*

Change directory to the local working directory and edit the dist-build.properties file. Modify the following entries (no <>).:

user.home=<local working directory> i.e. user.home=/opt/ole-src

appserver.url=<application server url>

rice.url=http://<rice host url>/ole-<build environment>

deploy.working.directory=<local working directory>

build.environment=<name of environment i.e. dist or dev or test>
\\

h3. *For Oracle*

datasource.url=jdbc:oracle:thin:@jdbc:oracle:thin:@<hostname>:<port>:<SID>

datasource.username=<db username>

datasource.password=<db password>&nbsp;

h3. *For MySQL*

datasource.url= jdbc:mysql://<host address>:3306/<db name>
\\

datasource.username=<db username>

datasource.password=<db password>
\\

h3. *For Oracle*

rice.server.datasource.url=jdbc:oracle:thin:@jdbc:oracle:thin:@<hostname>:<port>:<SID>

rice.server.datasource.username=<db username>

rice.server.datasource.password=<db password>

h3. *For MySQL*

rice.server.datasource.url= jdbc:mysql://<host address>:3306/<db name>
\\

rice.server.datasource.username=<db username>

rice.server.datasource.password=<db password>

h3. For both Oracle and MySQL

ole.docstore.url=http://<docstore url>/ole-docsearch/

ole.docstoreapp.url=http://<docstore url>/oledocstore/document

ole.bibeditor.url=http://<ole server url>/ole-demo/bibEditor

ole.bibeditor.create.url=http://<ole server url>/ole-demo/bibEditor

ole.docsearch.url=http://<docstore url>/ole-docsearch/bib/select

ole.docsearch.app.url=http://<docstore url>/ole-docsearch/

*There will be other entries in the file that do not require local modification.*

*&nbsp;*

h2. *Build War File*

From the local working directory, enter the following command:

*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* *ant \-propertyfile ./dist-build.properties&nbsp; clean-project dist dist-external*

This will create the ole war file ole-<build.enviroment>.war in the local working directory.&nbsp; It will also create three configuration files:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *skel.zip*

*&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; settings.zip*

*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; security.zip*

*&nbsp;*

h2. *Zip Files*

The three zipfiles need to be unpacked.&nbsp; Copy the following into a shell script and execute.&nbsp; The lines may need to be changed to meet local requirements, but will unpack the files into the location OLE is expecting to find the various configuration options*.&nbsp; INSTANCE must match the build.enviroment option in the dist-build.properties file.\*

*INSTANCE=<build environment>*

mkdir \-p /opt/sa_forms/java/$\{INSTANCE\}/ole

mkdir \-p /opt/j2ee/$\{INSTANCE\}/ole


mkdir \-p /opt/logs/$\{INSTANCE\}/ole

mkdir \-p /opt/work/$\{INSTANCE\}/ole
*&nbsp;*

*\# changing the owner so that tomcat can read/write these directories*

*chown \-R tomcat /opt/sa_forms*

*chown \-R tomcat /opt/j2ee*

*chown \-R tomcat /opt/logs*

*chown \-R tomcat /opt/work*

*&nbsp;*

*\# Unpacking as tomcat for proper permissions*

sudo \-u tomcat unzip \-o skel.zip \-d /opt/work/$\{INSTANCE\}/ole

sudo \-u tomcat unzip \-o security.zip \-d /opt/sa_forms/java/$\{INSTANCE\}/ole

sudo \-u tomcat unzip \-o settings.zip \-d /opt/j2ee/$\{INSTANCE\}/ole


h2. *Copy war file*

Copy the ole-<build.environment>.war to your local Tomcat webapps directory for deployment.

*&nbsp;*

h2. {color:#000000}{*}Restart Tomcat{*}{color}


Restart Tomcat and the OLE application should be available at http://<application url>:<port>/ole-<build environment>*&nbsp;&nbsp;*
{anchor:Docstore/Docsearch server installation}
\\

\\
{color:#000000}{*}Docstore Server Installation{*}{color}


h6. {color:#ff0000}It is suggested the Tomcat server be down during the installation process{color}


h2. Software Checkout

Three separate checkouts are necessary for the installation of the document store. &nbsp;

svn co&nbsp;{html}
<A href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-SOLR" mce_href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-SOLR" target="_Blank">https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-SOLR</A>
{html}&nbsp;<local working directory>

svn co&nbsp;{html}
<A href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/DocumentStore" mce_href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/DocumentStore" target="_Blank">https://svn.kuali.org/repos/ole/branches/OLE-0.3/DocumentStore</A>{html}&nbsp;<local working directory>

svn co&nbsp;{html}<A href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-DocSearch" mce_href="https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-DocSearch" target="_Blank">https://svn.kuali.org/repos/ole/branches/OLE-0.3/ole-discovery/OLE-DocSearch</A>{html}&nbsp;<local working directory>

h2. Solr Installation

Installation of Solr requires the copying of files from the local working directory for the Solr checkout to /opt/docstore/solr. &nbsp;To accomplish this do the following steps:

# mkdir /opt/docstore
# mkdir /opt/docstore/solr
# cd <local working directory for OLE-SOLR checkout>
# cp \-R ./ /opt/docstore/solr

The directories for the Solr are now created and the requisite files copied.

h2. Repository.xml Creation

The document store depends on a repository.xml file for configuration. To create the repository.xml and copy the file to the appropriate directory do the following steps

# cd <local working directory for&nbsp;DocumentStore checkout>/documentstore-webapp
# Modify the repository-dist.properties file.  The following entries need to be modified with the values from the schema created for the docstore.
## repository.datasource.url=jdbc:oracle:thin:@<Docstore Oracle Hostname>:<port>:<SID>
## repository.datasource.username=<username for schema created for the Docstore>
## repository.datasource.password=<password>
# ant build-repo-config-dist
# cp repository.xml /opt/docstore  This is the location specified in the Tomcat JAVA_OPTS.

h2. Build and Copy Docstore War File

From the <local working directory for DocumentStore checkout> enter the command:

*mvn \-Dmaven.test.skip=true package*


This will create <local working directory DocumentStore checkout>/documentstore-webapp/target/documentstore-webapp.war

copy this warfile to your Tomcat webapps directory

h2. Build and Copy Docsearch War File

From the <local working directory for OLE-docsearch checkout> enter the command:

*ant war*

This will create <local working directory for DocumentStore checkout>dist/ole-docsearch.war

copy this warfile to your Tomcat webapps directory

h2. Change Ownership of /opt/docstore Directory

If the software was installed as root, the ownership of the /opt/docstore directory needs to be changed to be owned by the tomcat user. &nbsp;Example would be:

*chown \-R tomcat:tomcat /opt/docstore*

h2. Start Tomcat Server

Start your local Tomcat server. &nbsp;During the initial start up process, the docstore application will create the necessary tables in the docstore schema.


h2.