Framework d'installation et d'hébergement de portails TXM de l'ENS

Cette page sert au suivi de projet de mise en place du framework avec DUNES.

Architecture utilisée pour l'exposition Paroles de libérés

Un portail TXM a déjà été installé à l'ENS pour l'exposition Paroles de libérés à la bibliothèque Diderot.

  • sur une machine virtuelle de type “dev” atteignable seulement depuis l'ENS
    • configuration : ???
  • accès SSH pour paramétrer le portail
  • dans un tomcat indépendant installé dans le home de l'utilisateur “txm”

Proposition d'architecture

Serveurs

On utilise 3 machines virtuelles ayant des rôles et des accès différents :

  • dev : pour tester les derniers développements (logiciel) avant de mettre à jour qualif
    • atteignable seulement depuis l'ENS et par VPN
  • qualif (anciennement pré-prod) : pour mettre en forme de production (paramétrages, corpus, profils et utilisateurs) dans un environnement accessible avant de transférer automatiquement en prod
    • atteignable seulement depuis l'ENS et par VPN
  • prod : pour donner un accès public exclusif au portail (pas d'autre accès possible que celui au portail lui-même)
    • machine de production qui s'expose sur le WEB
    • accès contrôlés par des commandes push&pull
    • utilisation d'un frontal Apache pour filtrer et réécritures d'URL

Répertoires d'un portail TXM

Soit “mon-portail” le nom du portail publié.

Il y a un tomcat par portail.

Soit “uportail” l'utilisateur qui exécute les tomcat correspondant aux portails d'une équipe (qui peut gérer plusieurs portails : démo, bfm, test, etc.).

  • ~uportail/.TXMWEB/mon-portail contient :
    • les fichiers de configuration du portail et de la toolbox
    • les corpus → la configuration du corpus stocke les requêtes des sous-corpus et partitions créés
    • les utilisateurs → un fichier est créé quand un utilisateur s'inscrit, un fichier est modifié quand un utilisateur se connecte/déconnecte
    • les profiles → un fichier est créé quand l'administrateur du portail crée un profile, un fichier est modifié quand l'administrateur met à jour les droits d'un profile
  • ~uportail/projets/mon-portail : contient les fichiers HTML spécifiques au portail. Ces fichiers sont recopiés dans la webapps une fois celle-ci déployée
  • $TOMCAT/webapps/mon-portail
    • html : pages de navigation internes du portail
    • images
    • biblios : pages de notices des textes des corpus du portail
    • pdfs : version pdf des textes des corpus du portail

Protocole PUSH & PULL entre qualif et prod

Il y a 4 commandes dont 2 PUSH et 2 PULL. Les sous-points1) sont des commandes appelées par la commande parent.

PULL

  • pullgconf commande générique : récupérer des fichiers/répertoires de configuration prod : à lire depuis ~/TXMWEB/mon-portail/
  • pullsconf commande spécifique2) : récupérer toute la configuration prod
    • récupérer les utilisateurs prod : ~/TXMWEB/mon-portail/data/users
    • récupérer les profiles prod : ~/TXMWEB/mon-portail/data/profiles
    • récupérer les logs prod : ~/TXMWEB/mon-portail/logs & $TOMCAT/logs/catalina.out & $TOMCAT/logs/locahost.out
    • récupérer les corpus prod : ~/TXMWEB/mon-portail/corpora
    • récupérer les archives zip de corpus : ~/TXMWEB/mon-portail/zip
    • récupérer la configuration portail : ~/TXMWEB/mon-portail/txmweb.conf
    • récupérer la configuration Toolbox du portail : ~/TXMWEB/mon-portail/textometrie.properties
  • pullghttp commande générique : récupérer des fichiers/répertoires de webapps prod : à lire depuis $TOMCAT/webapps/mon-portail
  • pullshttp commande spécifique : récupérer les fichiers webapps prod
    • récupérer les pages HTML et JSP prod : $TOMCAT/webapps/mon-portail/html et $TOMCAT/webapps/mon-portail/jsp
    • récupérer les images prod : $TOMCAT/webapps/mon-portail/images
    • récupérer les pages de bibliographies prod : $TOMCAT/webapps/mon-portail/biblio
    • récupérer les css prod : $TOMCAT/webapps/mon-portail/css
    • récupérer les scripts javascript prod : $TOMCAT/webapps/mon-portail/js
    • récupérer les éditions de texte PDF prod : $TOMCAT/webapps/mon-portail/files
    • récupérer la page générale du site : $TOMCAT/webapps/mon-portail/TXMWEB.jsp
    • récupérer la CSS générale du site : $TOMCAT/webapps/mon-portail/TXM_RIA.css
    • récupérer les chartes graphique du site : $TOMCAT/webapps/mon-portail/txmweb/sc/skins

PUSH

  • pushgconf commande générique : maj de fichiers/répertoires de configuration prod : à copié dans ~/TXMWEB/mon-portail/
  • pushsconf commande spécifique : maj toute la configuration prod
    • maj les utilisateurs prod : ~/TXMWEB/mon-portail/data/users
    • maj les profiles prod : ~/TXMWEB/mon-portail/data/profiles
    • maj les logs prod : ~/TXMWEB/mon-portail/logs & $TOMCAT/logs/catalina.out & $TOMCAT/logs/locahost.out
    • maj les corpus prod : ~/TXMWEB/mon-portail/corpora
    • maj les archives zip de corpus : ~/TXMWEB/mon-portail/zip
    • maj la configuration portail : ~/TXMWEB/mon-portail/txmweb.conf
    • maj la configuration Toolbox du portail : ~/TXMWEB/mon-portail/textometrie.properties
  • pushghttp commande générique : maj de fichiers/répertoires de webapps prod : à copié dans $TOMCAT/webapps/mon-portail
  • pushshttp commande spécifique : maj les fichiers webapps prod
    • maj les pages HTML et JSP prod : $TOMCAT/webapps/mon-portail/html et $TOMCAT/webapps/mon-portail/jsp
    • maj les images prod : $TOMCAT/webapps/mon-portail/images
    • maj les pages de bibliographies prod : $TOMCAT/webapps/mon-portail/biblio
    • maj les css prod : $TOMCAT/webapps/mon-portail/css
    • maj les scripts javascript prod : $TOMCAT/webapps/mon-portail/js
    • maj les éditions de texte PDF prod : $TOMCAT/webapps/mon-portail/files
    • maj la page générale du site : $TOMCAT/webapps/mon-portail/TXMWEB.jsp
    • maj la CSS générale du site : $TOMCAT/webapps/mon-portail/TXM_RIA.css
    • maj les chartes graphique du site : $TOMCAT/webapps/mon-portail/txmweb/sc/skins
1) qui n'ont pas de nom de commande
2) avec des chemins pré-configurés
public/framework_portails_ens.txt · Dernière modification: 2016/11/19 06:00 par alexei.lavrentev@ens-lyon.fr