Guide d'Installation Linux

Modifié par jhurst le 2021/10/29 13:24


 Java est requis pour pouvoir lancer DigDash. Actuellement, la version 17 de java n'est pas supportée et ne fonctionnera pas. Nous recommandons d'utiliser java 11 (les versions 12 à 16 n'étant pas des versions LTS) pour le moment.

Vocabulaire

Dans toutes les pages de documentation, les "applications" font références aux fichiers .war présents dans le serveur DigDash Enterprise :

  • Serveur : ddenterpriseapi.war
  • Tableau de bord : digdash_dashboard.war
  • Web Studio : studio.war
  • Page d'accueil et Desktop Studio : adminconsole.war

Cet ensemble d'applications constitue un domaine. Selon les besoins ce domaine peut être dupliqué pour par exemple disposer d'un contexte de développement et un autre de production.
Pour déployer plusieurs domaines suivez ce lien.

L'installation de DigDash Enterprise sur Linux peut se faire de deux façons :

  • Utiliser le serveur d'application Tomcat livré dans l'archive d'installation DigDash Enterprise
  • Utiliser votre propre serveur Tomcat ou serveur d'application compatible JEE.

Ce document décrit comment utiliser le serveur Tomcat livré en standard, ainsi que l'installation d'un autre Tomcat.

Pour l'installation sur Windows, se reporter au document Guide d'installation de DigDash Enterprise sur Windows.

Pour une mise à jour d'une installation existante, se reporter au document Guide de mise à jour DigDash Enterprise.

Tomcat STANDARD DigDash

Décompression

  • Décompressez le fichier digdash_enterprise_2021R1_numpatch.zip dans le répertoire de votre choix, de préférence /user/share/digdash_enterprise.
    • L'idéal est un nom sans version, pour ne pas induire en erreur sur le contenu de l'installation lors des mises à jour à venir.
  • Vérifiez que votre dossier d'installation contient le fichier version.txt.
    • C'est lui qui indiquera de manière certaine la version du produit (sans avoir à démarrer le serveur).

Propriétaire et droits

Donnez à l’utilisateur <USER> de votre choix la propriété ainsi que les permissions de lecture et écriture dans le répertoire /usr/share/digdash_enterprise_20xxxx à l’aide de la commande :

USER@domain:~# chown –R USER /usr/share/digdash_enterprise
USER@domain:~# chmod –R 755 /usr/share/digdash_enterprise

Indiquez où ce trouve le fichier de configuration

Le fichier digdash.properties présent dans le répertoire d'installation vous permet de configurer tout l'environnement.

Pour qu'il soit utilisé correctement par DigDash Enterprise copiez le dans le dossier /etc/digdash.

Attention aux droits d'accès, procédez comme à l'étape précédente.

Vous pouvez alors modifier le fichier digdash.properties pour personnaliser votre envionnement.
Voir le chapitre Externalisation des paramètres dans le fichier digdash.properties.

Emplacement du dossier de vos données

DigDash Enterprise stocke les informations de configuration, les modèles de données, les portefeuilles d'information, les cubes, l'historique des flux et d'autres fichiers de travail dans le dossier de l'utilisateur du système d'exploitation, dans un sous dossier Application Data/Enterprise Server/<domaine>.

Par exemple sous Windows, ce dossier est :
C:\Users\<utilisateur>\AppData\Roaming\Enterprise Server\ddenterpriseapi

Il est important de modifier ce dossier pour en garantir l'accessibilité (droits en lecture/écriture/exécution) et pour maitriser l'espace de stockage (ce dossier peut être volumineux).
Cette modification est aussi intéressante pour des raisons d'organisation, de scripting, etc.

Il existe plusieurs moyen de modifier ce chemin.

Dossier commun à tous les domaines

Fichier modifié : digdash.properties

Ceci est le moyen le plus simple et efficace. Tous les domaines de DigDash Enterprise en profiterons (un seul paramétrage pour toutes).
L'autre méthode n'est à utiliser qu'en cas de besoin spécifique.

La variable digdash.appdata permet de spécifier l'unique dossier des données.
Dans le fichier <DDE Install>/digdash.properties décommentez la ligne #digdash.appdata=c:/data en supprimant le caractère # en début de ligne :

digdash.appdata=/var/lib/digdash/appdata

Si ce dossier n'existe pas, DigDash Enterprise le crée. Les données ne seront pas stockées directement dans ce dossier, mais dans des sous dossier pour chaque domaine :
<digdash.appdata>/Enterprise Server/<domaine>

<digdash.appdata>/Enterprise Administrator
<digdash.appdata>/ldapdigdash

Avantage : La configuration se faisant au niveau du fichier digdash.properties, elle ne sera pas écrasée lors de la mise à jour de DigDash Enterprise par déploiement de nouveaux fichiers WAR.

Inconvénient : Cette configuration est globale au Tomcat de DigDash Enterprise, donc tous les domaine DigDash Enterprise de ce serveur sont concernés.
Cependant les données des différents domaines DigDash Enterprise déployés dans ce Tomcat ont bien leur sous-dossier propre, il n'y a aucun risque d'écrasement des données.

Dossier différent pour chaque domaine

Fichier modifié : digdash.properties

La variable <domaine>.AppDataPath définie dans ce fichier a le même comportement que la variable globale décrite ci-dessus.
La différence est que ce paramétrage est spécifique à un domaine DigDash Enterprise.

Pour définir un dossier des données spécifique à un domaine, modifiez le paramètre AppDataPath préfixé du nom du domaine.
Si vous avez un domaine ddenterpriseapi_dev, le paramètre sera :

ddenterpriseapi_dev.AppDataPath=/var/lib/digdash/appdata_dev

Avantages :

  • Configuration locale à un domaine
  • Fichier externe au WAR

Inconvénient : Configuration à faire pour chaque domaine.

Lancer Tomcat

Avec votre utilisateur <USER> exécutez la commande de lancement de Tomcat :

USER@domain:~# cd /usr/share/digdash_enterprise_20xxxx/apache-tomcat/bin/
USER@domain:~# sh startup.sh

Votre propre serveur Tomcat en tant que service

Dû aux options de sécurité et du mode d'exécution de Tomcat dans les différents services Tomcat des distributions de Linux, il faut s'assurer que l'utilisateur utilisé pour exécuter Tomcat ait les droits suffisants pour créer les fichiers dont DigDash a besoin.

  1. Installez Tomcat
  2. Téléchargez et décompressez la build de DigDash.
  3. Exécutez la commande suivante en tant que root : mkdir /etc/digdash
  4. Dans le dossier /etc/digdash :
    1. Copiez le fichier digdash.properties
    2. Supprimez le # précédent le paramètre digdash.appdata, attribuez lui la valeur digdash.appdata=/var/lib/digdash/appdata
  1. Copiez les fichiers WAR situés dans le dossier apache-tomcat/webapps de la build de DigDash vers le dossier webapps de Tomcat (probablement /var/lib/tomcat9/webapps).
  2. Tomcat devrait extraire les WARs automatiquement. Si ce n'est pas le cas, redémarrez Tomcat (via service tomcat9 restart).
  3. En tant que root exécutez les commandes suivantes :

    cd /var/lib
    mkdir digdash
    chown tomcat9:tomcat9 digdash
    cd /var/log
    mkdir digdash
    chown tomcat9:tomcat9 digdash
  4. Dans le fichier /etc/digdash/digdash.properties :
    • Activez le paramètre log4j.appender.R.File pour chaque application (supprimez le # en début de ligne).
    • La valeur par défaut permt d'avoir un seul fichier de log : /var/log/digdash/ddenterpriseapi.log
      Vous pouvez le modifier pour avoir, si besoin spécifique, un fichier par application.
      Par exemple il est intéressant de séparer les logs de l'application studio (studio.war)
      studio.log4j.appender.R.File=/var/log/digdash/studio.log
  5. Redémarrez Tomcat (via service tomcat9 restart)

Dépannage

"Permission denied" ou "Read-only system"

Si vous avez le message "permission denied", "read-only system" dans les logs ou des problèmes similaires après l'installation de DigDash et que vous utilisez un service systemd pour démarrer Tomcat (le type de service par défaut sur la plupart des distributions de Linux), il se peut que ça soit à cause de certains paramètres de sécurité dans le fichier service.

Pour plus d'informations (site en anglais) : https://www.freedesktop.org/software/systemd/man/systemd.exec.html#Sandboxing

Pour résoudre ces problèmes :

  1. Trouvez le fichier tomcat9.service
  2. Ouvrez ce fichier en tant que root
  3. Assurez vous que le champ ProtectSystem existe
  4. Ajoutez ReadWritePaths=/var/lib/digdash et ReadWritePaths=/var/log/digdash s'ils n'y sont pas déjà
  5. Sauvegardez le fichier
  6. Executez la commande suivante en tant que root pour recharger le fichier service : systemctl daemon-reload
  7. Redémarrez Tomcat (via service tomcat9 restart ou systemctl restart tomcat9.service)