Requirements

Before going into details on Knowage installation, it is necessary to check if certain requirements are satisfied. We start to distinguish between the certified environments and the compatible ones. The first are those where check tests take place. The latter are those environments technically compatibles but where integration tests are not executed.

Operating systems

The following Operating Systems (OS) are those ones which suit with Knowage platform.

Certified environments

Certified Environments

Operating System

Version

CentOS

7, 8

Windows

7, 10

Compatible environments

Compatible Environments

Operating System

Version

RHEL Red Hat Enterprise

7

Ubuntu

22.04 LST

Windows server

2019, 2012, 2008

Disk usage

The Knowage installation requires 2 GB of available space on file system. This space does not include the space relative to the data and the metadata storage.

Java environment

The enviroment in which Knowage will be installed must include a JDK 1.8 installation. Be sure that the JDK component is successfully installed and that the environment variable JAVA_HOME is properly configured. The steps to configure it depend on the OS. Knowage is compatible with Open JDK 1.8.

Linux

Define the JAVA_HOME variable inside the users’ file .bash_profile used in the installation process

Instructions to set the JAVA_HOME variable for Linux environment.
export JAVA_HOME=<root path of the Java installation>
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60/
export PATH=$JAVA_HOME/bin:$PATH

Windows

Define the JAVA_HOME variable and PATH in the section “Environment variables” which can be reached from the “System”.

../_images/image712.png

Setting the path for the JAVA_HOME variable for Windows

Application server

The following lists the supported application servers:

Supported application servers

Support type

Application Server

Version

Certified

Apache Tomcat

9

For each application server installation please refer to its official documentation.

Tomcat 9.0

In the following we will refer to Tomcat installation folder as TOMCAT_HOME.

Tomcat on Linux

It is recommended to create a proper user for the execution of Tomcat. We state the main steps to follow for this purpose.

  • Create the Tomcat user.

useradd -m tomcat
passwd <password for the tomcat user>
  • Install the Tomcat using the Tomcat user. Remeber to define the TOMCAT_HOME variable.

export TOMCAT_HOME=<path of the installation Tomcat root folder >
  • Be sure that the Tomcat uses the JDK 1.8: usually the Tomcat settings are defined in the TOMCAT_HOME/bin/setenv.sh file, therefore if the TOMCAT_HOME/bin/setenv.sh file does not exit, the user must create it and insert it in the content as shown below. Note that CATALINA_PID contains the ID of the Tomcat process and it kills the process if needed.

export CATALINA_PID=<root folder of the Tomcat installation>/logs/tomcat-knowage.pid
export JAVA_HOME=<root folder of the JDK 1.8 installation>
  • Modify the TOMCAT_HOME/bin/shutdown.sh file to force the shut down of the application in case of hanging:

exec "$PRGDIR"/"$EXECUTABLE" stop -f "$@"

Tomcat on Windows

It is recommended to install Tomcat as a service. Documentation is available at https://tomcat.apache.org/tomcat-9.0-doc/windows-service-howto.html.

Database schema for metadata

Knowage uses a schema to manage metadata, that is all those information required for its operation. These concern the configuration, the users and the analytical documents. It is possible to use the following DBMSs for the creation of this schema.

Exploitable DBMSs for the metadata schema creation

Support Type

DBMS

Version

Certified

Oracle

8, 9, 10, 11, 12

Certified

MySql

5.7, 8.0

Certified

PostgreSQL

8.2, 9.1, 12.3

Certified

MariaDB

10.1, 10.2, 10.3

Therefore, a schema must be available. It can be reached through the JDBC protocol by the Knowage installation server; such a schema will be called metadata DB in the following. Observe that Knowage includes all the DDL for table creation.

Database schema for data

A schema for data must be also available. It can be queried through Knowage and can be reached through the JDBC protocol by the Knowage installation server; such a schema will be called data DB in the following.

NodeJS requirements

Important

Enterprise Edition only

NodeJS is required only for Enterprise Edition.

Knowage includes some NodeJS scripts that need to be executed with NodeJS 14 or greater: see NodeJS official documentation for the installation process.

CentOS

In CentOS you need to erase older versions of NodeJS, if present:

Command to erase older versions of NodeJS
yum erase -y nodejs

Then you need to clear YUM cache and update all local packages:

Cache clearing and system updating
yum clean all
yum update -y

Next you can install the official repository of NodeJS:

Installation of the repository of NodeJS
curl -sL https://rpm.nodesource.com/setup_14.x | bash -

Important

If you are behind a corporate proxy, you would need to set http_proxy and/or https_proxy.

Finally you can install NodeJS:

Installation of NodeJS
yum install -y nodejs

Ubuntu

In Ubuntu you need to erase older versions of NodeJS, if present:

Command to erase older versions of NodeJS
apt-get remove nodejs

Then you need to clear APT cache and update all local packages:

Cache clearing and system updating
apt-get update
apt-get upgrade -y

Next you can install the official repository of NodeJS:

Installation of the repository of NodeJS
curl -sL https://deb.nodesource.com/setup_14.x | bash -

Important

If you are behind a corporate proxy, you would need to set http_proxy and/or https_proxy.

Finally you can install NodeJS:

Installation of NodeJS
apt-get install -y nodejs

Chromium requirements

Important

Enterprise Edition only

Chromium is required only for Enterprise Edition.

Knowage provides a distribution of Chromium for its functionalities but some other dependencies are needed. In Linux distribution you need to install following Chromium dependencies:

Installation of Chromium dependencies
# For CentOS 7
yum install -y at-spi2-atk cups-libs expat glib2 glibc.i686 glibc libcanberra-gtk3 libgcc libstdc++ libX11 libXScrnSaver minizip nspr nss-mdns nss-util nss policycoreutils-python policycoreutils zlib

# For CentOS 8
dnf install -y libX11 libX11-xcb libXcomposite libXcursor libXdamage libXext libXi libXtst nss libXScrnSaver libXrandr alsa-lib atk at-spi2-atk pango gtk3 libgbm

# For Debian/Ubuntu
apt-get install -y libgbm1 libxss1 libgtk-3-0 libasound2 libatk-bridge2.0-0 libatk1.0-0 libatspi2.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libgcc1 libgdk-pixbuf2.0-0 libglib2.0-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libuuid1 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxtst6 bash

# For RedHat 7
yum install -y pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc

Support to non-latin languages

Knowage does some of its job at server side and it could need support for non-latin languages. Some operating systems don’t provides support to non-latin language by default: see the official documentation to enable the support to those languages.

For example, to install non-latin languages fonts you could use:

Installation of non-latin language fonts
# For CentOS 7
yum groupinstall fonts

# For Ubuntu
sudo apt-get install language-pack-ja
sudo apt-get install japan*

sudo apt-get install language-pack-zh*
sudo apt-get install chinese*

sudo apt-get install language-pack-ko
sudo apt-get install korean*

etc...

Supported browsers

Knowage supports the newest and the second to last version of these browsers:

Important

Internet Explorer

Internet Explorer is no longer supported by Microsoft and it is also vulnerable. Please, use one of the supported browser listed above.

Data Preparation requirements

In order to use data preparation functionality, user should have Apache Livy and Apache Spark installed. Please check Livy and Spark official documentation for more info (https://livy.apache.org/, https://spark.apache.org/) and manual installation paragraph for technical details.

This functionality is available as an add-on plugin for Smart Intelligence license.