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


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 “”, so name the machine this and enter it into /etc/hosts


# hostname
# cat /etc/hosts   localhost localhost.localdomain localhost4 localhost4.localdomain4


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:




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:


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

Save your script to /etc/sysconfig/, make it executable and run it.


chmod +x /etc/sysconfig/



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:


name=NUL Library Public RHEL repository


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


curl -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



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


Welcome to the MySQL monitor. Commands end with ; or \g.


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   |    |
|        | |
| root   | |
|        | localhost    |
| fcrepo | localhost    |
| rails  | localhost    |
| root   | localhost    |
7 rows in set (0.00 sec)
mysql> exit;


See documentation for your version of MySQL Server for detailed syntax ( )

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