installation d`un serveur dispositif de collecte

Transcription

installation d`un serveur dispositif de collecte
INSTALLATION D’UN SERVEUR
DISPOSITIF DE COLLECTE
Référence :
OIEAU_RDM_RMC_CdCComplementairesDOC_INSTALLATION
Version :
4
Date de création :
08/08/2003
Date de modification :
05/01/2005
Etat :
Validé
Rédaction
Silogic
David LABORIE (SANDRE)
Validation
Pierre LAGARDE (SANDRE)
Approbation
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
SOMMAIRE
1.
PRESENTATION ......................................................................................................................................................... 3
2.
VERSIONS NECESSAIRES ....................................................................................................................................43
3.
INSTALLATION DE LA LIBRAIRIE PEAR....................................................................................................53
A.
PRINCIPES DE PEAR..................................................................................................................................................53
B.
FONCTIONNALITES DE PEAR...................................................................................................................................53
C.
INSTALLATION DE PEAR ..........................................................................................................................................63
1.
2.
Installation des packages initiaux....................................................................................................................63
Installation des packages SOAP .......................................................................................................................73
D.
SWSAPI (SIMPLE W EB SERVICE API)...................................................................................................................83
E.
INSTALLATION DES PACKAGES NECESSAIRES A LA TRANSFORMATION XSL ....................................................83
F.
PARAMETRAGE DU SOAP.........................................................................................................................................93
G.
INSTALLATION DU JDK 1.2.2...................................................................................................................................93
H.
INSTALLATION DE FOP .............................................................................................................................................93
I.
PARAMETRAGE DE FOP ............................................................................................................................................93
4.
CONFIGURATION DE LA BASE DE DONNEES ........................................................................................103
A.
LE MOTEUR DE STOCKAGE INNODB SOUS LINUX ...............................................................................................103
B.
CREATION DE LA BASE DE DONNEES DISPOSITIF DE COLLECTE.........................................................................113
C.
PARAMETRAGE DES MAILS DES ADMINISTRATEURS ...........................................................................................113
5.
INSTALLATION DES PAGES ET PARAMETRAGE.................................................................................123
6.
RENSEIGNEMENTS ..............................................................................................................................................153
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
2
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
1. PRESENTATION
Cette documentation a pour but d’expliquer la procédure d’installation du site Internet dispositif de
collecte pour les bassins sur un serveur Internet type Linux.
Nous partons du principe que vous possédez un serveur Linux convenablement installé avec au
minimum :
-
un serveur Apache,
-
l’extensions php pour Apache,
-
une base MySQL,
-
le gestionnaire de mail sendMail.
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
3
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
2. VERSIONS NECESSAIRES
Nous choisirons une distribution LINUX ainsi que les packages APACHE, PHP, PEAR, SOAP,
MYSQL, SENDMAIL dans les versions minimales suivantes :
Système
Version kernel
Distribution Linux
2.4.18-11
Packages
Version
APACHE
1.3.22
PHP
4.3
MYSQL
3.23.34a
SENDMAIL
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
4
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
3. INSTALLATION DE LA LIBRAIRIE PEAR
Créée par la communauté PHP, la bibliothèque de code PEAR PHP Extension and Application
Repository permet de raccourcir les temps de développement. Son concept repose sur la mise en
commun de code préécrit et réutilisable par tous les développeurs.
PEAR est une bibliothèque de code qui permet de réduire le temps de développement par le biais de
classes préécrites pour les fonctionnalités standard. D'un concept similaire au module CPAN de Perl,
PEAR prend en charge diverses fonctions, notamment les bases de données, la messagerie
électronique, la gestion des erreurs et la gestion des autorisations.
Elle gère aussi le processus de synchronisation par l’utilisation de SOAP.
A. Principes de PEAR
La bibliothèque PEAR a été créée dans le but d'offrir aux développeurs une méthode standardisée
de partage du code PHP, encourageant l'exploitation du code réutilisable. Ce projet est encore au
stade du développement, si bien que les utilisateurs peuvent soumettre leur code dans la bibliothèque
PEAR, intégrée à PHP. Tous les blocs PEAR respectent des règles de codage strictes en matière de
conventions syntaxiques et de lisibilité. Ils se composent du langage PHP ou d'extensions PHP écrites
en C.
PEAR a été créée par Stig Bakken fin 1999. Son objectif est alors de concevoir une bibliothèque de
code organisée qui sert de ressource communautaire pour les développeurs PHP. Son projet a mûri
au cours des deux dernières années, et comporte désormais un large éventail de code utile et
réutilisable.
Bien qu'il existe d'autres référentiels PHP, tels que Code Gallery de Zend et Source Code Snippet
Library de PHP Builder, PEAR offre un niveau de standardisation qui facilite l'interopérabilité des
fonctions. De plus, les propositions de code soumises sur PEAR sont minutieusement examinées par
un groupe de contrôle qui vérifie la qualité et la fiabilité du code.
B. Fonctionnalités de PEAR
PEAR est divisé en trois classes:
Ø
Les composants fondamentaux PEAR (PEAR Core Components). Ils incluent les classes de
base de PEAR et PEAR_Error, ainsi que les fonctions de base de données PEAR ::DB,
HTTP, journalisation et messagerie électronique. Les Classes PHP Fondamentales (PFC PHP Foundation Classes) insistent sur la qualité, le côté générique, l'interopérabilité et la
compatibilité. Si PHP continu à distribuer par défaut les packages PEAR, se seront les
classes PFC uniquement.
Ø
Les
blocs
PEAR
(PEAR
Packages).
Ils comportent des fonctionnalités relatives à
l'authentification, à la mise en réseau et au système de fichiers, ainsi que des outils
permettant d'exploiter les modèles XML et HTML
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
5
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
Ø
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
Les blocs PECL (PECL Packages). Ce sont des extensions au PHP, écrites en C, ne
respectant pas les règles de codage. À l'heure actuelle, le code de cette classe en est au
stade expérimental, nous ne l’utiliserons pas dans le cadre du projet.
Erreur ! Documentation
Source
disponible
à
l’adresse
ci-dessous :
http://pear.php.net/manual/fr/
du
renvoi
introuv
able.
C. Installation de PEAR
1. Installation des packages initiaux
Le package PEAR version 1.0.1 doit être installé (décompacté) sous le répertoire /usr/share/pear par
exemple.
Le projet implémente des fonctions disponibles dans les dernières versions des composants
fondamentaux comme PEAR ::DB version 1.4b1, PEAR_ERROR et des blocs PEAR spécifiques
comme PEAR ::AUTH 1.2.0 et PEAR ::HTML_template_IT 1.1.
Ces paquetages sont installés sous le répertoire racine de PEAR (/usr/share/pear ).
Erreur ! L’ensemble
Source
des
modules
peuvent
être
téléchargés
à
l’adresse
:
http://pear.php.net/packages.php
du
renvoi
introuv
able.
Package
Auth-1[1].2.0.tgz
Contenu
Version
Répertoire d’installation
Container.php
V 1.9 du 04/01/2003
Auth.php
V 1.47 du 01/02/2003
2) Renommer le répertoire Auth-1.2.0 en Auth
IT_error.php
V 1.1 du 28/04/2002
Extraire les fichiers dans /usr/share/pear/HTML
ITX.php
V 1.8 du 12/03/2003
IT.php
V 1.6 du 12/03/2003
DB.php
V 1.16 du 08/02/2003
1) Décompacter dans /usr/share/pear
HTML_template_IT-1[1].1.tgz
DB-1[1].4b1.tgz
Extraire ces fichiers dans le répertoire
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
6
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
Ø
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
DB/dbase.php
V 1.2 du 04/01/2003
DB/msql.php
V 1.4 du 04/01/2003
DB/ifsc.php
V 1.7 du 04/01/2003
DB/sybase.php
V 1.6 du 04/01/2003
DB/odbc.php
V 1.4 du 04/01/2003
DB/storage.php
V 1.4 du 04/01/2003
DB/mssql.php
V 1.6 du 21/01/2003
DB/fbsql.php
V 1.4 du 04/01/2003
DB/ibase.php
V 1.7 du 07/02/2003
DB/oci8.php
V 1.5 du 04/01/2003
DB/pgsql.php
V 1.16 du 07/02/2003
DB/mysql.php
V 1.13 du 07/02/2003
DB/common.php
V 1.13 du 08/02/2003
/usr/share/pear
Il vous faut ensuite éditer le fichier /etc/php.ini et configurer le paramètre include_path en
lui fournissant le répertoire d’installation du module PEAR et le répertoire racine du projet.
Include_path = « .:/usr/share/pear:/var/www/html/oieau »
Ø
Relancer Apache.
2. Installation des packages SOAP
Le tableau ci-dessous liste les packages mis en œuvre par PEAR ::SOAP. La colonne intitulée
« Déploiement » indique sur quels serveurs les packages doivent être déployés.
Package
URL DE TELECHARGEMENT
PEAR ::SOAP V 0.7.4
http://pear.php.net/package-info.php?pacid=87
Mail_Mime V 1.2.1
http://pear.php.net/package-info.php?pacid=21
HTTP_Request V 1.1.1
http://pear.php.net/package-info.php?pacid=33
Net_Socket V 1.0.1
http://pear.php.net/package-info.php?pacid=64
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
7
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
Net_URL V 1.0.10
http://pear.php.net/package-info.php?pacid=34
Net_DIME V 0.3 Beta
http://pear.php.net/package-info.php?pacid=86
XML_Tree V 1.1
http://pear.php.net/package-info.php?pacid=19
La RedHat 8.0+ intègre le package PEAR version 1.0.1. Il est installé (décompacté) par défaut sous le
répertoire /usr/share/pear .
D. SWSAPI (Simple Web Service API)
Cette API est nécessaire pour l’utilisation du fichier WSDL.
API SWSAPI (Simple Web
http://aspn.activestate.com/ASPN/WebServices/SWSAPI/phptut
Services API)
Cette API se présente sous la forme d’un fichier unique webservices.php. Copier ce fichier à la racine
du répertoire PEAR (<PHP INSTALL>/PEAR).
E. Installation des packages nécessaires à la transformation XSL
Package
Contenu
Version
Répertoire d’installation
XML_XSLT_Wrapper-
Wrapper.php
v 1.9 04/01/2003
0[1].2.1b.tgz
DOM_XSL.php
modifiée
Décompacter dans /usr/share/pear/xml
MSXSL_Com.php
Sablotron.php
XSLT_ext.php
XSLTPROC.php
XT.php
Le
package
XML_XSLT_Wrapper-0[1].2.1b.tgz
est
une
version
corrigée
du
package
XML_XSLT_Wrapper-0[1].2.1.tgz. Les modifications effectuées sont :
Dans
XSLTPROC.php
:
remplacement
de
XSLT_XSLTPROC_CMD
par
XML_XSLT_XSLTPROC_CMD.
Dans XSLTPROC.php : correction de _buildParams() permettant le passage de paramètres contenant
des espaces.
XSLT_Wrapper.php renommé en wrapper.XSLT.
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
8
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
Par défaut, le serveur Dispositif de collecte s’appuie sur le processeur XSLTPROC disponible à
l’adresse suivante : http://xmlsoft.org/XSLT/ (Attention à son installation en version Windows).
F. Paramétrage du SOAP
Editer le fichier <PHP Install>/PEAR/SOAP/Base.php et modifier la déclaration de la variable globale
SOAP_DEFAULT_ENCODING.
define('SOAP_DEFAULT_ENCODING', 'ISO-8859-1');
G. Installation du JDK 1.2.2
La machine virtuelle Java est nécessaire au fonctionnement de FOP, le moteur de génération des
fiches au format PDF.
Version
Package
jdk-1_2_2_008-linux-i386.tar.gz
URL de téléchargement et
Répertoire d’installation
V 1.2.2 pour linux
http://java.sun.com/products/archive/j2se/1.2.2_008/
Décompacter dans /usr/share/jdk1.2.2
H. Installation de FOP
Package
fop-0.20.5-bin.tar.gz
Version
URL de téléchargement et
Répertoire d’installation
V 1.2.2 pour linux
http://xml.apache.org/fop/
Décompacter dans usr/share/fop-0.20.5
I. Paramétrage de FOP
Sous linux, dans le fichier fop.sh, ajouter JAVA_HOME=<JDK Install>
Exemple :
#! /bin/sh
#
# Shell script to run FOP, adapted from the Jakarta-Ant project.
JAVA_HOME=/usr/share/jdk1.2.2
if [ -f $HOME/.foprc ] ; then
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
9
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
4. CONFIGURATION DE LA BASE DE DONNEES
A. Le moteur de stockage InnoDB sous Linux
A partir de la version 4.0 de mysql, le moteur innoDB est activé par défaut. Ce paragraphe ne
concerne que les versions 3.23.XX de mysql.
Le moteur InnoDB est inclus dans la distribution mysql à partir des versions 3.23.34a. Il est activé par
la distribution binaire Mysql-MAX des versions 3.23.XX.
La version Mysql-MAX diffère de la version mysql standard uniquement par le processus exécutable
mysqld de mysql.
La mise en œuvre du moteur InnoDB se fait en trois étapes :
Ø
Editer le fichier /etc/my.cnf
Ø
Rajouter le nom et la taille du fichier de stockage des tables InnoDB (ici base -rdd de 30 MB)
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
innodb_data_file_path= base-rdd:30M:autoextend:max:2000M
[mysql.server]
user=mysql
basedir=/var/lib
[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
A partir de la version 3.23.50 de mysql, il est possible de déclarer le fichier de stockage innoDB
comme auto extensible par le paramètre autoextend . Ceci signifie que lorsque le fichier atteint sa taille
maximale (ici 30 MO), InnoDB incrémente le fichier par paquets de 8 MO jusqu’à atteindre la taille
maximale déclarée par le paramètre max :2000M .
Si vous souhaitez stocker le fichier innodb_data_file_path dans un répertoire spécifique, il faut
rajouter dans le fichier my.cnf le paramétrage innodb_data_home_dir=/home/oieau/base.
Attention : Le daemon (processus) mysqld est exécuté par l’utilisateur user=mysql, déclaré
dans le fichier my.cnf. Vérifier que cet utilisateur dispose des droits d’écriture sur le
répertoire défini dans la variable innodb_data_home_dir.
Ø
Arrêter et redémarrer mysql afin de prendre en compte les modifications.
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
10
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
B. Création de la base de données dispositif de collecte
La création de la base de données s’effectue en deux étapes :
Ø
Créer une base de données «ReseauDonnees » en utilisant phpmyadmin (ou autre outil: Mysql
Control Center, MysqlFront …). Donner tous les droits à un utilisateur.
Ø
Charger le dump en lançant la commande suivante en plaçant le fichier sql au même endroit que
mysql ou si vous préférez en utilisant phpmyadmin :
mysql --force --host=localhost --user=[USER] --password=[PASSWORD] -D ReseauDonnees < monfichierDUMP.sql
Des messages d'erreur apparaîtront. Relancer la même commande pour qu’aucune erreur ne soit
générée (au maximum 5/6 fois!). Ces messages d'erreur sont dus à une gestion très imparfaite du
dump des contraintes d'intégrité sur la base de données mais à force, les données seront intégrées.
C. Paramétrage des mails des administrateurs
Avec phpmyadmin ou autre outil, modifier la table ADMIN en indiquant la valeur suivante :
-
EMAIL_ADMIN : liste des adresses e-mail des administrateurs de bassin. Chaque adresse est
séparée par une virgule « , ».
Ex : [email protected],[email protected],[email protected],[email protected]
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
11
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
5. INSTALLATION DES PAGES ET PARAMETRAGE
Ø
A l’aide d’une connexion FTP ou directement sur le serveur, allez dans votre répertoire dédié au
site Internet (donc accessible par une adresse Internet ou une IP), puis copiez le contenu du
répertoire RESEAUX (ce répertoire contient l’ensemble des fichiers du site internet sur les
dispositifs de collecte).
<install> : répertoire d’installation des réseaux. Par ex, /home/httpd/rmc/html/RESEAUX
Ø
L’application WEB a besoin de stocker un certain nombre de fichiers dans différents répertoires.
Pour cette raison vous devez donner les pleins droits en effectuant un (CHMOD 777
monrépertoire) sous le Login root sur les répertoires suivants :
Ø
•
<Install>/ /log
•
<Install>/ /tmp
•
<Install>/ /tmp/export
•
<Install>/ /update
Apache ou l'application WEB, lors de la mise à jour des serveurs de bassin devra remplacer,
ajouter des fichiers dans l'arborescence du site. L'application Web doit avoir les pleins droits sur
toute l'arborescence du site. Pour le serveur Apache, c'est l'utilisateur apache.
• CHMOD 777 <Install> sous le Login apache
Ø
Rendre
le
répertoire
<Install>/presentation/administration
accessible uniquement à un
utilisateur spécifique : Créer un fichier nommé .htaccess contenant :
AuthType Basic
AuthUserFile <install>/presentation/administration/.htpasswd
AuthGroupFile /dev/null
AuthName "Serveur de données RMC"
require valid-user
Créer ensuite le login / mot de passe de l’administrateur en utilisant la commande htpasswd
.htpasswd [Login administrateur]. A la question New password ?, taper le [mot de passe
administrateur]. A la question Re-type new password ? taper [mot de passe administrateur].
Ø
Mettre à jour les variables globales spécifiques au Bassin déclarées dans le fichier
<Install>/outils/constLocal.php
Le tableau ci-dessous dresse la liste les variables à initialiser.
Variable
Description
DB_NAME
Nom de la base (‘ReseauDonnees’)
DB_LOGIN
Login d’accès à la base
DB_PASSWORD
Mot de passe pour accéder à la base de données
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
12
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
RACINE
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
Répertoire racine du projet – chemin absolu
Par ex : home/httpd/dispositif/html/RESEAUX
SERVER
Nom du serveur (domaine) – localhost…
CLIENT
Page d’accueil du serveur (au-dessus de la page d’accueil de la partie
Réseau de données)
Par ex :http://rmc.rnde.tm.fr/
NOM_BASSIN
Inscrire le nom du Bassin afin de l’afficher en haut des pages
Par ex : Réseau de bassin<BR>Rhône Méditerranée Corse
WSDL
Chemin complet du fichier WSDL relatif à la synchronisation – chemin
relatif ?
Par ex : "../../service/synchroService.wsdl »
WSDL_UPDATE
Chemin complet du fichier WSDL relatif à la mise à jour des serveurs –
chemin relatif
Par ex : "../../service/updateService.wsdl »
CHECK_UPDATE
Booléen (true, false) permettant d'informer (sur la page d'administration)
l'administrateur de bassin qu'il existe au moins une mise à jour à
télécharger.
CODE_BASSIN_LOCAL
Code du bassin local (attribué par le SANDRE).
CLE
Clé d’autorisation de synchronisation avec le SANDRE (attribué par le
SANDRE).
PROXY
FOP_COMMANDE
Tableau associatif contenant les paramètres d’un éventuel proxy :
o
proxy_host : Adresse Ip du serveur PROXY
o
proxy_port : Port sur lequel est redirigé le service http
o
proxy_user : Identifiant de l’utilisateur
o
proxy_pass : Mot de passe de l’utilisateur
Chemin complet d'accès au script fop.sh.
Par ex : /usr/share/fop-0.20.5/fop.sh
REP_UPDATE
Répertoire absolu qui recevra les mises à jour. Le serveur WEB doit
avoir les pleins droits dessus ; ceci est à vérifier si le répertoire n'est
pas placé dans l'arborescence du site.
Ø
Editer le fichier PHP.ini et modifier la déclaration de la variable max_execution_time
max_execution_time = 300 (en secondes)
Ø
Editer le fichier PHP.ini et modifier la déclaration de la variable memory_limit
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
13
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
memory_limit = 16M;
Ø
Relancer Apache
Ø
Editer le fichier <install>/xslt/foconfig.xml et modifier le chemin d'accès aux fontes pour FOP. Il
doit pointer sur le répertoire parent du répertoire 'fonts' : <install>/presentation si le répertoire
'fonts' est dessous.
Exemple :
<entry>
<key>fontBaseDir</key>
<value>/home/httpd/rmc/html/RESEAUX/presentation</value>
</entry>
Ø
Accès au site
Vous pouvez maintenant accéder à votre site dispositif de collecte en utilisant la page web suivante :
http://monsite/RESEAUX/presentation/main/index.php
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
14
OIEau - ServeurRDM_RMC
Documentation d’installation du serveur RMC
OIEAU_RDD_RMC_DOC_INSTALLATION
Version : 4 - Date : 05/01/2005
6. RENSEIGNEMENTS
Pour tout renseignement vous pouvez contacter le SANDRE par mail : [email protected]
OIEau / oieau_rddrmc_doc_install_4.docoieau_rddrmc_doc_install_4beta.doc
15