Installation via Puppet is deprecated as of Avalon 6.0. If you're looking for automated installation, please see our documentation on installing Avalon with Docker (forthcoming). |
This documentation is for Release 5.x. For documentation on previous releases, please select from the options below. |
Create and log into a CentOS 6.x or Red Hat Enterprise Linux 6.x system as a user with sudo rights
The current Puppet script has issues if executed on a clean, "minimal" CentOS. A "minimal desktop" CentOS is recommended. |
Become root
sudo -s |
Disable SELinux (which we're not currently set up to support)
echo 0 > /selinux/enforce sed -ie "s/SELINUX=enforcing/SELINUX=permissive/" /etc/selinux/config |
Install puppet from the Puppet Labs repository
rpm -ivh http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-10.noarch.rpm yum install puppet |
rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm |
Install git
yum install git |
Install Ruby 2.2.5 if ruby current version is lower
ruby -v #The following command won't work the first time. # It will request you download the signatures first # and provide the command to download it. curl -sSL https://get.rvm.io | bash -s source /usr/local/rvm/scripts/rvm rvm install 2.2.5 rvm use 2.2.5 gem install bundler |
Install json extensions for the system ruby
gem install ruby-json |
Clone the Avalon install script
git clone --recursive --depth 1 https://github.com/avalonmediasystem/avalon-installer.git -b 5.x-stable cd avalon-installer |
Set up the installation variables
export INSTALL_DIR=`pwd` ln -s $INSTALL_DIR/files /etc/puppet/avalon_files |
Collect facts to feed to puppet about your installation, the following will create hiera/data/custom.yaml
ruby -r './fact_gatherer.rb' -e 'FactGatherer.gather_facts' |
yum update |
Execute the puppet script
rvm system do puppet apply --fileserverconfig=$INSTALL_DIR/fileserver.conf \ --modulepath=$INSTALL_DIR/modules --hiera_config=$INSTALL_DIR/hiera/hiera.yaml \ --templatedir=$INSTALL_DIR/templates manifests/init.pp --detailed-exitcodes |
If you see errors like "Could not prefetch firewall provider 'iptables'", then running `iptables --flush` will help. |
Be patient. The manifest needs to download, install and configure a whole lot of dependencies and servers. This could take 30 minutes or more even with a fast connection.
When the script finishes, open a web browser and connect to the public address for your server (e.g.,http://avalon.example.edu/
) Create a new user with email archivist1@example.com, this is the default collection_manager and group_manager.
NOTE: Puppet needs to download dozens of system packages, software distributions, source files, and other information, largely from trusted third party repositories. Sometimes, one or more repositories might be offline, unresponsive, or otherwise unavailable, causing Puppet to display a series of errors about failed dependencies. Fortunately, Puppet can usually figure out how to make things right. Simply repeat the puppet apply ...
command in step 11 to try to repair the install.
The Avalon Media System requires several ports to be open to client browsers. The Vagrant Install handles all the port forwarding for local access automatically, but the manual install will require attention to make sure the required ports are open and accessible. Here are the manual instructions.
Port | Purpose | External? |
---|---|---|
80 | HTTP (Avalon) | Yes |
1935 | RTMP (red5) | Yes |
5080 | HTTP (red5) | No |
8983 | HTTP (Fedora/Solr) | No |
18080 | HTTP (Matterhorn) | Yes |