Aller au contenu principal
Gust Training
Langages de programmation et développement logiciels

Formation Architecture Microservices avec Spring Cloud et Spring Cloud Kubernetes

Description de la formation Architectures Microservice Spring Cloud Kubernetes Cette formation est divisée en deux parties; Spring Cloud et

Durée :
5 Jours
Niveau :
Intermédiaire
Modalités :
Présentiel · En ligne · Hybride

Objectifs de la formation

Concrètement, à l’issue de cette formation Architectures Microservice Spring Cloud Kubernetes, vous serez en mesure de:

  • Mettre en oeuvre une configuration centralisée et maitriser le service de discovery
  • Connaitre les clients des microservices
  • Maitriser le monitoring et la mise en production
  • Connaitre la sécurité dans Spring Cloud
  • Connaître les bonnes pratiques de développement liées à Spring Cloud Kubernetes
  • Comprendre les diférentes approches disponibles pour l’implémentation des services techniques liés aux architectures microservices

À qui s’adresse cette formation ?

Ce cours s’adresse à des programmeurs, des développeurs et des chefs de projets, ainsi qu’aux équipes de développement envisageant de déployer leurs microservices Spring Cloud sur des infrastructures Kubernetes.

Prérequis

Pour suivre ce stage, il est nécessaire de connaître le langage Javat et de posséder un certain niveau de connaissance Spring Core.

Programme

Introduction à Spring Cloud

  • L’approche DevOps et les architecture micro-services Découpage d’une application monolithique Pré-requis sur l’infrastructure Patterns de composition des services Identification des services techniques L’offre SpringBoot/SpringCloud

Configuration centralisée et service de discovery

  • Configuration centralisée Service Eureka Scalabilité, tolérance aux pannes

Travaux Pratiques :

Architecture avec 2 micro-services applicatifs et les services config et eureka

Clients des microservices

  • Pré-requis pour le client : Répartition de charge et résilience Client Feign Répartion de charge avec Ribbon Disjoncteurs avec Hystrix Routing et Proxy avec Zuul

Travaux Pratiques :

Ajout d’un micro-srvice « back-end » dans l’architecture. Répartion de charge et résilence. Ajout d’une Gustway dans l’architecture

Monitoring et mise en production

  • Tableaux de bord Hystrix L’agréGustur Turbine Centralisation des traces avec ELK Déploiement sur une infrastructure Docker, alternatives Kubernetes, Docker Swarm

Travaux Pratiques :

Mise en place de turbine et ElasticStack
Création d’un docker-compose, démarrage de l’architecture sur une infrastructure Docker

Sécurité

  • Alternatives pour l’implémentation de la sécurité Rappels oAuth2 SpringBoot et oAuth2 Spring Cloud Security

Travaux Pratiques :

Déploiements d’images Docker sur une infrastructure cloud

Rappels sur Spring Cloud Microservices

  • Architecture microservices et bénéfices attendus Services techniques nécessaires Les projets Spring Cloud et l’API common L’orchestrateur Kubernetes : architecture, types de ressources Service Kubernetes : DNS, Config Map, Sécurité, Helm, Ingress, Istio, Promotheus Spring Cloud Kubernetes : objectifs et starter disponibles

Environnement de développement

  • Profil Kubernetes de l’application Spring Boot Mock d’un serveur Kubernetes Kubernetes pour le développement Intégration avec les outils de build, plugins Maven et Gradle

Atelier

Mise en place de l’environnement de développement

Discovery

  • DiscoveryClient pour Kubernetes Gestion des namespaces Rechergement dynamique Service natif Kubernetes de découverte Répartition de charge côté client avec Ribbon

Atelier

Comparaison des différentes approches pour le service de Discovery

Configuration

  • Utilisation de ConfigMap, gestion des namespaces, des profils Gestion des secrets Rechargement dynamique

Atelier

ConfigMap, Secrets, Rechergement, Gestion des profils

Istio

  • Le profil Istio L’API istio-client

Atelier

Profil Istio et découverte des règles

Description de la formation Architectures Microservice Spring Cloud Kubernetes

Cette formation est divisée en deux parties; Spring Cloud et Spring Cloud Kubernetes.

Spring Cloud fournit tous les services techniques nécessaires à la mise en place d’une architecture micro-service. Généralement associé à Spring Boot, il permet de rapidement composer des applications à partir de services unitaires et de les déployer sur une architecture de production nécessitant scalabilité et monitoring en temps-réel.

De son côté, la société Pivotal propose depuis plusieurs années l’environnement Spring Cloud dédié à l’élaboration d’architecture microservices. Ce framework se base sur Spring, Spring Boot et des API définissant les services techniques nécessaires à une architecture microservices (discovery, load-balancing, circuit-breaker pattern…).

Les applications développées via ce framework sont naturellement adaptées aux infrastructures de déploiement basées sur les orchestrateurs de conteneurs. Le projet Spring Cloud Kubernetes fournit des implémentations de l’API via des services natifs Kubernetes ainsi que de nombreux ourtils facilitant le déploiement sur ce type de plateforme.

Cette formation permet, au travers de divers ateliers (voir le détails des travaux pratiques), d’implémenter une architecture micro-services composée de micro-services applicatifs et des micro-services techniques directement apportés par SpringCloud. Les aspects sécurité, monitoring et scalabilité de l’architecture sont démontrés. Puis, après un des rappels sur l’environnement Spring Cloud, sa common API et l’infrastructure Kubernetes, elle poursuit avec la mise en place d’un environnement de développement basé sur des distributions minimales de Kubernetes ou des serveurs mockés. Enfin, l’ensemble des starters Spring Cloud Kubernetes et leurs APIs sont présentés.

Travaux Pratiques

Ce cours propose 75% d’ateliers pratiques pour une meilleure assimilation des connaissances.

Les travaux pratiques s’appuient sur l’IDE Spring Tools Suite. Voici quelques détails des travaux pratiques mis en place durant la formation:

  • Architecture avec Eureka et le serveur de configuration.
  • Ajout d’un micro-services.
  • Utilisation des clients Feign et des capacités Ribon et Hystrix.
  • Mise en place de Zuul.
  • Monitoring Turbine ELK.
  • Déploiement sur une infrastructure Docker.
  • Mise en place de la sécurité.

Thèmes : Spring

Langages de programmation et développement logiciels

Formation WinDev Mobile : Maîtriser WinDev Mobile pour Android

La formation WinDev Mobile pour Android est conçue pour vous permettre de développer rapidement des applications mobiles professionnelles sous Android.

Durée
5 Jours
Niveau
Intermédiaire
Modalités
Présentiel · En ligne · Hybride

Langages de programmation et développement logiciels

Formation WinDev Mobile : Développement d’applications iOS

Cette formation WinDev Mobile pour iOS vous permet de maîtriser l'environnement WinDev Mobile pour créer des applications performantes et

Durée
4 Jours
Niveau
Intermédiaire
Modalités
Présentiel · En ligne · Hybride

Langages de programmation et développement logiciels

Formation WinDev Mobile : Développement d’applications Android

La formation WinDev Mobile est conçue pour les développeurs déjà familiarisés avec WinDev et souhaitant élargir leurs compétences en créant des

Durée
4 Jours
Niveau
Intermédiaire
Modalités
Présentiel · En ligne · Hybride

Langages de programmation et développement logiciels

Formation WinDev : Initiation

WinDev est un environnement de développement puissant qui permet de créer rapidement des applications pour diverses plateformes, y compris Windows,

Durée
2 Jours
Niveau
Fondamental
Modalités
Présentiel · En ligne · Hybride