Apache Tomcat 8

Transcription

Apache Tomcat 8
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
Avant-propos
1. À qui s’adresse ce livre ?
11
2. Les pré-requis
12
Préambule
1. Rappel sur les architectures Internet/Intranet/Extranet
1.1 Le protocole HTTP
1.1.1 Les méthodes HTTP
1.1.2 Les codes d’état HTTP
1.1.3 Les en-têtes HTTP
1.1.4 Gestion des sessions utilisateurs : les cookies HTTP
1.2 Les serveurs Web
1.3 Les technologies côté client
1.4 Les technologies côté serveur
1.5 Les architectures n/tiers
2. Apache Tomcat et Java
13
14
16
17
18
20
21
21
23
24
26
2.1 La fondation Apache
2.2 Java chez Apache : le projet Jakarta
2.3 Les évolutions de Tomcat
2.4 La plate-forme Java
2.4.1 Historique
2.4.2 Java aujourd’hui
2.4.3 Java et Tomcat
26
27
28
29
29
31
33
La plate-forme Java EE
1. La plate-forme Java Enterprise Edition (Java EE)
www.editions-eni.fr
© Editions ENI
35
1/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
1.1 Le Java Community Process (JCP)
1.2 Une forte dépendance : les annotations
2. Les composants Java EE
38
2.1 Servlet
2.2 JavaServer Pages : JSP
2.3 Enterprise JavaBeans : EJB
2.4 Les entités Java
2.5 La technologie Web Socket
38
40
41
42
43
3. La plate-forme de service
44
3.1 JDBC : Java DataBase Connectivity
3.2 JNDI : Java Naming & Directory Interface
3.3 JMS : Java Message Service
3.4 JavaMail
3.5 JTA : Java Transaction API
3.6 RMI/IIOP : Remote Method Invocation/Internet InterORB Protocol
3.7 JCA : Java EE Connector Architecture
3.8 JAAS : Java Authentication and Authorization Service
3.9 XML
4. Les applications Java EE
45
45
45
46
46
47
47
47
47
48
4.1 Le modèle de développement MVC
4.2 Les différents modules Java EE
4.2.1 Modules Web
4.2.2 Modules EJB
4.2.3 Modules clients
4.2.4 Modules de connecteurs
4.3 Structure et packaging des applications
5. Les applications Web Java EE et Tomcat
5.1 Structure et arborescence d’une application Web
5.2 Le descripteur de déploiement : web.xml
5.3 Les sessions HTTP
www.editions-eni.fr
36
37
© Editions ENI
49
50
51
51
52
52
52
54
54
56
59
2/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
6. Les serveurs d’applications Java EE
62
6.1 Rôles d’un serveur d’applications
6.2 Architecture d’un serveur d’applications
6.3 Les produits du marché
6.4 Le cas Apache Tomcat
62
63
65
66
Installation et configuration
1. Les différentes versions de Tomcat
67
2. Distribution de Tomcat
68
3. Installation de la plate-forme Java
69
3.1 Quelle version choisir ?
3.2 Installation et configuration
3.2.1 Sous Microsoft Windows
3.2.2 Sous Linux
69
69
69
74
4. Installation du serveur Tomcat 8
76
4.1 Sous Microsoft Windows
4.1.1 Installation à partir du package Windows
4.1.2 Installation à partir de l’archive ZIP
4.1.3 Création d’un service Windows pour Tomcat 8
4.2 Sous Linux
4.2.1 Installation à partir des paquets RPM
4.2.2 Installation à partir d’une archive
4.2.3 Démarrer Tomcat 8 à l’amorçage du système
5. Coupler Tomcat avec un serveur Web
84
5.1 Pourquoi utiliser un serveur Web frontal ?
5.2 Les différents connecteurs pour l’intégration avec un serveur Web
5.2.1 Le protocole AJP
www.editions-eni.fr
76
77
78
79
80
80
82
82
© Editions ENI
84
85
86
3/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
5.2.2 Les modules AJP
5.3 Utiliser le serveur Web Apache
5.3.1 Configurer Tomcat et Apache avec un module AJP
5.3.2 Installer et configurer Apache
5.3.3 Installer et configurer Tomcat 8
5.3.4 Le module mod_jk
5.3.5 Les modules mod_proxy et mod_proxy_ajp
5.4 Utiliser le serveur Web Microsoft IIS
5.4.1 Configurer Tomcat et IIS avec le redirecteur JK
5.4.2 Configurer Tomcat 8 pour le redirecteur JK
5.4.3 Installer et configurer le redirecteur JK
5.5 Configurer les serveurs Web pour servir les ressources statiques
86
86
87
87
90
91
103
104
104
104
105
112
Administration du serveur
1. Architecture du serveur Tomcat 8
117
1.1 Les différents composants de Tomcat 8
1.2 Arborescence de l’installation
2. Le fichier server.xml
121
2.1 Les éléments de configuration
2.1.1 L’élément <Server>
2.1.2 L’élément <Service>
2.1.3 L’élément <Executor>
2.1.4 L’élément <Connector>
2.1.5 L’élément <Engine>
2.1.6 L’élément <Host>
2.1.7 L’élément <Context>
2.1.8 L’élément <Realm>
2.1.9 L’élément <Loader>
2.1.10 L’élément <Manager>
2.1.11 L’élément <JarScanner>
2.1.12 L’élément <Resources>
2.1.13 L’élément <Valve>
www.editions-eni.fr
117
119
121
123
123
124
125
127
128
131
133
135
136
138
140
140
© Editions ENI
4/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
2.1.14 L’élément <Listener>
151
3. Les autres fichiers de configuration
152
3.1 Le fichier web.xml
3.1.1 Configuration de filtres
3.1.2 Les filtres Tomcat 8
3.2 Le fichier tomcat-users.xml
3.3 Le fichier catalina.policy
152
156
158
162
163
4. Configuration des ressources
163
4.1 Visibilité et portée des ressources
4.2 Pools de connexions et DataSource JDBC
4.2.1 La connectivité aux bases de données
4.2.2 Le pooling de connexions JDBC
4.2.3 Configuration d’un pool de connexions JDBC avec Tomcat 8
4.2.4 Mise en œuvre
4.3 Sessions JavaMail
4.4 JavaBeans
4.5 Entrées d’environnement
165
167
167
169
170
172
175
177
180
Déploiement et gestion des applications
1. Introduction
183
2. Déployer une application dans Tomcat 8
183
2.1 Déploiement automatique d’applications
2.2 Utiliser le répertoire webapps/
2.3 L’élément <Context>
2.4 Déploiement avec XML
3. Les ressources des applications Web
187
3.1 Introduction et concepts
3.2 Les éléments de configuration
www.editions-eni.fr
184
184
185
185
187
188
© Editions ENI
5/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
3.3 Mise en œuvre
189
4. L’application manager de Tomcat 8
190
4.1 L’interface texte
4.1.1 Installer une application sous Tomcat 8
4.1.2 Mettre à jour une application
4.1.3 Démarrer et arrêter une application
4.1.4 Recharger une application
4.1.5 Supprimer une application
4.1.6 Obtenir des informations
4.1.7 Les messages d’erreur du manager
4.2 L’interface HTML
4.2.1 Déployer des applications localement
4.2.2 Déployer des applications à distance
4.3 L’interface ANT
5. Le Deployer de Tomcat
193
193
195
195
196
197
197
200
201
202
203
204
207
5.1 Automatiser le déploiement des applications
208
La sécurité du serveur et des applications
1. Introduction
211
2. Authentification, autorisation et cryptage : le modèle de sécurité Java EE
211
2.1 Authentification
2.2 Autorisation
2.3 Cryptage
2.4 La sécurité des applications Web Java EE
3. Les Realms de Tomcat
222
3.1 User Database Realm
3.2 JDBC Realm
3.3 DataSource Realm
www.editions-eni.fr
212
214
215
217
224
227
235
© Editions ENI
6/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
3.4 JNDI Realm
3.5 JAAS Realm
3.6 Combined Realm
3.7 LockOut Realm
237
242
245
245
4. Configuration de Tomcat pour le Single Sign-On
4.1 La Valve d’authentification unique
5. Sécurisation avec SSL
246
246
247
5.1 Génération des certificats et clés de cryptage
5.2 Configuration du connecteur HTTPS
5.3 Utiliser le serveur Web Apache comme serveur frontal HTTPS
6. Restrictions d’accès
248
251
253
254
6.1 Restriction par adresse IP
6.2 Restriction par nom de machine
255
256
7. Le gestionnaire de sécurité : utiliser Tomcat en mode sécurisé
7.1 Lancer Tomcat en mode sécurisé
7.2 Configuration du gestionnaire de sécurité pour Tomcat
8. Autres considérations de sécurité
256
259
259
261
8.1 Exécuter Tomcat 8 avec un compte sans privilèges
8.1.1 Configuration sous Windows
8.1.2 Configuration sous Linux
262
262
264
Analyse et supervision
1. Les fichiers journaux de Tomcat 8
267
1.1 Configuration des journaux de Tomcat 8
1.1.1 Le système de journalisation de Tomcat 8
1.1.2 Structure du fichier logging.properties
1.1.3 Le fichier logging.properties par défaut
www.editions-eni.fr
© Editions ENI
267
267
268
272
7/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
1.2 Configuration des journaux avec Log4J
1.2.1 Le système de journalisation Log4J
1.2.2 Utiliser Log4J avec Tomcat
2. Tester la montée en charge du serveur
2.1 Apache JMeter
2.1.1 Écrire des plans de test Web avec JMeter
2.1.2 Plans de test avancés : les composants de JMeter
2.1.3 Stratégie de conception des tests : un exemple complet
2.2 Optimisation et reconfiguration de Tomcat
2.2.1 Les paramètres d’optimisation de Tomcat 8
2.2.2 La machine virtuelle Java
3. Utiliser l’interface JMX de Tomcat
273
273
273
276
276
278
283
290
292
292
297
299
3.1 Qu’est-ce que JMX ?
3.2 JMX et Tomcat
3.3 Utiliser un client
3.3.1 Configurer la machine virtuelle de Tomcat 8
3.3.2 Configurer Tomcat 8
3.3.3 Lancement de JConsole
299
300
304
304
306
307
Clustering avec Tomcat
1. Introduction au clustering avec Tomcat 8
309
2. Une solution de haute disponibilité avec Tomcat 8
310
2.1 Une infrastructure disponible et performante
310
3. Configuration d’un cluster Tomcat 8
311
3.1 Installer plusieurs instances de Tomcat 8 sur la même machine
3.2 Répartition de charge avec les modules AJP
3.2.1 Configuration avec Apache HTTP Server et mod jk
3.2.2 Configuration avec Apache HTTP Server et mod_proxy_ajp
www.editions-eni.fr
© Editions ENI
311
314
315
319
8/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
3.2.3 Configuration avec Microsoft IIS
3.3 Configuration d’un cluster Tomcat 8 en mode maître/esclave
4. Maintenir l’état des clients dans un cluster
4.1 La problématique
4.2 Les solutions
4.2.1 La réplication de mémoire à mémoire
4.2.2 Les sessions persistantes sur système de fichiers
4.2.3 Les sessions persistantes en base de données
5. Déploiement d’applications dans un cluster Tomcat 8
5.1 Configuration du deployer en cluster
5.2 Conclusion
319
320
321
321
323
324
331
334
337
337
338
Utiliser Tomcat pour le développement
1. Introduction
339
2. Développer avec Eclipse
340
2.1 Les perspectives et les vues
2.2 Les plug-ins d’Eclipse pour Tomcat
3. Développer avec NetBeans
351
3.1 Configuration d’un serveur Tomcat 8
4. Apache ANT
352
355
4.1 Installation
4.2 Construction d’un projet
4.3 Générer les archives de déploiement
4.4 Déployer sur le serveur
5. Intégration de librairies tierces-parties
355
358
360
361
363
5.1 Exemples avec Struts
www.editions-eni.fr
341
342
363
© Editions ENI
9/10
Apache Tomcat 8
Guide d'administration du serveur Java EE 7 sous Windows et Linux
5.2 Exemple avec Hibernate
5.3 Pour conclure...
364
365
Installation et configuration de MySQL
1. Introduction
367
2. Téléchargement
367
3. Installation sous Windows
368
4. Installation sous Linux
373
Installation et configuration d'OpenLDAP
1. Installation sous Windows
375
2. Installation sous Linux
377
3. Configuration
378
4. Installation de JXplorer
379
5. Importation d’un fichier LDIF
382
Index
385
www.editions-eni.fr
© Editions ENI
10/10

Documents pareils