...
Installation des pré-requis
Note:
Les utilisateurs, chemins d'installation, ports utilisés ci-dessous ne sont qu'une suggestion.
Les exemples de configuration système sont basés sur Debian.
Les deux services seront installés sur le même serveur, l'un répondant avec le nom esup-sgc.univ-ville.fr et l'autre avec le nom esup-nfc-tag.univ-ville.fr.
Ces VirtualHosts seront configurés sous Apache.
Installer les paquets nécessaires
...
| Bloc de code | ||
|---|---|---|
| ||
apt-get install wget maven apache2 libapache2-mod-shib2 git |
...
apt-get install postgresql postgresql-contrib |
Il est également nécessaire d'avoir un JDK d'installé (Oracle Java ou bien OpenJDK).
Installation des instances Tomcat
Création de l'utilisateur esup:
| Bloc de code | ||
|---|---|---|
| ||
groupadd esup
useradd -g esup -m esup |
Installer les deux instances de Tomcat. L'une sera utilisée pour ESUP-SGC, l'autre pour ESUP-NFC-TAG.
| Bloc de code | ||
|---|---|---|
| ||
cd /opt/
wget http://apache.crihan.fr/dist/tomcat/tomcat-8/v8.5.24/bin/apache-tomcat-8.5.24.tar.gz
tar xzvf apache-tomcat-8.5.24.tar.gz
mv apache-tomcat-8.5.24 apache-tomcat-8.5.24-esup-nfc-tag
tar xzvf apache-tomcat-8.5.24.tar.gz
mv apache-tomcat-8.5.24 apache-tomcat-8.5.24-esup-sgc
ln -s apache-tomcat-8.5.24-esup-nfc-tag tomcat-esup-nfc-tag
ln -s apache-tomcat-8.5.24-esup-sgc tomcat-esup-sgc
rm -Rf /opt/tomcat-esup-sgc/webapps/*
mkdir /opt/tomcat-esup-sgc/webapps/ROOT/
rm -Rf /opt/tomcat-esup-nfc-tag/webapps/*
mkdir /opt/tomcat-esup-nfc-tag/webapps/ROOT/
chown -R esup:esup /opt/apache-tomcat-8.5.24-esup-sgc/
chown -R esup:esup /opt/apache-tomcat-8.5.24-esup-nfc-tag/
|
Les options Java étant les mêmes pour les deux instances, on peut créer un fichier commun qui sera lu lors du démarrage des tomcat.
| Bloc de code | ||
|---|---|---|
| ||
cat > /opt/esup-env <<EOF
#!/bin/sh
ANT_HOME=/usr/share/ant
JAVA_HOME=/opt/jdk
#GRADLE_HOME=/usr/local/gradle-2.14.1
#ANDROID_HOME=/usr/local/android-sdk
JAVA_OPTS="-Xms256m -Xmx512m -Djavax.net.ssl.trustStore=/opt/esup.univ-ville.jks -Djavax.net.ssl.trustStorePassword=esupesup"
EOF |
Note: il faudra penser à créer le keystore indiqué et y intégrer les certificats utilisés par les VirtualHosts Apache.
Ces deux instances seront démarrées via Systemd. On peut donc créer et activer ces deux services:
Pour Esup-SGC:
| Bloc de code | ||
|---|---|---|
| ||
cat > /etc/systemd/system/tomcat-esup-sgc.service <<EOF
# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
EnvironmentFile=/opt/esup-env
Environment=CATALINA_PID=/opt/tomcat-esup-sgc/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat-esup-sgc
ExecStart=/opt/tomcat-esup-sgc/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=esup
Group=esup
[Install]
WantedBy=multi-user.target
EOF
systemctl enable tomcat-esup-sgc.service |
Pour Esup-NFC-TAG:
| Bloc de code | ||
|---|---|---|
| ||
cat > /etc/systemd/system/tomcat-esup-nfc-tag.service <<EOF
# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
EnvironmentFile=/opt/esup-env
Environment=CATALINA_PID=/opt/tomcat-esup-nfc-tag/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat-esup-nfc-tag
ExecStart=/opt/tomcat-esup-nfc-tag/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=esup
Group=esup
[Install]
WantedBy=multi-user.target
EOF
systemctl enable tomcat-esup-nfc-tag.service |
Configuration des Tomcat
Pour l'instance d'Esup-SGC, éditer /opt/tomcat-esup-sgc/conf/server.xml afin de configurer le port 8205 et un connecteur AJP sur le port 8209.
Les connecteurs HTTP et HTTPS (ports 8080 et 8443 par défaut) doivent être commentés (ou être configurés sur un autre port pour éviter les conflits avec la seconde instance Tomcat)
| Bloc de code | ||
|---|---|---|
| ||
<Server port="8205" shutdown="SHUTDOWN">
<!-- (...) -->
<Connector port="8209" protocol="AJP/1.3" redirectPort="8443" tomcatAuthentication="false" /> |
Idem pour l'instance d'Esup-NFC-TAG qui utilisera les ports 8305 et 8309.
| Bloc de code | ||
|---|---|---|
| ||
<Server port="8305" shutdown="SHUTDOWN">
<!-- (...) -->
<Connector port="8309" protocol="AJP/1.3" redirectPort="8443" tomcatAuthentication="false" /> |
Installation
Éléments requis
...