Formateur ActiveMQ

Ref : 200130L001
Logo client
Description de la mission
Nous recherchons un Formateur ActiveMQ pour une mission de 5 jours sur Paris.


1.1 Périmètre

Le client a installé dans son SI le logiciel ActiveMQ en production mais il est resté avec le
paramétrage par défaut. La manque de connaissance de cette solution ne permet pas de
le configurer au mieux pour rester dans état stable.



1.2 Besoin exprimé

Le besoin autour de cette solution est de participer à une formation permettant d’acquérir
toute la connaissance sur l’outil nécessaire pour la maîtrise de son bon fonctionnement.

Le client a souhaité que la formation soit orientée autour de 3 axes :

• présentation générale de l’outil
• transfert de compétences pour les exploitants
• transfert de compétences pour les utilisateurs



1.3 Démarche proposée

Pour répondre au besoin exprimé, nous proposons de découper les demandes en
deux formations distinctes :

• Une première formation de 4 jours à destination des exploitants et des équipes support
• Une seconde formation d’une journée à destination des développeurs / consommateurs

Les plans de formation pour chaque session sont détaillés dans le chapitre suivant.

Les sessions disposent d’un volet théorique ainsi qu’un volet pratique permettant aux participants
de réaliser des exemples concrets de la partie théorique. Le système d’exploitation
utilisé pour la partie pratique sera Debian 8.

Chaque session est limitée à un maximum de 8 participants.



1.4 Plans de formation

1.4.1 Formation destinée aux exploitants (4 jours)

Le plan de cette formation est le suivant :


Rappel sur middleware MOM et sur JMS (1/2 journée)

• Architecture middleware MOM : Queue, Topic
• Présentation API JMS
• Clients JMS et non JMS
• Fournisseur JMS
• Selecteurs JMS
• Domaines JMS
• Session, Connection
• Producer, Consumer


Installation de base d'ActiveMQ (1/4 journée)

• Installation
• Arborescence
• conf/activemq.xml
• bin/activemq.bat
• Répertoire data
• Démarrage
• Arrêt


Automatisation du déploiement (1/4 journée)

• Structure de package de déploiement
• Gestion des configurations à distribuer
• Déploiement simple automatisée avec Puppet


Revue des configurations avancées d'ActiveMQ (2 journées)

• Dimensionnement et architecture de déploiement
• Haute disponibilité
• Maître / esclave "file share"
• Maître / esclave "db share" Réseau de brokers statique (static://)
• Réseau de brokers dynamique (discovery://)
• Mécanisme de réplication levelDB
• Stratégie de stockage
• KahaDB : architecture et arborescence
• AMQ
• JDBC
• Mémoire
• Mise en cache
• Stratégie de récupération
• Connectivité ActiveMQ
• Connecteurs : tcp, nio, udp, ssl, https
• Réseaux statiques et dynamiques
• Gestion des connexions
• Configuration/paramétrage possibles des queues (request , response et DLQ)
• Configuration/paramétrage possibles des consumers/producers


Monitoring ActiveMQ (1/2 journée)

• Accès JMX local / distant
• JMX Mbean
• API JMX
• Advisory support
• Outils administration
• Jconsole, ligne commande
• Bonnes pratiques et aide au diagnostic des problèmes courants


Sécurité ActiveMQ (1/2 journée)

• Sécurité par certificats SSL
• Authentification avec plugin JAAS
• Autorisation pour Destination
• Autorisation pour Message
• Création plugin sécurité
• Interface avec Microsoft Active Directory l'authentifcation

Remarque sur les cas pratiques :

Les cas abordés seront plus élaborés que les « cas d'école classiques » pour lesquels la
configuration par défaut est largement suffisante.

À titre d'exemple, certains des cas de tests du client ont porté sur :

• de fortes charges sur les services producteurs
• la coupure de l'espace de partage de fichier
• les bases de données des applications clientes inaccessibles
• une Queue est KO
• un service interne du broker est KO
• un des brokers est KO


1.4.2 Formation destinée aux développeurs / consommateurs (1 jour)

Le plan de cette formation est le suivant :

Développement ActiveMQ (1 journée)

• Clients JMS avec Java
• Embarquer ActiveMQ dans une application JAVA avec le framework Spring