Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
vim /etc/selinux/config #change the value of `SELINUX` to `disabled`

Reboot to apply change

Code Block
shutdown -r now

Install EPEL

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

...

Enter the mariadb client

Code Block
mysql
mariadb> create database fcrepo;
mariadb> create user 'fcrepo'@'localhost' identified by '<fcrepo_password>';
mariadb> grant all privileges on fcrepo.* to 'fcrepo'@'localhost';
mariadb> flush privileges;

Check your work and exit

Code Block
mariadb> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| fcrepo             |
| performance_schema |
| test               |
+--------------------+
5 rows in set (0.00 sec)
mariadb> exit;
Bye

...

Append the following to /etc/tomcat/tomcat.conf

Code Block
JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.modeshape.configuration=classpath:/config/jdbc-mysql/repository.json -Dfcrepo.mysql.username=fcrepo -Dfcrepo.mysql.password=<fcrepo_password> -Dfcrepo.mysql.host=localhost -Dfcrepo.mysql.port=3306 -Dfcrepo.home=/var/avalon/fedora/"

Restart Tomcat

code
systemctl restart tomcat

Download and run the fcrepo installer

Code Block
mkdir -p /var/avalon/fedora
chown tomcat:tomcat /var/avalon/fedora
wget https://github.com/fcrepo4/fcrepo4/releases/download/fcrepo-4.7.5/fcrepo-webapp-4.7.5.war -O /usr/share/tomcat/webapps/fedora4.war

Restart Tomcat

Code Block
systemctl restart tomcat

See if you can access Fedora's REST interface at http://<server host name>:8984/fedora4/rest

...

Instructions on how to manually start/stop Solr: https://cwiki.apache.org/confluence/display/solr/Running+Solr

Media Streaming Server

Warning

Nginx replaces Red5 as the default streaming server since Avalon 6.3. With the upgrade to MediaElementjs 4, we now rely completely on HLS.

An HLS-enabled server like An HLS-enabled server like Wowza, Adobe Media Server (commercial) or Nginx + the HLS module (open-source) can take an mp4 created by Avalon and stream it on the fly.

...

Code Block
semanage port -a -t http_port_t  -p tcp 8980
systemctl start nginx

Later: Avalon config should be updated to be compatible with Nginx:

...

Info
titleDownload prebuilt ffmpeg

You can choose to download prebuilt binaries instead of building it yourself. Extract and copy ffmpeg to /usr/bin/

Installation prerequisites

Install prerequisite packages using yum and the Avalon repository (note: mediainfo is pinned to 0.7.61-1 because of a bug with time fragment formatting in most recent version 0.7.87-1 in epel):

Code Block
yum install SDL-devel a52dec-devel bzip2-devel faad2-devel freetype-devel frei0r-plugins-devel \
	gsm-devel imlib2-devel lame-devel libdc1394-devel libraw1394-devel librtmp-devel libtheora-devel \
	libva-devel libfaac-devel libvdpau-devel libstdc++-devel libvorbis-devel libvpx-devel \
	mediainfo-0.7.61-1 opencore-amr-devel opencv-devel openjpeg-devel openssl-devel schroedinger-devel \
	speex-devel texi2html vo-aacenc-devel x264-devel xvidcore-devel yasm zlib-devel

Install rpmdev-setuptree

Code Block
yum install rpmdevtools

Install ffmpeg srpm

The following commands need to run under a user other than root. Change to another user to continue.

Code Block
su - someuser

Run the ffmpeg installer

Code Block
rpmdev-setuptree
rpm -ivh https://github.com/avalonmediasystem/avalon-installer/blob/master/files/ffmpeg/ffmpeg-2.4.2-1.el6.src.rpm?raw=true

# Retrieving https://github.com/avalonmediasystem/avalon-installer/blob/master/files/ffmpeg/ffmpeg-2.4.2-1.el6.src.rpm
#   1:ffmpeg                 warning: user makerpm does not exist - using root
# warning: group makerpm does not exist - using root
########################################### [100%]
# warning: user makerpm does not exist - using root
# warning: group makerpm does not exist - using root
# Build ffmpeg binary as non-root and install as root

rpmbuild -bb rpmbuild/SPECS/ffmpeg24.spec

Log back in as root and finish the install.

Code Block
su - root
rpm -ivh /home/someuser/rpmbuild/RPMS/x86_64/ffmpeg-*.rpm

...

The following prebuilt binaries are provided by a third party. Proceed with caution.

Download and install ffmpeg:

Code Block
mkdir -p /tmp/ffmpeg && cd /tmp/ffmpeg
curl https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz | tar xJ
cp `find . -type f -executable` /usr/bin/

HTTPD

Install and start the httpd service.

...

Change current user to avalon then install RVM and ruby 2.4.1

Code Block
yum install ruby sqlite-devel # Needed to build Ruby using RVM.
useradd avalon
su - avalon
curl -L https://get.rvm.io | bash -s stable --ruby=2.5.7

...

Code Block
source /home/avalon/.rvm/scripts/rvm
rvm use 2.5.7

Install Passenger via Gem (as avalon user)

Code Block
gem install passenger

Check to make sure passenger installed in the expected location (as avalon user)

Code Block
$ passenger-config --root
/home/avalon/.rvm/gems/ruby-2.5.7/gems/passenger-6.0.4

Install Passenger apache module requirements (as root)

...