Rocky 8 Operating System Configuration

Rocky 8 Operating System Configuration


Introduction

Icareus Playout 6.1 runs on the Enterprise Linux 8 or 9 operating systems, e.g. Rocky Linux 8. To install the Operating System, see installation of the Rocky Linux 8 operating system. Official installation instructions are here. To run Playout, some further configuration of the operating system is necessary. This includes changing some system configuration files, configuring network interfaces and installing additional software.
Notes
The following instructions have been updated for Playout version 6.1.0.0. Some file names and folders have the el8 suffix (for Enterprise Linux 8). In the case you're installing on EL9, these will have the el9 suffix
Info
This page assumes you have obtained the Playout software in a directory 6-1-0-0 (a.k.a. distribution folder) from Icareus.

It is very much recommended that the server has an Internet connection at this point, because updating the system with the dnf or yum command requires it. Make sure the server is in a secure local network behind a well configured firewall.

Commands you need to type as a Rocky Linux root or sudo user are shown below as numbered lines of code. In some cases contents of files are shown as code. When editing configuration files you can use for example the text editor nano.

Check MD5 digests of files

To install Icareus Playout, Icareus will provide you with a directory which contains Playout, Playout Web Console and some other useful software. Icareus usually puts this directory in the /root/Downloads directory, i.e. /root/Downloads/6-1-0-0, on the relevant server where Icareus Playout is going to be installed.

In addition to other files there is an MD5 sum text file. In a terminal check the MD5 digests:
  1. cd /root/Downloads/6-1-0-0
  2. md5sum -c md5sum-6.1.0.0*.txt
The command should output OK for all files, for example:

api-6.1.0.0-el8.zip: OK
...

If the output says FAILED instead of OK, that indicates that the files have not been copied successfully to the server. Make sure you obtain valid files before proceeding.

The contents of the 6-1-0-0-el9 folder is:
  1. api-6.1.0.0-el8.zip: Contains Playout API which provides a backend API for Playout Webconsole. Requires Node.js to be installed first (see below).
  2. dektec-6.1.0.0-el8.zip: A folder containing drivers for Dektec cards. This is needed for example when your server uses ASI output.
  3. md5sum-6.1.0.0.txt: MD5 checksums for provided files. These are used to verify that all files have been copied fully and without data corruption.
  4. nodejs-6.1.0.0.zip: This folder contains a Node.js versions for Playout Webconsole and for Playout API, and some scripts to install (or uninstall) Node.js.
  5. operating-system-configuration-6.1.0.0-el8.zip: This contains shell scripts that contain some of the commands used on this page.
  6. playout-6.1.0.0-el8.zip: This folder contains the Playout server back end. These are Linux services that are responsible for creating DVB tables and outputting them to transport streams.
  7. pmc-6.1.0.0.zip: Contains PMC (Icareus Playout Management Console) which is legacy software for configuring Playout. It cointains files playout-management-console-6.1.0.0-1.noarch.rpm is for installing on a Linux desktop, e.g. on the server where Playout is installed and pmc-6.1.0.0.exe is PMC installer for Microsoft Windows. In addition there are 2 shell scripts for installing/updating the RPM and running PMC on Linux.
  8. redundancy-6.1.0.0.zip: Software needed to replicate databases in a 1+1 or other redundant Playout installation.
  9. rpms-6.1.0.0-el8: RPMS for the specific Java version used by Playout API.
  10. unzip-all.sh: A script you can run to to unzip all zip files in the folder.
  11. webconsole-6.1.0.0-el8: This folder contains Playout Web Console which is a front end for configuring Playout. The folder includes scripts to install it. It requires Node.js to be installed first.

After checking the md5sum of the files you can unzip all the zip files using one powerful command:
  1. bash unzip-all.sh


Configure and update the Operating System

Info
During the initial configuration and updating of the operating system, access to the external Internet is needed, in order to download software packages.

Configure networking

Often Icareus Playout runs on rack servers that have e.g. 4 or 6 network interfaces.
Icareus Playout requires networking to work. On Rocky Linux 8 the configuration files for network interfaces are in the directory /etc/sysconfig/network-scripts.
To see the interfaces present on the system use the command:
  1. ip a
This displays all interfaces available on the system. For each interface, create and ifcfg file for the interface configuration.
For example if the eno1 interface is present edit the file /etc/sysconfig/network-scripts/ifcfg-eno1.
Icareus expects that networking is configured by a local networking administrator, as connecting to a network is always site specific.

Info
Icareus recommends that the Icareus Playout servers are located within a trusted network environment and that the servers are not directly accessible from the public Internet.

Info
For remote support, providing a remote connection for Icareus is highly recommended. This can be for example TeamViewer access or a VPN connection to the internal network.

The recommended use of network interfaces with Icareus Playout is the following. Here eth0 represents the name of the first network interface and so on, nowadays with systemd the interfaces have names like eno1 etc.:

eth0 - data output
eth1 - data output (if needed)
eth2 - redundancy
eth3 - management (Internet connection)

Please refer to Rocky Linux documentation on configuring networking or other documentation to configure the network.

Reboot and check interfaces

Reboot the system for the changes to take effect
  1. reboot
After rebooting, make sure that the network configuration is correct.

Update packages, disable SELinux and reboot

Idea
In the distribution folder there is a folder operating-system-configuration-6.1.0.0-el8 which contains scripts that run the specified commands below. Run the scripts from there.
Open a terminal (shell) for the root user and change to the OS configuration folder:
  1. cd /root/Downlaods/6-1-0-0/operating-system-configuration-6.1.0.0-el8
In the folder do:
  1. bash update-packages.sh
