Installation du Hub by LegalBox Installation du Hub 1. Description de l installation 2 types de serveur sont à installer : Machine applicative du Hub (app.hub.legalbox) : CentOS 7 Ressource : 10 Go de disque dur 1 vcpu 1 Go de ram Application : Apache HTTPD Server Apache Tomcat Java LibreOffice Instance supportée : Production Test 1 / 16
Machine supportant les bases de données du Hub (data.hub.legalbox) : CentOS 7 Ressource : 10 Go de disque dur (system) 100 Go de disque dur (home) 4 vcpu 4 Go de ram Application : MariaDB Instance supportée : Production ou test pour chaque collectivité 2. INSTALLATION ET CONFIGURATION DU SERVEUR DATA.HUB.LEGALBOX 2.1 Installer MariaDB # Vérifier que MySQL n est pas installé 1. systemctl stop mysql 2. chkconfig mysqld off 3. yum remove mysql* mysql-server mysql-devel mysql-libs # Installer MariaDB # Activer le repository MariaDB 4. vi /etc/yum.repos.d/mariadb.repo #Ajouter les lignes suivantes : 2 / 16
# MariaDB 10.0 CentOS repository list - created 2014-12-24 14:50 UTC # http://mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.0/centos7-amd64 gpgkey=https://yum.mariadb.org/rpm-gpg-key-mariadb gpgcheck=1 # Installer MariaDB 5. yum install MariaDB-server MariaDB-client y # Lancer MariaDB 6. systemctl start mysql # Lancer MariaDB au démarrage de la machine 7. systemctl enable mysql # Configurer MariaDB 8. mysql_secure_installation Set root password? [Y/n] y New password: ENTER YOUR PASSWORD Re-enter new password: REPEAT YOUR PASSWORD Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y # Créer l utilisateur pour accéder à la base depuis app.hub.legalbox 9. mysql -u root p MariaDB > GRANT ALL PRIVILEGES ON *.* TO 'dba_account'@'localhost' IDE NTIFIED BY 'dba_account' WITH GRANT OPTION; MariaDB > GRANT ALL PRIVILEGES ON *.* TO 'dba_account'@'*' IDENTIFIED BY 'dba_account' WITH GRANT OPTION; MariaDB > GRANT ALL PRIVILEGES ON *.* TO 'dba_account' IDENTIFIED BY ' dba_account' WITH GRANT OPTION; # Permettre l utilisation des fonctions dans MariaDB MariaDB > SET GLOBAL log_bin_trust_function_creators = 1; # Redemarrer MariaDB pour prendre en compte les modifications 10. systemctl restart mysql 3 / 16
2.2 Monter la base de données # Se connecter à MariaDB 1. mysql -u root p 2. MariaDB > create database arcueil_production; 3. MariaDB > use arcueil_production; 4. MariaDB > source legalbox_database.sql; 5. MariaDB > source legalbox_fonction.sql; 3. INSTALLATION ET CONFIGURATION DU SERVEUR APP.HUB.LEGALBOX 3.1 Rappel des applicatifs à installer Apache HTTPD Server, Apache Tomcat, Java, LibreOffice 3.2 Installation de Java (JDK) 7 L'installation est à effectuer en récupérant les paquets depuis le site d Oracle, depuis l adresse : [[http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html]] # On se place dans le répertoire d installation 1. cd /opt/ # On télécharge le jdk 2. wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24= http%3a%2f%2fwww.oracle.com%2f; oraclelicense=accept-securebackup-cook ie" http://download.oracle.com/otnpub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz # On décompresse l archive 3. tar -zxvf jdk-7u75-linux-x64.tar.gz # On crée un lien symbolique pour utiliser l application depuis l adre sse 4 / 16
/opt/jdk (cela simplifie les mises à jours) 4. ln -s /opt/jdk1.7.0_75 /opt/jdk 3.3 Installation d Apache HTTPD Server L'installation est à effectuer via les repository CentOS : # Installer Apache HTTPD Server 1. yum install httpd # Paramétrer CentOS pour lancer Apache HTTPD Server au démarrage 2. systemctl enable httpd 3.4 Installation d Apache Tomcat L'installation est à effectuer en récupérant les paquets depuis l adresse : [[http://tomcat.apache.org/]] # On se place dans le répertoire d installation 1. cd /opt/ # On télécharge l archive 2. wget http://mirrors.ircam.fr/pub/apache/tomcat/tomcat-7/v7.0.57/bin /apache-tomcat-7.0.57.tar.gz # On décompresse l archive 3. tar -zxvf apache-tomcat-7.0.57.tar.gz 4. rm -f apache-tomcat-7.0.57.tar.gz # On crée un lien symbolique pour utiliser l application depuis l adre sse /opt/tomcat (cela simplifie les mises à jours) 5. ln -s /opt/apache-tomcat-7.0.57 /opt/tomcat # Créer un service Tomcat 6. cd /etc/init.d 7. vi tomcat # Ajouter le texte suivant en tapant «a» pour passer en mode édition #!/bin/bash # description: Tomcat Start Stop Restart # processname: tomcat # chkconfig: 234 20 80 5 / 16
JAVA_HOME=/opt/jdk export JAVA_HOME PATH=$JAVA_HOME/bin:$PATH export PATH CATALINA_HOME=/opt/tomcat case $1 in start) sh $CATALINA_HOME/bin/startup.sh ;; stop) sh $CATALINA_HOME/bin/shutdown.sh ;; restart) sh $CATALINA_HOME/bin/shutdown.sh sh $CATALINA_HOME/bin/startup.sh ;; esac exit 0 # Echap puis «:q» pour sauvegarder le fichier # Rendre le fichier tomcat exécutable, et le paramétrer pour l exécute r au démarrage de CentOS 8. chmod 755 tomcat 9. chkconfig --add tomcat 10. chkconfig --level 234 tomcat on # Lancement du serveur 11. systemctl start tomcat #Tester en ouvrant un navigateur et taper l adresse localhost:8080 3.5 Installation du connecteur HTTPD Server et Tomcat L'installation a été effectuée via le téléchargement du zip «tomcat-connectors-1.2.40-windowsi386-httpd-2.2.x.zip» depuis l adresse suivante : [[http://tomcat.apache.org/download-connectors.cgi]] # On se place dans le répertoire temporaire 1. cd /tmp/ # On télécharge l archive 2. wget http://mir2.ovh.net/ftp.apache.org/dist/tomcat/tomcatconnectors/jk/tomcat-connectors-1.2.40-src.tar.gz # Préparer la compilation et extraire les fichiers 3. tar -xf tomcat-connectors-1.2.40-src.tar.gz 4. yum install -y httpd-devel gcc gcc-c++ make libtool # Compiler le connecteur 6 / 16
5. cd tomcat-connectors-1.2.40-src/native 6../configure --with-apxs=/usr/sbin/apxs 7. make 8. libtool --finish /usr/lib64/httpd/modules # Installer le module 9. make install 3.6 Configuration du connecteur HTTPD Server et Tomcat # Création du fichier workers.properties dans /etc/httpd/conf 1. touch /etc/httpd/conf/workers.properties # Ajout des lignes suivantes dans le fichier workers.properties 2. vi /etc/httpd/conf/workers.properties ps=/ worker.list=worker1 worker.worker1.port=8009 worker.worker1.host=127.0.0.1 worker.worker1.type=ajp13 # Modifier le fichier httpd.conf contenu dans le répertoire 3. vi /etc/httpd/conf/httpd.conf # Ajouter le loadmodule de mod_jk : #LoadModule version_module modules/mod_version.so #LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule jk_module modules/mod_jk.so # Ajouter le paramétrage pour que tout le flux http soit interprété pa r Tomcat en utilisant le connecteur worker1 : <IfModule jk_module> # # Mod_jk settings # JkWorkersFile "/etc/httpd/conf/workers.properties" JkLogFile "/etc/httpd/logs/mod_jk.log" 7 / 16
JkLogLevel info JkMount / worker1 JkMount /* worker1 # End of mod_jk settings </IfModule> 3.7 Installation de LibreOffice L'installation a été effectuée via le «rpm.tar.gz» récupéré depuis l adresse : [[https://fr.libreoffice.org/telecharger/]] # Vérifier que LibreOffice n est pas installé via les repository 1. yum remove libreoffice* # Se placer dans le repertoire tmp et télécharger LibreOffice 2. cd /tmp 3. wget http://download.documentfoundation.org/libreoffice/stable/4.3. 5/rpm/x86_64/LibreOffice_4.3.5_Linux_x86-64_rpm.tar.gz # Extraire l application et se positionner dans le bon répertoire 4. tar -xvf LibreOffice_4.3.5_Linux_x86-64_rpm.tar.gz 5. rm f LibreOffice_4.3.5_Linux_x86-64_rpm.tar.gz 6. cd /tmp/libreoffice_4.3.5_linux_x86-64_rpm/rpms/ # Installer LibreOffice 7. yum localinstall *.rpm # Corriger les dépendances 8. yum install mesa-libglu.x86_64 3.8 Configuration de LibreOffice en mode server # Modifier la conf SSH pour permettre de lancer LibreOffice en mode se rver 1. vi /etc/ssh/sshd_config... X11Forwarding yes X11DisplayOffset 10 8 / 16
... # Créer un script qui permet de lancer LibreOffice en mode server au d émarrage 2. vi /home/legalbox/launchlb.sh # Ajouter les deux lignes suivantes dans le fichier export PATH=/opt/libreoffice4.3/program:$PATH soffice.bin --headless --invisible '--accept=socket,host=localhost,por t=8100;urp;' & # Rendre le script executable 3. chmod +x /opt/launchlb.sh # Ajouter le script à crontab pour une exécution au démarrage 4. vi /etc/crontab # Ajouter la ligne suivante à la fin du fichier @reboot root /opt/launchlb.sh 3.9 Configuration de Tomcat pour le Hub # Ajout des bibliothèques java (.jar) nécessaires au fonctionnement du Hub dans le répertoire 1. cp /opt/legalbox_file/lib_shared.tar.gz /opt/tomcat/lib/ 2. tar zxvf /opt/tomcat/lib/lib_shared.tar.gz # Copier une librairie de gestion de mail à la racine des libraires To mcat 3. cp /opt/tomcat/lib/shared/javamail/mailapi.jar /opt/tomcat/lib/mail api.jar # Modifier la conf de Tomcat pour prendre en compte les librairies 4. vi /opt/tomcat/conf/catalina.properties shared.loader=${catalina.home}/lib/shared,${catalina.home}/lib/shared/ *.jar,\ ${catalina.home}/lib/shared/apache/*.jar,\ ${catalina.home}/lib/shared/axis2/*.jar,\ ${catalina.home}/lib/shared/batik-1.7/*.jar,\ 9 / 16
${catalina.home}/lib/shared/bouncycastle/*.jar,\ ${catalina.home}/lib/shared/cdcfast/*.jar,\ ${catalina.home}/lib/shared/database/*.jar,\ ${catalina.home}/lib/shared/deprecated/*.jar,\ ${catalina.home}/lib/shared/deprecated/axiom/*.jar,\ ${catalina.home}/lib/shared/deprecated/axis/*.jar,\ ${catalina.home}/lib/shared/deprecated/htmlparser/*.jar,\ ${catalina.home}/lib/shared/deprecated/jod-converter/*.jar,\ ${catalina.home}/lib/shared/deprecated/nux/*.jar,\ ${catalina.home}/lib/shared/dropbox-sdk/*.jar,\ ${catalina.home}/lib/shared/dwr/*.jar,\ ${catalina.home}/lib/shared/itext/*.jar,\ ${catalina.home}/lib/shared/jai/*.jar,\ ${catalina.home}/lib/shared/javamail/*.jar,\ ${catalina.home}/lib/shared/jes/*.jar,\ ${catalina.home}/lib/shared/jopendocument/*.jar,\ ${catalina.home}/lib/shared/json/*.jar,\ ${catalina.home}/lib/shared/legalbox/*.jar,\ ${catalina.home}/lib/shared/log4j/*.jar,\ ${catalina.home}/lib/shared/lucene/*.jar,\ ${catalina.home}/lib/shared/mongo/*.jar,\ ${catalina.home}/lib/shared/mt-software/*.jar,\ ${catalina.home}/lib/shared/netscape/*.jar,\ ${catalina.home}/lib/shared/ocr/*.jar,\ ${catalina.home}/lib/shared/pdfbox/*.jar,\ ${catalina.home}/lib/shared/phonenumber/*.jar,\ ${catalina.home}/lib/shared/poi/*.jar,\ ${catalina.home}/lib/shared/quartz/*.jar,\ ${catalina.home}/lib/shared/reflexions/*.jar,\ ${catalina.home}/lib/shared/slf4j/*.jar,\ ${catalina.home}/lib/shared/solrj/*.jar,\ ${catalina.home}/lib/shared/xml-apis/*.jar,\ ${catalina.home}/lib/shared/zxing/*.jar # Création d un répertoire pour le Hub 5. mkdir /opt/legalbox 6. mkdir /opt/legalbox/production 7. mkdir /opt/legalbox/test # Et copie des fichiers du Hub dans chacun des sous-répertoires. 8. cp /opt/legalbox_file/lb_signbook.war /opt/legalbox/production 9. cp /opt/legalbox_file/lb_signbook.war /opt/legalbox/test # Extraction de l application 10. unzip qq /opt/legalbox/production/lb_signbook.war 11. rm f /opt/legalbox/production/lb_signbook.war 10 / 16
12. unzip qq /opt/legalbox/test/lb_signbook.war 13. rm f /opt/legalbox/test/lb_signbook.war # Configuration de chaque instance dans Tomcat via la configuration du fichier server.xml : vi /opt/tomcat/conf/server.xml # Mettre en commentaire le bloc Host localhost existant <- -<Host name = "localhost " /Host> - -> # Ajouter les lignes suivantes <Host name="localhost" unpackwars="true" autodeploy="true" > <Alias>parapheur-arcueil</Alias> <Alias>parapheur-arcueil.siim94.net</Alias> <Context cookies="true" override="true" crosscontext="true" path=" " docbase="/opt/legalbox/production" reloadable="true" > <Resource auth="container" name="jdbc/coin" type="javax.sql.datasource" driverclassname="com.mysql.jdbc.driver" url="jdbc:mysql://adresse_serveur_bdd:3306/arcueil_production? autoreconnect=true" username="dba_account" password="dba_account" maxactive="30" maxidle="10" maxwait="300000" factory="org.apache.commons.dbcp.basicdatasourcefactory" validationquery="select 1" removeabandoned="true" removeabandonedtimeout="100" logabandoned="true" /> <Resource name="mail/session" auth="container" type="javax.mail.session" mail.smtp.host="127.0.0.1" /> </Context> </Host> 11 / 16
<Host name="test" unpackwars="true" autodeploy="true" > <Alias>test-parapheur-arcueil </Alias> <Alias>test-parapheur-arcueil.siim94.net</Alias> <Context cookies="true" override="true" crosscontext="true" path=" " docbase="/opt/legalbox/test" reloadable="true" > <Resource auth="container" name="jdbc/coin" type="javax.sql.datasource" driverclassname="com.mysql.jdbc.driver" url="jdbc:mysql://adresse_serveur_bdd:3306/arcueil_test?autore connect=true " username="dba_account" password="dba_account" maxactive="30" maxidle="10" maxwait="300000" factory="org.apache.commons.dbcp.basicdatasourcefactory" validationquery="select 1" removeabandoned="true" removeabandonedtimeout="100" logabandoned="true" /> <Resource name="mail/session" auth="container" type="javax.mail.session" mail.smtp.host="127.0.0.1" /> </Context> </Host> 3.10 Mettre en place les applets # Création du répertoire 1. mkdir /opt/legalbox/applet/libs 12 / 16
# Copier les applets et les extraire 2. cp /opt/legalbox_file/lib_applet.tar.gz /opt/legalbox/applet/libs/ 3. tar zxvf /opt/legalbox/applet/libs/lib_applet.tar.gz 4. rm f /opt/legalbox/applet/libs/lib_applet.tar.gz 3.11 Mettre en place le connecteur CRON # Création du répertoire 1. mkdir /opt/legalbox/quartz # Créer et configurer le fichier 2. vi /opt/legalbox/quartz/production-arcueil.siim94.net #====== # Configure Main Scheduler Properties #====== org.quartz.scheduler.instancename = production_arcueil_scheduler org.quartz.scheduler.instanceid = AUTO #====== # Configure ThreadPool #====== org.quartz.threadpool.class = org.quartz.simpl.simplethreadpool org.quartz.threadpool.threadcount = 5 org.quartz.threadpool.threadpriority = 5 #====== # Configure JobStore #====== org.quartz.jobstore.misfirethreshold = 360000 org.quartz.jobstore.class=org.quartz.impl.jdbcjobstore.jobstoretx 13 / 16
org.quartz.jobstore.driverdelegateclass=org.quartz.impl.jdbcjobstore.s tdjdbcdelegate org.quartz.jobstore.useproperties=false org.quartz.jobstore.datasource= production_arcueil_ds org.quartz.jobstore.tableprefix=qrtz_ org.quartz.jobstore.isclustered=true #====== # Configure Datasources #====== org.quartz.datasource.demo_signbook_ds.driver = com.mysql.jdbc.driver org.quartz.datasource.demo_signbook_ds.url = jdbc:mysql://adresse_serv eur_bdd:3306/arcueil_production?autoreconnect=true org.quartz.datasource.demo_signbook_ds.user = dba_account org.quartz.datasource.demo_signbook_ds.password = dba_account org.quartz.datasource.demo_signbook_ds.maxconnections = 100 org.quartz.datasource.demo_signbook_ds.validationquery = select '1' fr om coin_user u where u.id_coin_user = 1 #====== # Configure Plugins #====== org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.s hutdownhookplugin org.quartz.plugin.shutdownhook.cleanshutdown = true 3.12 Lancer les services # Lancer Apache HTTPD Server : 1. systemctl start httpd # Lancer Apache Tomcat : 2. systemctl start tomcat 14 / 16
3.13 Contrôler les logs Tomcat # Consulter les logs Tomcat 1. tail f /opt/tomcat/logs/catalina.out 3.14 Configurer le Hub pour prendre en compte le paramétrage du serveur Il faut se connecter à l application via un navigateur Internet, l adresse est parapheur-arcueil, avec le compte «administrateur/superbox12». Puis dans Administration -> Administrer le système -> Configurer le système -> Configuration, modifier les valeurs suivantes : authentication.usewaffle : false or true (permet d activer l authentification SSO) autorisationenvoimail : 1 (pour activer les mail s, 0 pour les désactiver) design.desk.html.metadata.title : Hub Electronique de Cour riers Arcueil Production design.desk.theme.title : Hub Electronique de Cour riers Arcueil Production welcome.page.desk.url.label : Hub Electronique de Cour riers Arcueil Production welcome.page.title : Hub Electronique de Cour riers Arcueil Production desk.url : parapheurarcueil.siim94.net ged.document.conversion.pdf.web.service.url : http://localhost/service s/archiveservice mail.from.defaut : parapheur@villearcueil.com mail.smtp.auth : false mail.smtp.from : parapheur@ville- 15 / 16
Powered by TCPDF (www.tcpdf.org) Installation du Hub - 04-16-2015 arcueil.com mail.smtp.host : smtp.ville-arcueil.com mail.smtp.localhost : localhost mail.smtp.password : mail.smtp.starttls : true mail.smtp.user : parapheur@villearcueil.com mail.to.defaut : (sert pour les tests, pe rmet de définir l adresse de réception des mails) usedefaultemailaddress : 0 (désactive l utilisati on du champs ci-dessus, 1 pour l activer) server.jar.download.repository : /opt/legalbox/applet/lib s/ quartz.config-file : /opt/legalbox/quartz/pro duction-arcueil.siim94.net Copyright 2015 LegalBox, Tous droits réservés. 16 / 16