Projet Socle ENT
Pages enfant
  • a) Prérequis (esup 4)

Vous regardez une version antérieure (v. /wiki/spaces/ESUPMU/pages/257556510/a+Pr%C3%A9requis+esup+4) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 61) afficher la version suivante »

Sont donnés ici les différents pré-requis techniques à mettre en place avant l'installation du page EsupPortail.

Plus qu'un listing classique on donne également un certain nombre de recommandations ; en résumé les voici :

  • Linux
  • Installation de Postgresql (ou Mysql), serveur Web Apache en frontal (+ AJP) etc. par le système de paquets de la distribution Linux (apt, yum, ...)
  • MAIS installation de Java (JDK 1.6) et technologies sous-jacentes (tomcat, ant, maven, ...) manuellement, c'est à dire en passant par le téléchargement et l'extraction de ces outils (en .bin, tgz, zip) depuis les sites officiels les proposant (oracle.com, apache.org).

Système d'exploitation

Linux (en Java, fonctionne aussi sous Windows/Mac).

Il peut être nécessaire d'augmenter le nombre maximum de fichiers ouverts pour l’utilisateur lançant le portail.

Exemple : sur centOS avec un utilisateur se nommant uportal :

Ajouter dans /etc/security/limits.conf
  uportal         hard    nofile          8192

Base de données

Testé et Fonctionne avec MySQL (5.5.14+) et PostgreSQL (9.0). Les pilotes pour MySQL et PostgreSQL sont fournis dans le package.

MySQL possède une documentation spécifique : Particularités MySQL (esup 4)
Des détails supplémentaires sont disponibles dans la page Base de données (esup 4)

Environnement JAVA

Un JDK 6 doit être préalablement installé sur le (ou les) serveur(s) supportant le portail.

Il est conseillé de ne pas passer par le gestionnaire de packages (yum, apt-get) afin de bien maitriser son installation et donc de télécharger le logiciel sur le site de l'éditeur.

La variable JAVA_HOME doit être valuée, et le chemin "$JAVA_HOME/bin"   (ou "%JAVA_HOME%\bin"  pour Windows) rajouté au PATH :

Unix (Fichier /etc/profile)
...
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
...

Ces lignes bash peuvent être ajoutées à un script env-esup.sh dans lequel vous mettrez toutes les autres lignes permettant d'obetnir un environnement propre au lancement de votre ENT EsupPortail (JAVA_HOME, JAVA_OPTS avec la mémoire allouée, PATH, MAVEN_HOME, etc.).

 

Windows
SET JAVA_HOME=<cheminVersHomeJava>
SET PATH=%PATH%;%JAVA_HOME%\bin

Support de Java 7

A noter que JDK7 n'est supporté qu'à partir de la version v.4.0.8 d'uPortal (cf JIRA issue)

>> Vérification
?> java -version                 #Pour vérifier le bon fonctionnement de Java (dans un "terminal")
java version "1.6.xx"            #Installation OK

>> Bonnes pratiques (Linux)

Pour faciliter les montées de version du Jdk, vous pouvez utiliser un lien symbolique (par ex. : "ln -s jdk1.6.0_43 jdk") qui vous permettra de toujours conserver le même chemin dans le JAVA_HOME :

/usr
   /local
      /jdk1.6.0_43             #chemin réel vers le dossier d'installation du jdk
      /jdk -> jdk1.6.0_43      #à utiliser pour le JAVA_HOME -> JAVA_HOME=/some/path/to/jdk


