Formation Apache karaf
€ HT / personne |
3 jours (21 heures) |
Présentation
Notre formation Apache Karaf vous permettra de maîtriser une plateforme d’exécution modulaire, légère et extensible, idéale pour déployer des applications Java dynamiques dans un esprit d’agilité et de résilience. Vous apprendrez à structurer vos services en bundles OSGi, à gérer leur cycle de vie en temps réel, et à orchestrer leur configuration dans un environnement sécurisé et hautement personnalisable.
Vous découvrirez les fondamentaux d’Apache Karaf : son installation, sa console interactive, sa structure de fichiers et la gestion fine des modules à chaud. La modularité devient un atout, et non une contrainte.
Vous apprendrez à intégrer des frameworks comme Apache Camel pour l’orchestration, CXF pour les services REST/SOAP, ou Blueprint pour l’injection de dépendances, dans une architecture orientée services claire et scalable.
La formation aborde également les aspects avancés : monitoring via JMX/Jolokia, packaging de features personnalisés, intégration dans une chaîne CI/CD et supervision avec Prometheus ou Grafana.
Comme pour toutes nos formations, celle-ci est dispensée avec la toute dernière version d’Apache Karaf.
Objectifs
- Savoir installer et configurer une instance Apache Karaf dans un environnement de développement ou de production
- Comprendre l’architecture modulaire OSGi et le cycle de vie des bundles dans Karaf
- Maîtriser le déploiement, la gestion et la supervision dynamique de services Java à chaud
- Créer et intégrer des services métiers via Blueprint, Apache Camel ou CXF dans un conteneur Karaf
- Configurer la sécurité, les rôles d’accès et le système de log avec Pax Logging et ConfigAdmin
- Superviser et automatiser le déploiement de bundles Karaf dans une chaîne CI/CD avec Maven et Jolokia
Public visé
- Développeurs
- Ingénieurs DevOps
- Architectes techniques
Pré-requis
- Notions d’architecture d’intégration
- Connaissances de base en Java
Programme de la formation Apache Karaf
Introduction à Apache Karaf
- Définition d’un conteneur OSGi
Positionnement d’Apache Karaf dans l’écosystème Java - Comparaison avec d’autres runtimes : Spring Boot, JBoss, etc.
- Plateforme d’intégration
- Déploiement d’APIs REST/SOAP
- Environnements modulaires dynamiques
Installation d’Apache Karaf
- Prérequis…
- Téléchargement de Karaf
- Démarrage et arrêt d’une instance
- Rôle des dossiers : bin/, etc/, deploy/, lib/, data/
- Logique de déploiement via deploy/
- Commandes essentielles
- Navigation et aide
- Auto-complétion et gestion des sessions
Gestion des bundles OSGi
- Qu’est-ce qu’un bundle ?
- Cycle de vie
- Isolation de classloaders et résolutions de dépendances
- Par la console
- Par le dossier deploy/
- Par les features XML
- Détection des erreurs de démarrage
- Résolution des dépendances manquantes
- Utilisation de diag et resolve
Configuration et gestion du runtime
- Structure des fichiers dans etc/
- Utilisation du service ConfigAdmin
- Modifications à chaud des fichiers .cfg
- Fichier users.properties
- Définition des rôles et autorisations
- Protection de la console et des interfaces JMX
- Formats supportés
- Configuration via etc/org.ops4j.pax.logging.cfg
- Redirection vers fichiers, syslog, console
Features, services et intégrations
- Format XML d’un feature
- Installation et désinstallation via feature:install
- Création de features personnalisés avec Maven
- Ajout des features camel-core, camel-http, etc.
- Déploiement de routes XML ou Java DSL
- Cas pratique : lecture de fichier → transformation → log
- Définition de services REST ou SOAP
- Exposition via HTTP
- Sécurité avec WS-Security
- Injection de dépendances avec Blueprint
- Déploiement de fichiers blueprint.xml
- Comparaison avec Spring XML
Supervision et clustering
- Accès JMX local et distant
- Intégration avec Jolokia pour exposition HTTP/JSON
- Intégration Prometheus / Grafana
- Historique de Karaf Cellar
- Concepts de clustering avec Hazelcast / Zookeeper
- Considérations de haute disponibilité
Packaging, CI/CD et tests
- Configuration du karaf-maven-plugin
- Création de features depuis projets Maven
- Inclusion de dépendances dans les bundle
- Pipeline de build pour bundles OSGi
- Publication et déploiement automatisés
- Tests unitaires classiques avec JUnit
- Tests OSGi avec Pax Exam
- Vérification de l’enregistrement des services
Ateliers pratiques
- Démarrage de Karaf
- Navigation dans la console
- Déploiement d’un bundle simple
- Projet Maven OSGi
- Fichier XML de feature
- Installation dans Karaf
- Déploiement d’une route simple dans Karaf
- Test de transformation et log
- Création d’un endpoint JAX-RS
- Appel via Postman
- Exposition de métriques Karaf
- Importation dans un dashboard Prometheus
Conclusion et bonnes pratiques
- Points forts de Karaf
- Limites et alternatives selon les contextes
- Organisation modulaire des bundles
- Gestion des configurations centralisée
- Séparation claire entre features métiers et techniques
- Documentation Apache Karaf
- Pax Exam, Karaf Cookbook
- Repos communautaires GitHub
Pour aller plus loin
Formation Talend DI
Formation Apache Nifi
Formation Alteryx
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Afficher tous les témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Noter la formation
€ HT / personne |
3 jours (21 heures) |
UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?
Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.
ILS SE SONT FORMÉS CHEZ NOUS