Falling Up

February 18, 2006

Framenet Installation

Filed under: Systems Administration — erinn @ 1:15 pm

Framenet is a program that handles semantical frames (whatever that means). For any admin who ever has the displeasure of installing this program here are my basic install instructions to do so. This install took me about 2-3 days of fumbling around so in the spirit of sharing hopefully these directions will save someone a lot of time.

Here they are:

Framenet is a bit of a tricky install. It is a very old piece of software that has a number of parts that are out of date or linked to older versions of software. So with that in mind here is the general run of how to get the farina server up and kicking.

The instructions that I followed to get farina installed are included at the bottom but please read the information below so that you are aware of a number of caveats before you start installing.

Farina BTW is apparently the name of a house DJ in the Berkeley area just in case you were wondering.

First the customized version of jboss (3.0.6) that comes with farina is tied to Java 1.4.2 so you should make sure that you have that specific version installed nothing newer (don’t know about anything older).

Second MySQL is pretty much a breeze to set up (as in it works as advertised) but be aware of the version of MySQL that you are using because jboss has a hard time authenticating with version of MySQL4.0 or so. If you are using a newer version (and you probably are) you will need to download a new version of the mysql-connecter for jboss. You can grab that here: http://www.mysql.com/products/connector/j/ .

Install the copy of the mysql-connector into the $farina/jboss/server/default/lib/ directory remembering to remove the 3.0.6 version and renaming the new version to mysql-connector-(version).jar or else it will not work.

The third problem is that the script that comes with this version of farina is not setup properly to start the server. The line that states “SUBIT=”su – $JBOSSUS -c “may need to be changed. The jboss user has to have a shell and that shell has to have the appropriate env variables set up for it. The default startup script will set those variables up but when it executes “su -” all those nice variables it set up are lost. So remove the “-” or setup variables for the jboss user in the .cshrc file.

The fourth problem is that the shutdown.sh script does not work properly. For whatever reason it will not shutdown jboss. So you can modify this line “CMD_STOP=”java -classpath $JBOSSCP org.jboss.Shutdown” and add “; kill `ps -ef | grep program.name=run.sh | grep -v grep | awk ‘{print $2}’`” to your script in init.d it isn’t beautiful but it works.

Here are a copy of the instruction that I followed in order to get Framenet installed keeping in mind the above mentioned caveats.

These steps assume that mysql has been installed, and the FrameNet software has been downloaded in an accessible place.

- Configure InnoDB

The my.cnf file is the critical part (especially for specifying locations, memory allocation, etc.). I’ve included a version of one that has worked for me.

Note: all the rules/guidelines/recommendations for mysql apply here of course, e.g., let the owner of the mysql directory and files be `mysql’, etc.

- Load the data

– create the DB; assuming the name `semlinkFN’, execute this in a mysql session :

CREATE DATABASE semlinkFN

– read in the struct file and root account data in the FN distribution’s sql directory

bash-user: /DBhome/bin/mysql -p semlinkFN

- username (created a few steps ago)
- password (ditto)

- modify memory allocations in the startup script, in the bin directory of FN jboss:

/opt/farina/bin/run.sh

- update the server name specified in this startup script

Here is the my.cnf file.

[mysqld]
innodb_data_file_path = ibdata1:1500M;ibdata2:1500M;ibdata3:10M:autoextend
innodb_data_home_dir = /home/fn2/data
innodb_log_group_home_dir = /home/fn2/logs
innodb_flush_log_at_trx_commit=0
innodb_log_arch_dir = /home/fns/logs
set-variable = innodb_mirrored_log_groups=1
set-variable = innodb_log_files_in_group=3
set-variable = innodb_log_file_size=100M
set-variable = innodb_log_buffer_size=8M
set-variable = innodb_buffer_pool_size=750M
set-variable = innodb_additional_mem_pool_size=32M
set-variable = innodb_file_io_threads=4
set-variable = innodb_lock_wait_timeout=50

No Comments Yet »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

Blog at WordPress.com.