Page tree
Skip to end of metadata
Go to start of metadata

This documentation has not been updated for Release 4.0.0 yet. Please see the one host (all-in-one) Manual Installation Instructions.

This documentation is for Release 3.0.0. For the Release 1 version of this page, see v.81. For the Release 2 version of this page, see v.87.

 

 

Intended as guidance for production environments with different hosts for most tasks, these instructions provide a recipe for building only the MySQL piece of an Avalon system from scratch on CentOS or Red Hat Enterprise Linux.  Recipes for the other components for Avalon may be found here.   Fedora (standalone), Web (standalone)Solr (standalone)Red5 (standalone), and Matterhorn (standalone)

Instructions for building every component on one host (all-in-on) please see here: Manual Installation Instructions.

 

Ready the Installation Environment

Install EPEL

 

rpm -ivh http://linux.mirrors.es.net/fedora-epel/6/i386/epel-release-6-8.noarch.rpm

 

This package has libyaml-devel which is required by ruby and not provided by Redhat.

Make sure a valid hostname is resolvable

The default hostname is “avalon.dev”, so name the machine this and enter it into /etc/hosts

 

# hostname
avalon.dev
# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 avalon.dev

 

Configure iptables  

The Avalon Media System requires several ports to be open to client browsers.

Here are the port settings that will need to be configured:

 

Port
Purpose
External?
3306MySQLNo

 

The preferred method is to create a shell script that will do the work for you. Here is an example script that you should look through and customize as needed: avalon-iptables-config.sh

 

If you're connected over ssh, it might kick you off.

Save your script to /etc/sysconfig/avalon-iptables-config.sh, make it executable and run it.

 

chmod +x /etc/sysconfig/avalon-iptables-config.sh
/etc/sysconfig/avalon-iptables-config.sh

 

 

If you run into connection issues you can disable the iptables, by running "service iptables stop". This will completely drop your firewall. When finished troubleshooting run "service iptables start".

Disable SELinux

 

echo 0 > /selinux/enforce
vim /etc/selinux/config #change the value of `SELINUX` from `enforcing` to `permissive`

 

Add the NUL repository  

Create the NUL repository config file:

 

vim /etc/yum.repos.d/nul-public.repo

 

Append the following code:

 

[nul_public]
name=NUL Library Public RHEL repository
baseurl=http://yumrepo-public.library.northwestern.edu/x86_64
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-nul
cost=150

 

Install and place the NUL GPG key in the proper location:

 

curl http://yumrepo-public.library.northwestern.edu/RPM-GPG-KEY-nul -o /etc/pki/rpm-gpg/RPM-GPG-KEY-nul

 

Install development libraries and packages for building Ruby

 

yum groupinstall "Development Tools"
yum install readline-devel zlib-devel libyaml-devel libffi-devel openssl-devel libxml2-devel libxslt-devel

 

MySQL

Avalon uses MySQL for storing search queries, user data and roles, and as a back end for asynchronously sending requests to Matterhorn.

Install MySQL server 

 

yum install mysql-server
service mysqld start

 

Create databases and users

Enter the mysql monitor

 

#mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
...etc...
mysql>

 

Create a database for the Fedora Commons Repository software and add a user to it 

 

create database fedora3;
create user 'fcrepo'@'localhost' identified by 'fcrepo';
grant all privileges on fedora3.* to 'fcrepo'@'localhost';
flush privileges;

 

Create a database for the Avalon web application and add a user to it

 

create database rails;
create user 'rails'@'localhost' identified by 'rails';
grant all privileges on rails.* to 'rails'@'localhost';
flush privileges;

 

Check your work and exit

 

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| fedora3            |
| mysql              |
| rails              |
| test               |
+--------------------+
5 rows in set (0.00 sec)
mysql> select user, host from mysql.user;
+--------+--------------+
| user   | host         |
+--------+--------------+
| root   | 127.0.0.1    |
|        | 129.79.32.87 |
| root   | 129.79.32.87 |
|        | localhost    |
| fcrepo | localhost    |
| rails  | localhost    |
| root   | localhost    |
+--------+--------------+
7 rows in set (0.00 sec)
 
mysql> exit;
Bye

 

See documentation for your version of MySQL Server for detailed syntax (http://dev.mysql.com/doc/refman/5.1/en/create-database.html )

Using the System

You can find specific information about using the system in the Collection Manager's Guide. Upload items individually or via batch.  Batch demo content is available for your convenience, which includes the media files and an excel document necessary to run a batch.  You can submit a batch directly via SFTP using the avalondrop account you created above.

Known Issues - a list of bugs, workarounds, and cautions.

Restarting the Server

Before you restart your Avalon server, you'll want to make sure all of the services necessary to run Avalon will start automatically after the restart. Run these commands once and you should be set:


chkconfig --level 345 mysqld on
chkconfig --level 345 sshd on
  • No labels