Versions Compared

Key

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

Sollten Sie sich für die Bare Metal Lösung entschieden haben finden Sie hier alle notwendigen wichtigen Informationen zur Installation der notwendigen Komponenten für Troi unter Ubuntu. Der Betrieb der Troi Software auf eigener Infrastruktur benötigt grundlegende Linux Kenntnisse, insbesondere der im Umgang mit der Konsole sollte keine Schwierigkeiten bereiten.

Anforderungen

Die Bare Metal Variante benötigt setzt Ubuntu 18.04 Headless LTS als Basissystem voraus. Troi läuft in der Theorie auch unter anderen *Nix Systemen, aber nur Ubuntu wird offiziell als Bare Metal System unterstützt.

...

Code Block
languagebash
sudo apt update
sudo apt dist-upgrade


oder in In einer Zeile bitte wie folgt:

Code Block
languagebash
sudo apt update && sudo apt dist-upgrade


Installation der notwendigen

...

Pakete

Bitte installieren Sie nicht das Standard LAMP Packet Paket bei der Ubuntu Server Edition sondern folgende PacketePakete:

Code Block
languagebash
sudo apt install openjdk-8-jre-headless nginx-light php7.2-fpm php7.2-curl php7.2-gd php7.2-cli php7.2-mysql php7.2-mbstring php7.2-zip php7.2-sqlite3 php7.2-bcmath php7.2-xml php-redis redis-server

...

Installation des Datenbankservers. : Hier kann zwischen MySQL 5.7 oder MariaDB (mind. 10.3) gewählt werden. In unserem Beispiel hier setzten setzen wir auf MySQL:

Code Block
languagebash
sudo apt install mysql-server mysql-client

...

Der FOPServer kann über folgenden Link heruntergeladen werden: https://dist.troi.software/fopserver/fopserver-v2.3.tar.gz

Download und installation Installation per Shell:

Code Block
languagebash
cd /tmp
wget https://dist.troi.software/fopserver/fopserver-v2.3.tar.gz
mkdir -p /opt/troi /var/troi/fopserver/log
tar -C /opt/troi -xzf fopserver-v2.3.tar.gz
rm /tmp/fopserver-v2.3.tar.gz
chown -R www-data:www-data /var/troi /opt/troi

...

Der FOPServer kann über folgenden Link heruntergeladen werden: https://dist.troi.software/jobscheduler/jobscheduler-linux.tar.gz

Download und installation Installation per Shell:

Code Block
languagebash
cd /tmp
wget https://dist.troi.software/jobscheduler/jobscheduler-linux.tar.gz
mkdir -p /opt/troi /var/troi/jobscheduler/log
tar -C /opt/troi -xzf jobscheduler-linux.tar.gz
rm /tmp/jobscheduler-linux.tar.gz
ln -s /var/troi/jobscheduler/log/ /opt/troi/jobscheduler/log
chown -R www-data:www-data /var/troi /opt/troi

...

Bevor die Installation von Troi selbst durchgeführt werden kann, ist die Konfiguration der Dienste notwendig.

...

Der Datenbankserver benötigt folgende Konfiguration (Es es empfiehlt sich, die Konfiguration in eine eigene Konfigurationsdatei abzulegen (z.B. /etc/mysql/mysql.conf.d/troi.cnf) um Änderungen bei Systemupdates vorzubeugen) :

...

MariaDB ab Version 10.4 benötigt eine zusätzliche Änderung, um die Performance unter Troi zu verbessern:

...

Info
titlePerformance Probleme

Unter MariaDB 10.3 sollte der Parameter `join_buffer_size` nicht angepasst werden, da dieser die Performance stark beeinträchtigen kann.

PHP

Es empfiehlt sich, die Konfiguration in eine eigene Konfigurationsdatei abzulegen (z.B. /etc/php/7.2/fpm/conf.d/99-troi.ini) um Änderungen bei Systemupdates vorzubeugen.

Code Block
memory_limit = 1G
upload_max_filesize = 20M
max_execution_time = 120
cgi.fix_pathinfo = 0
max_input_vars = 16000
post_max_size = 21M
display_errors = Off
display_startup_errors = Off
allow_url_fopen = On
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR

PHP-FPM

Es empfiehlt sich, die Konfiguration in eine eigene Konfigurationsdatei abzulegen (z.B. /etc/php/7.2/fpm/pool.d/troi.conf) um Änderungen bei Systemupdates vorzubeugen.

Code Block
[troi]
user = www-data
group = www-data
listen = /var/run/php-fpm-troi.sock
listen.owner = www-data
listen.group = www-data
pm = ondemand
pm.max_children = 75
pm.process_idle_timeout = 10s
pm.max_requests = 500
catch_workers_output = yes
chdir = /var/www
php_admin_value[openssl.cafile] = /etc/ssl/certs/ca-certificates.crt
php_admin_value[openssl.capath] = /etc/ssl/certs
php_flag[display_errors] = off
php_admin_value[error_reporting] = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
listen.backlog = 5000

Nginx

Es empfiehlt sich, die Konfiguration in eine eigene Konfigurationsdatei abzulegen (z.B. /etc/php/7.2/fpm/pool.d/troi.conf) um Änderungen bei Systemupdates vorzubeugen.

...

Nach dem alle Dienste konfiguriert und neugestartet neu gestartet wurden, gilt es die Datenbank sowie die Benutzer vorzubereiten.

In diesem Beispiel lautet das Passwort für den MySQL Troi Benutzer "nopass". Bitte änderen ändern Sie das Kennwort anschließend auf Ihrer Seite.

Code Block
CREATE USER 'troi'@'%' IDENTIFIED BY 'nopass';
GRANT USAGE ON * . * TO 'troi'@'%' IDENTIFIED BY 'nopass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
GRANT ALL PRIVILEGES ON `troi\_%` . * TO '" . $this->DatabaseUser . "'@'%';
CREATE DATABASE troi_live CHARACTER SET utf8 COLLATE utf8_general_ci;

...