Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
« Doc/Ville-Dole » : différence entre les versions
m →Arrêt et redémarrage automatique : typo |
|||
| Ligne 67 : | Ligne 67 : | ||
=== Arrêt et redémarrage automatique === | === Arrêt et redémarrage automatique === | ||
On mettra en place un service pour que l'application redémarre sous certains critères : | On mettra en place un service pour que l'application redémarre sous certains critères : | ||
* [[Tomcat#Tâche cron journalière de redémarrage|redémarrage | * [[Tomcat#Tâche cron journalière de redémarrage|redémarrage journalier]] ; | ||
* [[Tomcat#Arrêt et redémarrage automatique|redémarrage du serveur]] intempestif ; | * [[Tomcat#Arrêt et redémarrage automatique|redémarrage du serveur]] intempestif ; | ||
Version du 26 juin 2012 à 16:38
Sauvegardes
Crontab
Nous mettons en place une sauvegarde journalière de l'application et de ses données. Pour cela on commence par modifier le crontab :
@daily bash /home/backupAgent/scripts/backup.sh ville-dole-front | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
#@daily bash /home/backupAgent/scripts/backup.sh ville-dole-back | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
Tomcat
Localisation des serveur
Nous avons installé la version 6.0.35 (binaire) de Apache Tomcat à partir du site officiel et créé deux dossiers, respectivement :
- /opt/tomcat6-front : sert l'application de « production »,
- /opt/tomcat6-back : sert l'application de « recettage ».
Liens vers l'application
L'application est installé dans /home/ajlsm/, de façon à rendre l'application Pleade nous avons placer un lien vers ce dossier dans le dossier webapps/ de Apache Tomcat.
Configuration du serveur : server.xml
Nous avons configuré le serveur Apache Tomcat de recettage pour qu'il écoute sur des ports différents de ceux du serveur de production, ceci dans le but d'éviter tout conflits entre les deux environnements. Les modifications ont été effectué dans /opt/tomcat-back et /opt/tomcat-front et sont décrites ci-dessous :
| Type de Port | Production | Recettage |
|---|---|---|
| arrêt | 8005 | 9005 |
| écoute (connecteur HTTP) | 8080 | 9090 |
| redirection (connecteur HTTP) | 8443 | 9443 |
| écoute (connecteur AJP/1.3) | 8009 | 9009 |
| redirection (connecteur AJP/1.3) | 8443 | 9443 |
Il faut également rajouter l'attribut emptySessionPath=true sur le connecteur HTTP/1.1 et AJP/1.3, de façon à faire persister les sessions :
<Server port="9005" shutdown="SHUTDOWN">
⋮
<Connector port="9090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="9443"
emptySessionPath="true"
/>
⋮
<Connector port="9009" protocol="AJP/1.3"
redirectPort="9443"
emptySessionPath="true"
/>
⋮
Allocation de mémoire
On reconfigure Tomcat en suivant la procédure avec l'allocation mémoire suivante pour JAVA_OPTS :
-Xms400m -Xmx5000m -Djava.awt.headless=true -server -XX:+UseConcMarkSweepGC
Scripts
Remarques : Cette section ne concerne que les employés AJLSM.
Des alias on étaient définis dans le fichier ~/.bashrc pour simplifier la maintenance :
tomcat-log application: affiche le log tomcat de l'application ;restartTomcat application: redémarre l'application ;flushAndRestart application: nettoie le cache et redémarre l'application.
Le paramètre application, est nécessaire et peut prendre l'une des valeurs suivante :
- back : application de « recettage » ;
- front : application de « production ».
Arrêt et redémarrage automatique
On mettra en place un service pour que l'application redémarre sous certains critères :
- redémarrage journalier ;
- redémarrage du serveur intempestif ;
Apache
Nous avons défini un hôte virtuel pour l'application /etc/apache2/sites-enabled/ville-dole-vhost.conf. L'application est à l'heure actuelle accessible uniquement par son adresse IP (http://213.56.103.235), mais tout est en place pour un accès par nom de domaine.
<VirtualHost *:80>
ServerAdmin ajlsm+ville-dole@ajlsm.com
ServerName ville-dole.com
ServerAlias www.ville-dole.com www.ville-dole.prod ville-dole.prod
# Application de recette
ProxyPass /ville-dole-back/ ajp://localhost:9009/ville-dole-back/
ProxyPassReverse /ville-dole-back/ ajp://localhost:9009/ville-dole-back/
# Application de production
ProxyPass / ajp://localhost:8009/ville-dole/
ProxyPassReverse / ajp://localhost:8009/ville-dole/
ErrorLog ${APACHE_LOG_DIR}/error-ville-dole.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access-ville-dole.log combined
</VirtualHost>
Application Pleade
Emplacement
L'application et les fichiers sont installé dans /home/ajlsm :
.
├── apps
│ ├── ville-dole-back
│ └── ville-dole-front
├── backup
├── data
│ └── ville-dole
├── logs
│ ├── ville-dole-back
│ └── ville-dole-front
├── sdx-data
│ ├── ville-dole-back
│ └── ville-dole-front
├── shell-scripts
│ ├── backup
│ ├── httpd-maintenance
│ └── logs
└── tmp
Utilisateurs
Nous avons créer un compte pour les utilisateurs de la ville de Dole et un pour la gestion faite par AJLSM :
- ville-dole ;
- script : compte désactivé par mesure de sécurité.
Paramètres spéciaux
pleade.url-interne=http://localhost:8080/ville-dole-front/
⋮
pleade.public-url=http://213.56.103.235/
⋮
pleade.sdx-data-dir=file:///home/ajlsm/sdx-data/ville-dole-front
⋮
pleade.log-file-directory=/home/ajlsm/logs/ville-dole-front
⋮
pleade.ead-docs-dir=/home/ajlsm/data/ville-dole/ead/
⋮
pleade.img-server.racines=/home/ajlsm/data/ville-dole/images/
⋮
pleade.images.preparees=/home/ajlsm/data/ville-dole/images-preparees/
Dépot OAI
Nous avons activez le dépôt OAI dans le fichier /home/ajlsm/apps/ville-dole-front/parametres.xconf avec les paramètres suivants :
<ead-oai-repo-name>ville-dole</ead-oai-repo-name>
<ead-oai-repo-admin-email>s.sauge@dole.org</ead-oai-repo-admin-email>
Tests
Un premier test pourra être fait en consultant l'URL de vérification du dépôt OAI :
On pourra également vérifier la disponibilité d'un document EAD grâce à une URL de la forme :
- http://ville-dole.prod/ead-oai?verb=GetRecord&identifier=sdx:213.56.103.235:module-eadeac/ead/FR--391986102--1AP--1_AP_5-88&metadataPrefix=ead
- 213.56.103.235, correspond au paramètre pleade.public-url décrit dans pleade /home/ajlsm/apps/ville-dole-front/WEB-INF/properties/pleade-admin.properties ;
- FR--391986102--1AP--1_AP_5-88, correspond à l'identifiant d'un document EAD.
Emplacement des fichiers d’autorités
Nous définissons l'emplacement des fichiers d'autorités dans /home/ajlsm/apps/ville-dole-front/WEB-INF/properties/pleade-ville-dole.properties :
pleade.csv-docs-dir=/home/ajlsm/data/ville-dole/ead/
# Le fichier de template xsl.
pleade.ead-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_DATA_EAD/AJSLM_PVR_DATA_EAD_5-fev-02-modifier.csv
# le fichier d'information sur les images
pleade.img-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_DATA_IMG/AJSLM_PVR_IMG_5-modifier.csv
# le fichier d'autorite rameau
pleade.ram-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_RAM/AJSLM_PVR_RAM_1-fev-02-modifier.csv
Accès simplifié
Un accès simplifier et mis en place pour l'utilisateur ville-dole, les chemins sont alors :
- /home/ville-dole/csv : si on veut faire une interface type EAD (sélectionner un id et ça fait le reste) ;
- /home/ville-dole/images : images utilisés par l'EAD ;
- /home/ville-dole/EAD : fichier EAD issu de la conversion des CSV.
On rajoute les droits de lecture/écriture aux utilisateurs du groupe :
chmod g+w -R EAD/ images/ csv/
Conversion des données en CSV
Format des données
Le fichier décrivant les images précise l'identifiant de la pièce dans sa première colonne. Cette identifiant correspond à des informations dans le fichier décrivant les données de l'EAD, elles sont concaténées.
Construction de l'eadid
L'eadid est construit sur comme une concaténation de plusieurs champs, issus du fichier *_DATA_EAD_*.csv :
le code pays : FR (constante);- l'identifiant du service d'archives : FR391986102 (constante)
(parti après le FR); - « : » (deux-points) séparateurs ;
- l'identifiant du fond : par exemple 1AP1-4 ;
- « : » (deux-points) séparateurs ;
- l'identifiant du sous-fond : par exemple 1AP1-4 ;
Navigation entre les documents
Pleade permet de naviguer d'un document à l'autre, pour cela il faut s'appuyer sur l'eadid et les identifiant (id) des éléments <c>.
Une convention a été mis en place pour que les éditeurs du projet puissent indiquer des liens de navigation entre les documents dans certaines colonnes. Nous détaillons ci-dessous les formats pour les liens intra- et inter-documents (leurs structure est légèrement différente).
Format des liens de navigation
Les références doivent être comprises entre accolades « { » « } » et ne contenir que des caractères parmi la liste suivante :
- caractère alphabétique non-accentué entre A et Z (la casse importe peu) ;
- chiffres entre 0 et 9 ;
- point (.)<ref>2.2.3. Jetons et noms XML</ref> ;
- trait d'union (-) ;
- tiret bas (_) ;
- deux-points (:)<ref>2.3 Common Syntactic Constructs</ref> ;
- dièse (#).
Ce qui implique que les références doivent validées l'expression régulière suivante : ([\w\.\-_:]+?(#[\w\.\-_:]+?)?).
Voici un exemple de cellule faisant des références intra- et inter-documents :
D'abord une référence interne {FR391986102:1AP:5.1.8} et une autre référence,
externe celle là {FR391986102:1AP:1AP1-4#FR391986102:1AP:1.1.16}
Liens intra-document
Pour les liens intra-documents (ou référence interne), c'est à dire restant dans le même sous-fond, nous avons besoin de 3 information pour créer le lien :
- l'identifiant du service d'archives : FR391986102 (constante) ;
- l'identifiant du fond cible : par exemple 1AP1-4 ;
- l'identifiant de la pièce : par exemple 5.1.88 ;
Ainsi que du « : » (deux-points) qui permet de séparer ces 3 valeurs. Ce qui nous permet de former une référence du type :
Liens inter-documents
Les références vers d'autres documents EAD (ou référence interne) doivent 'utiliser des références complètes, car on envoi vers des fonds ou sous-fonds différents. C'est-à-dire :
- référence vers le document cible : l'attribut eadid du document ;
- vers la pièce : l'attribut id des éléments <c level="item" id="xyz">.
Ce format de référence s'appuie sur la syntaxe des référence intra-document. La différence tient au fait que l'on précise le document que l'on vise avant d'indiquer la pièce souhaitée. On a alors la séquence suivante :
- Partie « document » EAD :
- l'identifiant du service d'archives détenteur : FR391986102 (constante) ;
- « : » (deux-points) séparateurs ;
- l'identifiant du fonds : par exemple 1AP1-4 ;
- « : » (deux-points) séparateurs ;
- l'identifiant du sous-fonds : par exemple 1AP1-4 ;
- l'identifiant du service d'archives détenteur : FR391986102 (constante) ;
- « # » (dièse) séparateurs ou ancre ;
- Partie « fragment », identique aux références internes.
- l'identifiant du service d'archives détenteur : FR391986102 (constante) ;
- l'identifiant du fonds cible : par exemple 1AP1-4 ;
- l'identifiant de la pièce : par exemple 5.1.88.
Ce qui nous permet de former une référence du type :
Figure : référence externe au document EAD en cours, p. ex. : FR391986102:1AP:1AP1-4#FR391986102:1AP:1.1.16
Export en .csv
Les fichiers de données fournis par le client sont au format .xls. L'application Pléade ne gérant pas ce format, il est nécessaire de les exporter en .csv via OpenOffice.org ou Microsoft Office. Lors de cette conversion il est important de vérifier les 3 paramètres suivants :
- Encodage : UTF-8 ;
- Séparateur de champs : {Tab} (Tabulation) ;
- Séparateur de texte : " (guillemet double).
Conversion dans Pleade
Références
<references/>



