Installation et mise à jour¶
Préconisations techniques¶
Poste | Configuration minimale | Configuration recommandée |
CPU | 2 coeurs | 4 coeurs |
Mémoire vive | 4 GB (8Gb sur un système 64-bit) | 8 GB (16Gb sur un système 64-bit) |
Espace disque disponible | 8 GB | 60 GB |
Base de données | PostgreSql 9.3 ou plus | PostgreSql 9.3 ou plus |
Serveur http | Apache 2.4.13 ou plus (avec mod_ssl) | Apache 2.4.13 ou plus (avec mod_ssl) |
Procédure d'installation¶
Installation des prérequis¶
Installation de FME¶
Dans GTF, FME est en charge de l’exécution des projets. Procéder en premier lieu à l'installation de FME pour que GTF puisse fonctionner et exécuter des traitements.
Procédure d'installation de FME en Anglais
Procédure d'installation de FME en Français
Si vous utilisez une version FE Database Edition de FME (Oracle), installer le client Oracle sur le serveur.
Sur Linux, si vous voulez utiliser FME 2018, exécuter le script suivant :
cd /opt/fme-desktop-2018/metafile
sudo cp *.fmi ./dependencies/
sudo cp *.fmf ./dependencies/
Sur Linux, FME 2020 ne se lance pas si le dossier de l'utilisateur n'existe pas, pour le créer exécuter le code suivant :
cd /var/www
mkdir .Safe\ Software
cd .Safe\ Software
mkdir FME
cd /var/www
chown -R www-data.www-data .Safe\ Software
chmod 755 -R .Safe\ Software
Sur Windows, depuis FME 2019 SAFE a changé la façon dont le code machine est calculé, il s'appuie sur des fichiers uuid déployé dans des endroits bien précis sur la machine. Il peut y avoir une différence entre le code machine visible dans l'interface de GTF et celui que l'on récupère via l'utilisation sur le serveur. Si c'est votre cas vous pouvez ajouter des variables d'environnements dans la configuration d'Apache pour lui permettre de se baser sur le bon fichier uuid.
SetEnv ALLUSERSPROFILE "C:\\ProgramData"
SetEnv ProgramData "C:\\ProgramData"
SetEnv ProgramFiles "C:\\Program Files"
SetEnv ProgramFiles(x86) "C:\\Program Files (x86)"
SetEnv ProgramW6432 "C:\\Program Files"
SetEnv USERNAME [USERNAME]
SetEnv USERPROFILE "C:\\Windows\\system32\\config\\systemprofile"
SetEnv USERDOMAIN WORKGROUP
SetEnv SYSTEMDRIVE "C:"
SetEnv TEMP "C:\\Windows\\TEMP"
Un projet disponible sur vStore permet de lister l'environnement, il vous donnera les informations à utiliser pour compléter cette partie.
Installation d'Apache 2.4¶
GTF utilise le protocole sécurisé https qui assure le cryptage des échanges entre le Serveur d’Application Vitis et le poste client. Il est donc nécessaire d’installer une version spécifique du serveur http Apache compilé avec le module SSL.
Installation de Postgresql¶
GTF utilise une base Postgresql pour stocker les informations sur les projets FME et les demandes de traitement ainsi que sur les utilisateurs et leurs droits. Si Postgresql est déjà installé sur votre poste, cette étape est facultative.
Installation de GTF¶
GTF dispose d’un installateur spécifique VAI qui permet d’assurer l’installation et la mise à jour du produit sans perte de configuration ni de données.
Pour installer GTF, éditez le fichier dependencies.json afin de définir les paramètres de votre installation.
Les variables à modifier pour l’installation sont :
Variable | Description |
API_ALIAS | Alias pour accéder à l'API de GTF (par défaut : /rest) |
APP_ALIAS | Alias pour accéder au client de GTF (par défaut : /gtf) |
HTTPSERVER_PATH | Chemin jusqu'au repertoire d'Apache24 (C:/.../Apache24/conf pour windows et /etc/apache2 pour linux) |
INSTALL_PATH | Répertoire d'installation (/var/www/gtf préférable pour Linux C:/server/gtf conseillé pour Windows) |
POSTGRES_HOST | Serveur de la base de données |
POSTGRES_PORT | Port d'accès à la base de données |
POSTGRES_DB | Nom de la base de données (La base de données peut être existante) |
POSTGRES_USER | Compte d'un superutilisateur de la base |
POSTGRES_PASSWORD | Mot de passe du compte superutilisateur |
Dans la section application il possible de définir les utilisateurs qui seront insérés lors de l'installation dans le tableau users.
{
...
"application" : {
...
"users": {
"admin": {
"grouproles": [
"vitis_user",
"vitis_admin"
],
"login": true,
"password": "admin",
"roles": [
"LOGIN",
"CREATEROLE"
]
}
}
}
}
Les clés dans users seront utilisées comme login, en fonction des informations associés l'utilisateur aura plus ou moins de droits :
grouproles : permet de définir des privilèges qui seront associés à l'utilisateur
login : permet de se connecter à la base ainsi qu'à l'application
password : mot de passe de l'utilisateur
roles : roles de l'utilisateur dans postgres
L’installateur de GTF assure les opérations suivantes :
Copie du code du serveur d’application Vitis
Copie du code du moteur GTF
Installation et configuration de l'exécutable JobsRunner comme un service
Installation de PHP et de phantomjs
Configuration du serveur HTTPS Apache
Création de la base de données dans PostgreSQL
Création d’un compte administrateur dans PostgreSQL
Nettoyage des caches
Configuration de PostgreSQL¶
Il est nécessaire de configurer le serveur PostgreSQL pour permettre à l’application d’accéder à la base de données.
La procédure ci-dessous s’applique si le serveur PostgreSQL est sur la même machine que GTF. Si ce n’est pas le cas, il faut prévoir une configuration spécifique.
Editer le fichier pg_hba.conf de PostgreSQL :
Immédiatement après « # IPv4 local connections » insérer la ligne :
# IPv4 local connections host gtfdatabase all 127.0.0.1/32 md5 # Les deux lignes ci-dessous ne sont à ajouter que pour des raisons de retro-compatibilité avec d'anciennes versions de GTF host gtfdatabase u_vitis 127.0.0.1/32 trust host gtfdatabase u_scheduler 127.0.0.1/32 trust
Immédiatement après « # IPv6 local connections » insérez la ligne :
# IPv6 local connections host gtfdatabase all ::1/128 md5 # Les deux lignes ci-dessous ne sont à ajouter que pour des raisons de retro-compatibilité avec d'anciennes versions de GTF host gtfdatabase u_vitis ::1/128 trust host gtfdatabase u_scheduler ::1/128 trust
Redémarrer le service PostgreSQL
Test de l'installation de GTF¶
L'instance de GTF doit désormais être disponible à l’adresse :
https://[serveur]/[alias]
Où [serveur] est l’adresse de la machine où vous avez installé l’application, [alias] est la clé que vous avez saisie dans le fichier de configuration de vai (par défaut : gtf).
Si vous vous connectez avec le protocole http, la connexion sera automatiquement redirigée vers https.
Si vous avez créé vous-même votre propre certificat, votre serveur n’est pas sécurisé et votre navigateur va sans doute afficher un message d’alerte.
Vous devrez créer une exception de sécurité dans votre navigateur avant de pouvoir accéder à votre site.
Si vous utilisez un certificat valide ou si vous avez créé une exception de sécurité, vous devez arriver à la page de connexion :
Vous pouvez vous connecter en utilisant le compte et le mot de passe définis lors de l’installation.
Configuration de GTF¶
Configuration Générale¶
Il est préférable de configurer un serveur SMTP pour pouvoir utiliser GTF.
Activation de votre licence GTF¶
La licence de GTF a dû vous être fourni avec le bon de commande de GTF. Pour installer la licence, vous trouverez la procédure ici.
Création d'un moteur GTF¶
Il faut commencer par définir un moteur FME.
Il faut ensuite créer un moteur GTF.
Test du moteur GTF¶
A ce stade, pour s'assurer du bon fonctionnement de GTF, il est recommandé de procéder à l'import de nouveaux traitements. Pour cela, Veremes met à disposition sur son site de téléchargement vStore un projets exemples au format .gex ou .fmw.
Vous pouvez aussi ajouter un de vos propre projet via le mode "Publication".
Se connecter à GTF puis ajouter une demande via "Mon travail".
S'assurer que la Demande ait bien été traitée.
Procédure de mise à jour¶
Depuis GTF 2019¶
Créer une nouvelle base pour GTF 2020 sur le même serveur que GTF 2019. (utiliser u_vitis comme propriétaire)
Il faut ensuite récupérer les infos de la base en version 2019 dans la futur base de GTF 2020. Le plus simple est d'utiliser la commande pg_dump
pg_dump --username=postgres -W bdd_gtf_2019 > gtf_old.backup
psql --username=postgres -W bdd_gtf_2020 < gtf_old.backup
Connecter vous ensuite sur la base de GTF 2020 et lancer le script SQL suivant :
TRUNCATE s_gtf.job, s_gtf.message, s_gtf."order";
Il faut modifier les alias Apache avant mise à jour.
renommer le fichier de configuration l'application vm_app_gtf.conf en vm_app_gtf_old.conf. Si vous être sous windows il faudra retoucher la ligne include vm_app_gtf.conf
pour modifier le nom du fichier.
Si votre GTF utilise un environnement vous pouvez sauter cette étape.
Dans le fichier vm_app_gtf.conf, modifier l'alias /gtf en /gtf_old. Dans le fichier vm_vas.conf, remplacer /rest par /rest_old. vm_php à check
Redémarrer le service apache.
intégrer les modification au niveau de la configuration :
gtf/client/conf/properties.json :
modifier la clé service_alias en rest_old
modifier la clé environment en old
gtf/vas/rest/.htaccess : modifier la clé Rewritebase en rest_old
gtf/vas/rest/conf/properties.inc : modifier la clé services_alias en rest_old
gtf/vas/rest/conf/properties_server.inc : modifier la clé services_alias en old
Connecter vous à GTF en utilisant l'alias gtf_old, toute l'application doit fonctionner.
Il est maintenant possible de lancer la mise à jour de GTF sur la nouvelle base avec VAI.
Modifier le dependencies.json et lancé l'exécutable installer.
ATTENTION : N'installez pas la version 2020 de GTF dans le même dossier que GTF 2019.
Il faut retoucher la configuration pour récupérer les mots de passe de u_vitis et u_scheduler.
Dans le dossier gtf_2020/vas/var/ws_data nouveau gtf créer le dossier gtf (créer les parents s'ils n'existent pas).
Copier le dossier de l'ancien GTF gtf/vas/ws_data/gtf/workspace dans le nouveau GTF gtf_2020/vas/var/ws_data/gtf/workspace.
Copier le dossier Shared de l'ancien GTF gtf/vas/shared s'il existe vers le nouveau GTF gtf_2020/vas/var/shared.
ATTENTION : Remettre les droits sur les dossier dans GTF 2020 si vous êtes sous linux.
Il faut ensuite relancer le parseur sur tous les projets et mettre à jour chaque période.
certaines étapes vont être géré dans un exécutable de migration.