Wait for software packages to be downloaded and installed. The time required depends on your system and networking, but will take at least several minutes.
SELINUX must be disabled. In the files /etc/sysconfig/selinux and /etc/selinux/config, change enforcing to disabled. Run the command:
  1. bash disable-selinux.sh
Reboot the system after this using the reboot command. After the reboot SELinux is disabled.
  1. reboot

Check that SELinux is disabled

After the system starts again, login as root and check the SELinux status:
  1. sestatus
which should show

SELinux status:                 disabled

Disable automatic Rocky Updates

The reason to disable the updates is that we don't want any unpredictable changes in the system which might stop or restart it or cause an incompatibility with Icareus Playout software.
In the OS configuration folder do:
  1. bash disable-automatic-updates.sh

Enable EPEL (Extra Packages for Enterprise Linux) repository configuration

  1. bash install-epel-release.sh

Enable useful services for logging, NTP and SNMP

  1. bash enable-logging.sh
  2. bash enable-ntp.sh
  3. bash enable-snmp.sh

Install postgresql database

  1. bash install-postgresql.sh

Install Xerces XML parser

  1. bash install-xerces-c.sh

Install needed packages and useful tools

  1. bash install-needed-packages-and-useful-tools.sh

Install development tools

  1. bash install-development-tools.sh

Optionally install libreoffice

If your Icareus Playout server will be used for EPG and input files are in MS Excel format, install libreoffice.
  1. bash install-libreoffice.sh

Remove tracker-miners

  1. bash remove-tracker-miners.sh

Set correct server time zone

The Time zone can be selected during OS installation with GUI. If it is incorrect it's possible to correct it.
Check current time configuration.
  1. timedatectl
Find available time zones.
  1. timedatectl list-timezones
For example if you're based in Finland, use the time zone Europe/Helsinki.
  1. timedatectl set-timezone Europe/Helsinki
The command date shows the current server date and time and the time zone.
  1. date

Optionally set host name

Its useful to set a host name, unless you already did that during installation. For example if you want to name your server playout-epg1:
  1. hostnamectl set-hostname playout-epg1
Opening a new terminal window will display the prompt with the new hostname, in this case:
  1. [root@playout-epg1 ~]#

Install packages provided by Icareus

This section assumes you have the 6-1-0-0 software distribution folder and have unzipped zip files.

    Install correct version of Java

    Playout API 6.1.0.0 EL8 requires Java OpenJDK Runtime Environment (build 1.8.0_442-b06).

    Iissue commands:
    1. cd rpms-6.1.0.0-el8
    2. bash install-rpms.sh
    3. java -version
    The output should be:
    1. openjdk version "1.8.0_442"
    2. OpenJDK Runtime Environment (build 1.8.0_442-b06)
    3. OpenJDK 64-Bit Server VM (build 25.442-b06, mixed mode)

    Install Node.js

    Install Node.js using the following commands:
    1. cd nodejs-6.1.0.0
    2. bash install-node.sh
    This installs node-v12, needed by Playout Webconsole and node-v22, needed by Playout API.
    The script outputs some filenames followed by Please login again to activate Node.js. You can just start a new bash shell in the same terminal and check the node version.
    1. bash
    2. node -v
    The output should be
    1. v12.22.12
    Note that node will be in our bash command PATH for all new terminals you open.
    Exit the node directory using the command
    1. cd ..

    Install slony

    Slony is used to replicate the Playout database from one server to another. Install slony using the following commands:

    1. cd redundancy-6.1.0.0/slony1-2.2.6
    2. ./configure && make && make install
    3. cd ../..

    Optionally install DekTec drivers

    DekTec drivers are needed if Playout is going to use a DekTec ASI or IP card for transport stream (TS) output.

    Idea
    It doesn't hurt to compile the drivers even if a card is not present in case one is added later.

    One way to check for the presence of Dektec cards is the command lspci:
    1. lspci | grep -i dektec
    Output might be e.g.
    1. 02:00.0 Multimedia video controller: DekTec Digital Video B.V. Device 0861 (rev 01)
    To compile and install the Dektec drivers do:
    1. cd dektec-6.1.0.0
    2. bash install-dektec-drivers.sh
    After the compilation finishes use the lsmod command to check that the Dektec drivers have been loaded into the kernel:
    1. lsmod | grep Dt
    Output should be something like:
    1. DtPcie               2428928  0
    2. DtaNw                  53248  0
    3. Dta                  1331200  1 DtaNw
    4. Dtu                  8830976  0
    Again, change back to the top level directory.
    1. cd ..

    At this point your system is ready for the next step which is to install Icareus Playout itself.



      • Related Articles

      • Installation of Rocky Linux 8 Operating System

        Installation of Rocky Linux 8 Operating System This document outlines a graphical installation of Rocky Linux 8 Operating System on x86-64 server hardware. Icareus Playout will be installed as a set of programs running on this operating system. The ...
      • Migration of older Playout versions to Playout 6

        Introduction Icareus Playout 4 runs on the CentOS 6 operating system, which reached end of life on November 30th, 2020. Because of this, Icareus developed Playout 5 which runs on CentOS 7 and Playout 6 which runs on CentOS 7 and on Rocky 8. It's ...
      • General Settings

        Introduction In this chapter we go through the server wide settings of Playout server. All  general configuration is done from Server -> Settings There may be other settings available from Server -> Settings -menu, but these always relate to a ...
      • ActiveAd Configuration

        Introduction In order to successfully display Active Ads on a device, the following things are required: HbbTV Launcher Application Active Ad Campaign Creative Adding an Active Ad Campaign Campaigns can be added in Icareus Suite by navigating to ...
      • Playout Redundancy

        Introduction to Playout Redundancy Icareus Playout can be installed as a redundant system with two to four hardware servers to ensure excellent service level. There are several redundancy architectures depending on the head-end and desired usage. ...