Cette pratique (tout comme l'idée du script env-esup.sh) est à généraliser (et adapter) également aux autres utilitaires ANT et MAVEN présentés ci-dessous.

ANT

Ant est nécessaire au déploiement du portail. la version préconisée est la 1.8.2.

Il est conseillé de ne pas passer par le gestionnaire de packages (yum, apt-get) afin de bien maitriser son installation et donc de télécharger le logiciel sur le site de l'éditeur.

La variable ANT_HOME doit être valuée, et le chemin "$ANT_HOME/bin" (Linux) (ou "%ANT_HOME%\bin"  pour Windows) rajouté au PATH :

Unix (Fichier /etc/profile)
...
export ANT_HOME=/usr/local/apache-ant
export PATH=$PATH:$ANT_HOME/bin
...
Windows
SET ANT_HOME=<cheminVersHomeAnt>
SET PATH=%PATH%;%ANT_HOME%\bin
>> Vérification
?> ant -version                                               #Pour vérifier le bon fonctionnement de Ant (dans un "terminal")
Apache Ant(TM) version 1.8.2 compiled on December 20 2010     #Installation OK

MAVEN

Maven 3 est nécessaire au déploiement du portail. La version préconisée est la 3.0.4.

Il est conseillé de ne pas passer par le gestionnaire de packages (yum, apt-get) afin de bien maitriser son installation et donc de télécharger le logiciel sur le site de l'éditeur.

La variable M2_HOME doit être valuée, et le chemin"$M2_HOME/bin" (Linux) ou "%M2_HOME%\bin" (Windows) rajouté au PATH :

Unix (Fichier /etc/profile)
...
export M2_HOME=/usr/local/apache-maven
export PATH=$PATH:$M2_HOME/bin
...
Windows
SET M2_HOME=<cheminVersHomeMaven>
SET PATH=%PATH%;%M2_HOME%\bin
>> Vérification
?> mvn --version                               #Pour vérifier le bon fonctionnement de Maven (dans un "terminal")
Apache Maven 3.0.4 (...)                       #Installation OK
Maven home: <cheminVersHomeMaven>
Java home: <cheminVersHomeJava>
...

 

Authentification

En environnement de production, un serveur CAS (ou Shibboleth selon le besoin) doit être opérationnel au sein de l'établissement.
Pour les configurations respectives, se rendre dans les sections CAS et Shibboleth.

Annuaire LDAP

La documentation donne un exemple de configuration pour un annuaire OpenLDAP (V3) utilisant un schéma supAnn.
L'établissement doit disposer d'un annuaire LDAP exhaustif.
Des détails supplémentaires sont disponibles dans la page LDAP (esup 4)

Serveurs

Tomcat

La version de Tomcat préconisée est la 6.0.36

Il est conseillé de ne pas passer par le gestionnaire de packages (yum, apt-get) afin de bien maitriser son installation et donc de télécharger le logiciel sur le site de l'éditeur.

Un exemple de configuration est présent en pièce jointe, ainsi qu'un script d'installation (plus bas).

Des détails supplémentaires sont disponibles dans la page Tomcat (esup 4)

La variable CATALINA_HOME peut être valuée, et le chemin"$CATALINA_HOME/bin" (Linux) ou "%CATALINA_HOME%\bin" (Windows) rajouté au PATH :

Unix (Fichier /etc/profile)
...
export CATALINA_HOME=<cheminVersHomeTomcat>
export PATH=$PATH:$CATALINA_HOME/bin
...
Windows
SET CATALINA_HOME=<cheminVersHomeTomcat>
SET PATH=%PATH%;%CATALINA_HOME%\bin
>> Bonnes pratiques (Installation de Tomcat)

 Au prix de quelques configurations Tomcat, il peut être intéressant de séparer "CATALINA_BASE" (conf) et "CATALINA_HOME" (install Tomcat, binaires,...) pour faciliter les montées de version.

Cela peut se faire notamment via cet exemple de scripts :

env.sh
...
export CATALINA_HOME=/usr/local/tomcatexport
export CATALINA_BASE=/opt/tomcat
export CATALINA_TMPDIR=$CATALINA_BASE/temp
export CATALINA_OPTS="-Djavax.net.ssl.trustStore=/path/to/esup.keystore"
export CATALINA_PID=/opt/tomcat/uportal.pid
...
installTomcat.sh
./home/ENT/env.sh
 
HOME=$CATALINA_HOME/..
BASE=$CATALINA_BASE/..
cd $HOME
wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.36/bin/apache-tomcat-6.0.36.tar.gz
tar -xzf apache-tomcat-6.0.36.tar.gz
ln -s apache-tomcat-6.0.36 tomcat
 
mkdir $CATALINA_BASE
cp -r $CATALINA_HOME/conf $CATALINA_BASE
mkdir $CATALINA_BASE/logs
mkdir $CATALINA_BASE/temp
mkdir $CATALINA_BASE/work
mkdir -p $CATALINA_BASE/shared/lib
mkdir -p $CATALINA_BASE/shared/classes
mkdir -p $CATALINA_BASE/lib
mkdir $CATALINA_BASE/common
ln -s $CATALINA_HOME/lib/ $CATALINA_BASE/common/lib
 
cp $CATALINA_HOME/conf/server.xml $CATALINA_BASE/conf/
cp $CATALINA_HOME/conf/catalina.properties $CATALINA_BASE/conf/
cp $CATALINA_HOME/conf/logging.properties $CATALINA_BASE/conf/
mkdir $BASE/webapps

Les applications sont à déployer dans $BASE/webapps. Adapter les fichiers $CATALINA_BASE/conf/server.xml, $CATALINA_BASE/conf/catalina.properties et $CATALINA_BASE/conf/logging.properties

Par rapport à l'exemple d'installation dans le fichier $CATALINA_BASE/conf/server.xml bien spécifier le bon path des contextes d'application comme ceci :

$CATALINA_BASE/conf/server.xml
...
<Context path="/portail" docBase="/opt/webapps/uPortal" reloadable="false" ...>
      <Resource name="jdbc/PortalDb" auth="Container" type="javax.sql.DataSource"
                username="USER" password="PASSWORD"
                driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://database.ip:3306/uPortal4"
                maxActive="100" maxIdle="30" maxWait="10000"
                poolPreparedStatements="true"
                removeAbandoned="true"
                removeAbandonedTimeout="300"
                validationQuery="SELECT 1"
                logAbandoned="true"
      />
      ...
</Context>
 ...

 Lors d'une migration de Tomcat, il suffira de:

  • faire un arrêt du Tomcat,
  • faire pointer le lien symbolique /usr/local/tomcat vers la nouvelle version des sources tomcat
  • puis relancer.

!! Attention toutefois lors d'un changement de version majeure !!

Apache

La version d'Apache préconisée est la 2.2 ou plus exactement celle disponible depuis votre gestionnaire de paquest simplement.

Technologie non liée à Java, il est conseillé de simplement passer par le gestionnaire de paquets (yum, apt-get) pour installer Apache et ses modules associées (mod_ajp, mod_balancer, etc.).

Des détails supplémentaires sont disponibles dans la page Apache frontal (esup 4)

 

  • Aucune étiquette