vigigraph / doc / admin.rst @ a51531ed
History | View | Annotate | Download (21.3 KB)
1 | f6e5b0c6 | Francois POIROTTE | ********************** |
---|---|---|---|
2 | Guide d'administration |
||
3 | ********************** |
||
4 | |||
5 | |||
6 | Installation |
||
7 | ============ |
||
8 | |||
9 | Prérequis logiciels |
||
10 | ------------------- |
||
11 | Afin de pouvoir faire fonctionner VigiGraph, l'installation préalable |
||
12 | des logiciels suivants est requise : |
||
13 | |||
14 | - python (>= 2.5), sur la machine où VigiGraph est installé |
||
15 | - Apache (>= 2.2.0), sur la machine où VigiGraph est installé |
||
16 | - apache-mod_wsgi (>= 2.3), sur la machine où VigiGraph est installé |
||
17 | - postgresql-server (version 8.3), éventuellement sur une machine distante |
||
18 | |||
19 | Reportez-vous aux manuels de ces différents logiciels pour savoir |
||
20 | comment procéder à leur installation sur votre machine. |
||
21 | VigiGraph requiert également la présence de plusieurs dépendances Python. |
||
22 | Ces dépendances seront automatiquement installées en même temps que le |
||
23 | paquet de VigiGraph. |
||
24 | |||
25 | Installation du paquet RPM |
||
26 | -------------------------- |
||
27 | L'installation de l'application se fait en installant simplement |
||
28 | le paquet RPM « vigilo-vigigraph ». La procédure exacte d'installation |
||
29 | dépend du gestionnaire de paquets utilisé. |
||
30 | Les instructions suivantes décrivent la procédure pour les gestionnaires |
||
31 | de paquets RPM les plus fréquemment rencontrés. |
||
32 | |||
33 | Installation à l'aide de urpmi :: |
||
34 | |||
35 | urpmi vigilo-vigigraph |
||
36 | |||
37 | Installation à l'aide de yum :: |
||
38 | |||
39 | yum install vigilo-vigigraph |
||
40 | |||
41 | |||
42 | Démarrage et arrêt de VigiGraph |
||
43 | =============================== |
||
44 | VigiGraph fonctionne comme un site web standard. À ce titre, il n'est pas |
||
45 | nécessaire d'exécuter une commande spécifique pour démarrer VigiGraph, |
||
46 | dès lors que le serveur web qui l'héberge a été lancé, à l'aide de la |
||
47 | commande :: |
||
48 | |||
49 | service httpd start |
||
50 | |||
51 | De la même manière, il n'y a pas de commande spécifique pour arrêter VigiGraph. |
||
52 | L'application est arrêtée en même temps que le serveur web, |
||
53 | à l'aide de la commande : |
||
54 | service httpd stop |
||
55 | |||
56 | |||
57 | Configuration de VigiGraph |
||
58 | ========================== |
||
59 | La configuration initialement fournie avec VigiGraph est très rudimentaire. |
||
60 | Elle est décomposée en deux fichiers : |
||
61 | |||
62 | - le fichier « settings.ini » d'une part, qui contient la majorité |
||
63 | des options de configuration ; |
||
64 | - et le fichier « app_cfg.py » qui contient des options de configuration |
||
65 | plus complexes, nécessitant l'utilisation d'un langage |
||
66 | plus complet (Python). |
||
67 | |||
68 | Ce chapitre a pour but de présenter les différentes options de configuration |
||
69 | disponibles afin de configurer VigiGraph en fonction de vos besoins. |
||
70 | Les chapitres à reprennent l'ordre de la configuration utilisé dans |
||
71 | le fichier « settings.ini » de l'application. Toutes les options de |
||
72 | configuration citées ici se trouvent sous la section [app:main] du |
||
73 | fichier « settings.ini ». |
||
74 | Enfin, le chapitre donne des informations quant à la méthode utilisée |
||
75 | pour intégrer VigiGraph sur un serveur web de type Apache, grâce au |
||
76 | module mod_wsgi. |
||
77 | La configuration de la journalisation des événements se fait également |
||
78 | au travers du fichier « settings.ini ». Néanmoins, comme ce procédé est commun |
||
79 | aux différents composants de Vigilo, celui-ci fait l'objet d'une documentation |
||
80 | séparée dans le document *Vigilo – Journaux d'événements*. |
||
81 | |||
82 | Configuration de la base de données |
||
83 | ----------------------------------- |
||
84 | Pour fonctionner, VigiGraph nécessite qu'une base de données soit accessible. |
||
85 | Ce chapitre décrit les options de configuration se rapportant à la base de |
||
86 | données. |
||
87 | |||
88 | Connexion à la base de données |
||
89 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
90 | La configuration de la connexion à la base de base de données se fait |
||
91 | en modifiant la valeur de la clé « sqlalchemy.url » sous la section [app:main]. |
||
92 | Cette clé contient une URL qui contient tous les paramètres nécessaires |
||
93 | pour pouvoir se connecter à la base de données. |
||
94 | Le format de cette URL est le suivant :: |
||
95 | |||
96 | sgbd://nom_utilisateur:mot_de_passe@adresse_serveur:port_serveur/nom_base_de_donnees |
||
97 | |||
98 | Le champ « :port_serveur » est optionnel et peut être omis si vous utilisez |
||
99 | le port par défaut d'installation du SGBD choisi. |
||
100 | |||
101 | Par exemple, voici la valeur correspondant à une installation mono-poste |
||
102 | par défaut de VigiGraph : |
||
103 | |||
104 | ea2115ec | Thomas BURGUIERE | postgresql://vigilo:vigilo@localhost/vigilo |
105 | f6e5b0c6 | Francois POIROTTE | |
106 | .. warning:: |
||
107 | À l'heure actuelle, seul PostgreSQL a fait l'objet de tests intensifs. |
||
108 | D'autres SGBD peuvent également fonctionner, mais aucun support ne sera |
||
109 | fourni pour ces SGBD. |
||
110 | |||
111 | |||
112 | Optimisation de la couche d'abstraction |
||
113 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
114 | L'option « sqlalchemy.echo » permet de forcer l'affichage des requêtes SQL. |
||
115 | En production, cette valeur doit être positionnée à « False ». |
||
116 | Elle est redondante avec la configuration des journaux d'événements |
||
117 | (voir le document intitulé Vigilo - Journaux d'événements pour plus |
||
118 | d'information). |
||
119 | |||
120 | L'option « sqlalchemy.echo_pool » permet d'activer le mode de débogage |
||
121 | du gestionnaire de connexions à la base de données. De même que pour |
||
122 | l'option « sqlalchemy.echo » ci-dessus, elle doit être positionnée |
||
123 | à « False » en production. |
||
124 | |||
125 | L'option « sqlalchemy.pool_recycle » permet de définir la durée |
||
126 | après laquelle une connexion est « recyclée » (recréée). |
||
127 | |||
128 | L'option « sqlalchemy.pool_size » permet de configurer le nombre |
||
129 | de connexions gérées simultanément par le gestionnaire de connexions |
||
130 | à la base de données. La valeur recommandée est 20. |
||
131 | |||
132 | L'option « sqlalchemy.max_overflow » permet de limiter le nombre maximal |
||
133 | de connexions simultanées à la base de données. La limite correspond |
||
134 | à la somme de « sqlalchemy.pool_size » et « sqlalchemy.max_overflow ». |
||
135 | Une valeur de 100 convient généralement. |
||
136 | |||
137 | La documentation d'API de SQLAlchemy (la bibliothèque d'abstraction |
||
138 | de la base de données utilisée par Vigilo) donne quelques informations |
||
139 | supplémentaires sur le rôle de ces différents paramètres. |
||
140 | Cette documentation est accessible à l'adresse |
||
141 | http://www.sqlalchemy.org/docs/05/reference/sqlalchemy/pooling.html. |
||
142 | |||
143 | Configuration des éléments de sécurité |
||
144 | -------------------------------------- |
||
145 | Ce chapitre décrit les options relatives à la gestion des données |
||
146 | de sécurité (clés de chiffrements, etc.) utilisées par VigiGraph. |
||
147 | |||
148 | Choix de la méthode de hachage des mots de passe |
||
149 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
150 | Lorsque l'authentification de Vigilo se base sur les comptes contenus dans |
||
151 | la base de données, les mots de passe des utilisateurs sont stockés sous |
||
152 | forme hachée afin de rendre plus difficile le cassage de ces mots de passe. |
||
153 | |||
154 | La méthode de hachage sélectionnée peut être configurée en modifiant |
||
155 | la valeur de la clé « password_hashing_function » sous la section [app:main]. |
||
156 | Les méthodes de hachage disponibles sont variées. |
||
157 | |||
158 | Les fonctions de hachage suivantes sont notamment disponibles : |
||
159 | |||
160 | - md5 |
||
161 | - sha1 |
||
162 | - sha224 |
||
163 | - sha256 |
||
164 | - sha384 |
||
165 | - sha512 |
||
166 | |||
167 | Des fonctions supplémentaires peuvent être disponibles en fonction |
||
168 | de votre installation de Python. |
||
169 | |||
170 | .. warning:: |
||
171 | En cas d'absence d'une valeur pour cette option ou si la fonction de |
||
172 | hachage indiquée n'existe pas, les mots de passe sont stockés en clair. |
||
173 | Vérifiez donc la valeur indiquée. |
||
174 | |||
175 | .. warning:: |
||
176 | Cette option ne doit être modifiée qu'au moment de l'installation. |
||
177 | Si vous modifiez la méthode utilisée ultérieurement, les comptes |
||
178 | précédemment enregistrés ne seront plus utilisables. En particulier, |
||
179 | le compte d'administration créé par défaut. |
||
180 | |||
181 | Clé de chiffrement / déchiffrement des sessions |
||
182 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
183 | Afin de ne pas dévoiler certains paramètres associés à un utilisateur, |
||
184 | le fichier de session qui contient ces paramètres est chiffré à l'aide |
||
185 | d'une clé symétrique, utilisée à la fois pour le chiffrement |
||
186 | et le déchiffrement des sessions de tous les utilisateurs de VigiGraph. |
||
187 | |||
188 | L'option « beaker.session.secret » permet de choisir la clé utilisée |
||
189 | pour chiffrer et déchiffrer le contenu des sessions. Cette clé peut être |
||
190 | la même que celle configurée pour le chiffrement / déchiffrement |
||
191 | des cookies (voir le chapitre ), mais ceci est déconseillé |
||
192 | afin d'éviter que la compromission de l'une des deux clés |
||
193 | n'entraine la compromission de l'autre. |
||
194 | |||
195 | De la même manière, vous pouvez configurer les autres interfaces graphiques |
||
196 | de Vigilo pour utiliser les mêmes clés, ou opter de préférence pour des clés |
||
197 | différentes (là encore, pour éviter la propagation d'une compromission). |
||
198 | |||
199 | Clé de chiffrement / déchiffrement des cookies |
||
200 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
201 | L'association entre un utilisateur et sa session se fait à l'aide d'un cookie |
||
202 | de session enregistré sur le navigateur de l'utilisateur. |
||
203 | |||
204 | De la même manière que les sessions sont chiffrées afin de garantir |
||
205 | la confidentialité de leur contenu, le cookie de session est également |
||
206 | chiffré afin de protéger son contenu. |
||
207 | |||
208 | L'option « sa_auth.cookie_secret » permet de choisir la clé utilisée |
||
209 | pour chiffrer et déchiffrer le contenu du cookie. Cette clé peut être la même |
||
210 | que celle configurée pour le chiffrement / déchiffrement des sessions |
||
211 | (voir le chapitre ), mais ceci est déconseillé afin d'éviter que la |
||
212 | compromission de l'une des deux clés n'entraine la compromission de l'autre. |
||
213 | |||
214 | De la même manière, vous pouvez configurer les autres interfaces graphiques |
||
215 | de Vigilo pour utiliser les mêmes clés, ou opter de préférence pour des |
||
216 | clés différentes (là encore, pour éviter la propagation d'une compromission). |
||
217 | |||
218 | Utilisation d'un mécanisme d'authentification externe |
||
219 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
220 | Pour utiliser un mécanisme d'authentification externe (par exemple : Kerberos), |
||
221 | définissez la clé « external_auth » à « True » sous la section [app:main]. |
||
222 | Dans ce mode, Vigilo ne tente pas d'authentifier l'utilisateur par rapport |
||
223 | aux comptes contenus dans sa base de données, mais utilise uniquement |
||
224 | le nom d'utilisateur transmis par la source d'authentification externe. |
||
225 | |||
226 | Le nom d'utilisateur peut être transmis de plusieurs manières, |
||
227 | par exemple sous la forme d'une variable d'environnement. |
||
228 | |||
229 | .. warning:: |
||
230 | N'utilisez ce mode de fonctionnement que si vous comprenez bien les |
||
231 | risques associés. En particulier, le fait qu'aucun mot de passe ne sera |
||
232 | demandé à l'utilisateur pour confirmer son identité. |
||
233 | |||
234 | Emplacement de la configuration des authentifications / autorisations |
||
235 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
236 | La directive « auth.config » de la section [app:main] permet d'indiquer |
||
237 | l'emplacement du fichier contenant la configuration de la couche |
||
238 | d'authentification / autorisation de Vigilo. |
||
239 | |||
240 | Il n'est généralement pas nécessaire de modifier cette valeur. |
||
241 | La configuration de cette couche d'abstraction est détaillée |
||
242 | dans le document *Vigilo – Authentification et autorisation*. |
||
243 | |||
244 | Configuration de l'interface |
||
245 | ---------------------------- |
||
246 | Ce chapitre décrit les options qui modifient l'apparence de l'interface |
||
247 | graphique de VigiGraph. |
||
248 | |||
249 | Langue par défaut de VigiGraph |
||
250 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
251 | Au sein de son interface, VigiGraph tente de s'adapter au navigateur |
||
252 | de l'utilisateur pour afficher les pages dans sa langue. |
||
253 | |||
254 | Toutefois, si l'utilisateur n'a pas paramétré sa langue ou bien si |
||
255 | aucune traduction n'est disponible qui soit en accord avec les paramètres |
||
256 | du navigateur de l'utilisateur, une langue par défaut est utilisée (dans |
||
257 | l'installation par défaut de VigiGraph, cette langue est le Français « fr »). |
||
258 | |||
259 | Vous pouvez modifier la langue utilisée par défaut en changeant la valeur |
||
260 | de la clé « lang » sous la section [app:main]. La valeur de cette clé |
||
261 | est le code de la langue à utiliser, sur deux caractères et en minuscules |
||
262 | (format ISO 3166-1 « alpha 2 »). Exemples de codes valides : fr, en, de, … |
||
263 | |||
264 | La liste complète des codes possibles est disponible sur |
||
265 | http://fr.wikipedia.org/wiki/ISO_3166-1. La langue retenue |
||
266 | doit être disponible parmi les traductions fournies avec VigiGraph. |
||
267 | |||
268 | Emplacement de la documentation en ligne |
||
269 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
270 | Il est possible d'ajouter un lien dans l'interface graphique qui redirige |
||
271 | l'utilisateur vers la documentation en ligne de l'application. |
||
272 | Ceci se fait en assignant une URL à l'option « help_link ». |
||
273 | |||
274 | Si cette option est renseignée, une icône en forme de bouée de sauvetage |
||
275 | .. image:: img/help_icon.png |
||
276 | |||
277 | apparaît dans l'interface graphique qui permet à l'utilisateur d'accéder |
||
278 | à l'URL indiquée. |
||
279 | |||
280 | Délai de rafraîchissement automatique |
||
281 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
282 | Les veilleurs ont la possibilité d'activer un rafraîchissement automatique |
||
283 | des graphes. L'option « refresh_delay » permet de choisir le délai, |
||
284 | en secondes, entre deux rafraîchissements automatiques d'un graphe. |
||
285 | |||
286 | Configuration du lien d'accueil |
||
287 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
288 | 8a5d38ed | Francois POIROTTE | Vous avez la possibilité de rediriger l'utilisateur vers une page de votre |
289 | choix lorsque celui-ci clique sur le logo en forme de maison |imghome| |
||
290 | f6e5b0c6 | Francois POIROTTE | dans l'interface graphique de VigiGraph. |
291 | 8a5d38ed | Francois POIROTTE | Ceci se fait en modifiant l'URL associée à l'option ``home_link``. |
292 | |||
293 | .. |imghome| image:: img/home.png |
||
294 | f6e5b0c6 | Francois POIROTTE | |
295 | Configuration des serveurs mandataires |
||
296 | -------------------------------------- |
||
297 | VigiGraph permet d'accéder à la page d'état Nagios d'un hôte ou d'un service, |
||
298 | et ce malgré le fait que ces hôtes/services sont supervisés par des serveurs |
||
299 | Nagios différents. De même, il est capable d'afficher des graphes de métrologie |
||
300 | en interrogeant le serveur VigiRRD qui gère un hôte donné. |
||
301 | Ceci est rendu possible par l'existence d'un serveur mandataire (proxy) au sein |
||
302 | de Vigilo qui relaye les requêtes au serveur Nagios ou VigiRRD adéquat. |
||
303 | Le chapitre présente tout d'abord les options communes à tous les types |
||
304 | de serveurs mandataires de Vigilo. Puis, le chapitre détaille les options |
||
305 | spécifiques au serveur mandataire pour Nagios intégré dans VigiGraph. |
||
306 | Enfin, le chapitre détaille les options spécifiques au serveur mandataire |
||
307 | pour VigiRRD, dont la configuration est très proche de celle du serveur |
||
308 | mandataire pour Nagios. |
||
309 | |||
310 | Options communes à tous les serveurs mandataires de Vigilo |
||
311 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
312 | Les options communes à tous les serveurs mandataires de Vigilo |
||
313 | concernent l'authentification auprès d'un serveur mandataire intermédiaire. |
||
314 | |||
315 | Elles sont au nombre de trois : |
||
316 | |||
317 | - « app_proxy_auth_method » indique la méthode d'authentification |
||
318 | à utiliser et peut valoir « basic » ou « digest » , |
||
319 | |||
320 | - « app_proxy_auth_username » indique le nom d'utilisateur à utiliser |
||
321 | pour se connecter au serveur mandataire intermédiaire , |
||
322 | |||
323 | - « app_proxy_auth_password » indique le mot de passe associé |
||
324 | à ce nom d'utilisateur. |
||
325 | |||
326 | Ces trois options doivent être renseignées pour que l'authentification |
||
327 | auprès du serveur mandataire intermédiaire soit effective. |
||
328 | |||
329 | Options spécifiques au serveur mandataire Nagios |
||
330 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
331 | L'option « app_path.nagios » indique l'emplacement de l'installation |
||
332 | de Nagios sur le serveur web distant, à partir de la racine du serveur web. |
||
333 | Généralement, il s'agit de « /nagios/ » (emplacement par défaut lors |
||
334 | d'une nouvelle installation de l'interface graphique CGI de Nagios). |
||
335 | |||
336 | L'option « app_scheme.nagios » indique le protocole à utiliser |
||
337 | pour communiquer avec le serveur web distant. |
||
338 | Les protocoles supportés sont « http » et « https ». |
||
339 | |||
340 | L'option « app_port.nagios » permet d'indiquer le port à utiliser |
||
341 | pour se connecter, dans le cas où il ne s'agit pas du port standard. |
||
342 | Par défaut, le serveur mandataire Nagios utilise le port standard associé |
||
343 | au protocole donné par « app_scheme.nagios » (80 pour HTTP, 443 pour HTTPS). |
||
344 | |||
345 | L'option « app_redirect.nagios » permet de modifier le comportement |
||
346 | du serveur mandataire. Lorsque cette option vaut « True », |
||
347 | le serveur mandataire agit comme un simple redirecteur de requêtes. |
||
348 | Dans ce mode, les options d'authentification liées au serveur mandataire |
||
349 | sont ignorées. Ce mode de fonctionnement est utile afin de tester |
||
350 | la configuration mais n'est pas recommandé en production. |
||
351 | |||
352 | Les options « app_auth_method.nagios », « app_auth_username.nagios » |
||
353 | et « app_auth_password.nagios » permettent d'indiquer la méthode |
||
354 | d'authentification, le nom d'utilisateur et le mot de passe pour accéder |
||
355 | à l'interface CGI de Nagios. |
||
356 | Ces options sont similaires à celles décrites au chapitre . |
||
357 | |||
358 | Options spécifiques au serveur mandataire VigiRRD |
||
359 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
360 | Les options de configuration pour le serveur mandataire VigiRRD |
||
361 | sont exactement les mêmes que pour le serveur mandataire Nagios |
||
362 | présenté au chapitre , en remplaçant simplement le suffixe « .nagios » |
||
363 | par « .vigirrd ». |
||
364 | |||
365 | Configuration des sessions |
||
366 | -------------------------- |
||
367 | Chaque fois qu'un utilisateur se connecte à VigiGraph, un fichier de session |
||
368 | est créé permettant de sauvegarder certaines préférences de cet utilisateur |
||
369 | (par exemple, le thème de l'application, la taille de la police de caractères, |
||
370 | etc.). Ce chapitre décrit les options relatives à la gestion des sessions. |
||
371 | |||
372 | Emplacement des fichiers de session |
||
373 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
||
374 | Le dossier dans lequel les fichiers de session seront stockés est indiqué |
||
375 | par l'option « cache_dir ». |
||
376 | |||
377 | Nom du cookie de session |
||
378 | ^^^^^^^^^^^^^^^^^^^^^^^^ |
||
379 | Afin d'associer un utilisateur au fichier de session qui lui correspond, |
||
380 | un cookie de session est créé sur le navigateur de l'utilisateur. |
||
381 | |||
382 | L'option « beaker.session.key » permet de choisir le nom du cookie créé. |
||
383 | Le nom doit être composé de caractères alphanumériques (a-zA-Z0-9) |
||
384 | et commencer par une lettre (a-zA-Z). |
||
385 | |||
386 | Intégration de VigiGraph avec Apache / mod_wsgi |
||
387 | =============================================== |
||
388 | VigiGraph a été testé avec le serveur libre Apache. L'application utilise |
||
389 | en outre le module Apache « mod_wsgi » pour communiquer avec le serveur. |
||
390 | Ce module implémente un modèle de communication basé sur l'interface WSGI. |
||
391 | Le reste de ce chapitre décrit la configuration utilisée pour réaliser |
||
392 | cette intégration. |
||
393 | |||
394 | Fichier de configuration pour Apache |
||
395 | ------------------------------------ |
||
396 | Le fichier de configuration pour l'intégration de VigiGraph dans Apache |
||
397 | se trouve généralement dans /etc/vigilo/vigigraph/vigigraph.conf |
||
398 | (un lien symbolique vers ce fichier est créé dans le dossier de configuration |
||
399 | d'Apache, généralement dans /etc/httpd/conf.d/vigigraph.conf). |
||
400 | |||
401 | En général, il n'est pas nécessaire de modifier le contenu de ce fichier. |
||
402 | Ce chapitre vise toutefois à fournir quelques informations sur |
||
403 | le fonctionnement de ce fichier, afin de permettre d'éventuelles |
||
404 | personnalisations de ce comportement. |
||
405 | |||
406 | Ce fichier tente tout d'abord de charger le module « mod_wsgi » |
||
407 | (directive LoadModule) puis ajoute les directives de configuration |
||
408 | nécessaires à Apache pour faire fonctionner VigiGraph, |
||
409 | reprises partiellement ci-dessous :: |
||
410 | |||
411 | WSGIRestrictStdout off |
||
412 | WSGIPassAuthorization on |
||
413 | WSGIDaemonProcess vigigraph user=apache group=apache threads=2 |
||
414 | WSGIScriptAlias /vigilo/vigigraph "/etc/vigilo/vigigraph/vigigraph.wsgi" |
||
415 | |||
416 | KeepAlive Off |
||
417 | |||
418 | <Directory "/etc/vigilo/vigigraph/"> |
||
419 | <Files "vigigraph.wsgi"> |
||
420 | WSGIProcessGroup vigigraph |
||
421 | WSGIApplicationGroup %{GLOBAL} |
||
422 | |||
423 | Order deny,allow |
||
424 | Allow from all |
||
425 | </Files> |
||
426 | </Directory> |
||
427 | |||
428 | L'option WSGIRestrictStdout est positionnée à « off » afin d'éviter |
||
429 | qu'Apache ne tue le processus de l'application lorsque des données |
||
430 | sont envoyées sur la sortie standard. Ceci permet de récupérer |
||
431 | les erreurs critiques pouvant être émises par l'application. |
||
432 | Ces erreurs apparaissent alors dans le journal des événements |
||
433 | d'Apache (configuré par la directive error_log). |
||
434 | |||
435 | L'option WSGIPassAuthorization positionnée à « on » indique à Apache |
||
436 | et mod_wsgi que les informations d'authentification éventuellement |
||
437 | transmises par l'utilisateur doivent être transmises à VigiGraph. |
||
438 | En effet, Vigilo utilise son propre mécanisme de gestion de |
||
439 | l'authentification et des autorisations (voir la documentation |
||
440 | intitulée Vigilo - Authentification et autorisation) et utilise |
||
441 | donc ces informations. |
||
442 | |||
443 | L'option WSGIDaemonProcess permet de créer un groupe de processus |
||
444 | affecté au traitement des requêtes HTTP destinées à VigiGraph. |
||
445 | Il permet d'utiliser un nom d'utilisateur et un groupe prédéfini |
||
446 | (afin de réduire les privilèges nécessaires), ainsi que le nombre |
||
447 | de processus légers à utiliser pour traiter les requêtes (ici, 2). |
||
448 | |||
449 | L'option WSGIScriptAlias indique l'emplacement à partir duquel |
||
450 | VigiGraph sera accessible (ici, http://example.com/vigilo/vigigraph |
||
451 | si le serveur Apache est configuré pour le domaine « example.com ») |
||
452 | et l'emplacement du script WSGI nécessaire au lancement de l'application |
||
453 | (voir le chapitre ). |
||
454 | |||
455 | L'option KeepAlive positionnée à « off » est nécessaire afin de contourner |
||
456 | un problème dans le module « mod_wsgi » d'Apache. |
||
457 | |||
458 | Les autres options permettent d'exécuter le script WSGI de VigiGraph |
||
459 | à l'aide du groupe de processus défini précédemment. |
||
460 | |||
461 | La liste complète des directives de configuration supportées |
||
462 | par le module « mod_wsgi » d'Apache est disponible à l'adresse |
||
463 | http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives. |
||
464 | |||
465 | Script WSGI de VigiGraph |
||
466 | ------------------------ |
||
467 | Le script WSGI de VigiGraph est un script Python très simple qui a pour but |
||
468 | de démarrer l'exécution de VigiGraph à partir du fichier de configuration |
||
469 | associé (/etc/vigilo/vigigraph/settings.ini). |
||
470 | |||
471 | Vous n'avez généralement pas besoin de modifier son contenu, |
||
472 | sauf éventuellement pour adapter l'emplacement du fichier de configuration |
||
473 | en fonction de votre installation. |
||
474 | |||
475 | Annexes |
||
476 | ======= |
||
477 | |||
478 | .. include:: ../../turbogears/doc/glossaire.rst |
||
479 | |||
480 | .. vim: set tw=79 : |