Objectifs de la formation
- Développer et consommer des services REST
- Mettre en place des microservices à l'aide de Python
- Déployer des microservices dans des conteneurs Docker
- Comprendre et appliquer les bonnes pratiques avec Docker
- Administrer et surveiller des microservices
- Préparer le déploiement sur un orchestrateur de conteneurs
Programme de la formation
Introduction
- Regard sur l'évolution logicielle et organisationnelle.
- Avantages et inconvénients des applications monolithiques.
- Méthodologies Agiles et pratiques DevOps.
- Processus d'intégration continue et de déploiement continu.
Les architectures microservices
- Approche SOA
- Définition d'une architecture microservices.
- Caractéristiques des microservices.
- L'émergence des architectures microservices.
- Les principaux acteurs.
- Communications entre microservices
- Quelques exemples des géants du Web.
Travaux pratiques
Définition, implémentation, documentation et test d’une application microservice incluant Swagger et implémentation des services Tester un service REST avec Postman et Python
Exécuter un microservice à l'aide de conteneurs
- Présentation de Docker.
- Fonctionnement des conteneurs avec Docker.
- Concevoir des images personnalisées.
- Configurer et démarrer des conteneurs
Travaux pratiques
Conteneurisation de l’application micro-services avec Docker
Déploiement d'une architecture microservices
- Techniques d'optimisation de déploiement.
- Mettre en œuvre une application multi-conteneurs avec Docker Compose.
- Solutions d'infrastructure pour les microservices (Kubernetes, Mesos, Swarm).
Travaux pratiques
Mise en place d'une architecture multi-conteneurs avec Docker Compose.
Administration et Monitoring
- Centralisation des logs.
- Le monitoring de microservices.
- Métriques et Health Check.
Travaux pratiques
Monitorer notre application micro-service