Formation Avancée sur le Développement d'Architectures Serverless Open Source

Objectifs de la Formation

  • Comprendre en profondeur les concepts et principes des architectures serverless.

  • Acquérir les compétences nécessaires pour développer, déployer et gérer des applications serverless en utilisant des technologies open source.

  • Mettre en pratique les concepts avancés à travers des labs pratiques et des études de cas réels.

Public Cible

  • Développeurs Senior

  • Ingénieurs DevOps

  • Architectes logiciels

Pré-requis

  • Connaissance avancée des architectures cloud et des services serverless.

  • Expérience en développement logiciel avec des langages comme JavaScript, Python, ou Go.

  • Familiarité avec les concepts de microservices et de conteneurs.


Module 1: Introduction aux Architectures Serverless

Session 1: Concepts de Base et Avantages

  • Définition des architectures serverless.

  • Avantages et inconvénients par rapport aux architectures traditionnelles.

Session 2: Écosystème Open Source

  • Présentation des outils et frameworks open source (e.g., Apache OpenWhisk, Fission, Kubeless).

  • Comparaison des fonctionnalités et cas d'utilisation.

Lab 1: Mise en Place d'un Environnement de Développement Serverless

  • Installation de Docker et Kubernetes.

  • Déploiement d'un cluster Kubernetes local.

  • Installation et configuration de Fission sur Kubernetes.


Module 2: Développement de Fonctions Serverless

Session 3: Création et Déploiement de Fonctions

  • Structure et composantes des fonctions serverless.

  • Développement et déploiement de fonctions avec Fission.

Lab 2: Développement et Déploiement de Fonctions

  • Création d'une fonction simple en Python.

  • Déploiement et test sur Fission.

Session 4: Gestion des Dépendances et Environnements

  • Gestion des dépendances pour les fonctions.

  • Configuration des environnements d'exécution.

Lab 3: Gestion des Dépendances

  • Ajout de dépendances à une fonction Node.js.

  • Déploiement et test de la fonction avec ses dépendances.


Module 3: Orchestration et Gestion des Fonctions

Session 5: Orchestration des Fonctions

  • Concepts d'orchestration et de composition de fonctions.

  • Utilisation de workflows pour orchestrer les fonctions.

Lab 4: Orchestration de Fonctions

  • Création d'un workflow avec Apache OpenWhisk.

  • Déploiement et exécution du workflow.

Session 6: Gestion de l'État

  • Gestion de l'état dans les architectures serverless.

  • Utilisation de services de stockage pour la persistance de l'état.

Lab 5: Gestion de l'État

  • Implémentation d'une fonction avec persistance de l'état utilisant Redis.

  • Déploiement et test de la fonction.


Module 4: Monitoring et Sécurité

Session 7: Monitoring et Logging

  • Importance du monitoring dans les architectures serverless.

  • Outils et techniques de monitoring open source (e.g., Prometheus, Grafana).

Lab 6: Mise en Place du Monitoring

  • Configuration de Prometheus et Grafana pour le monitoring des fonctions Fission.

  • Création de tableaux de bord pour la visualisation des métriques.

Session 8: Sécurité des Fonctions

  • Concepts de sécurité pour les architectures serverless.

  • Meilleures pratiques pour sécuriser les fonctions et les environnements.

Lab 7: Implémentation de la Sécurité

  • Configuration de politiques de sécurité pour les fonctions.

  • Mise en œuvre de la gestion des accès et des autorisations.


Module 5: Déploiement et Gestion en Production

Session 9: Déploiement à Grande Échelle

  • Stratégies de déploiement à grande échelle.

  • Gestion des mises à jour et des versions.

Lab 8: Déploiement à Grande Échelle

  • Mise en place d'un pipeline CI/CD pour le déploiement des fonctions.

  • Déploiement d'une application serverless complète en production.

Session 10: Gestion des Coûts et Optimisation

  • Optimisation des performances et des coûts.

  • Techniques pour réduire les coûts opérationnels.

Lab 9: Optimisation des Fonctions

  • Analyse des performances et des coûts d'une application serverless.

  • Implémentation d'optimisations pour améliorer l'efficacité.


Module 6: Études de Cas et Avancées Futures

Session 11: Études de Cas

  • Présentation de cas réels d'implémentation d'architectures serverless.

  • Discussion sur les défis et les solutions adoptées.

Lab 10: Étude de Cas Pratique

  • Implémentation d'une architecture serverless basée sur un cas réel.

  • Analyse des résultats et des performances.

Session 12: Innovations et Tendances Futures

  • Tendances et innovations dans les architectures serverless.

  • Exploration des nouvelles technologies et outils émergents.

Lab 11: Exploration de Nouvelles Technologies

  • Test des nouvelles fonctionnalités et outils dans un environnement de développement.

  • Discussion sur l'impact potentiel et les cas d'utilisation futurs.


Évaluation et Certification

  • Quiz en ligne après chaque module.

  • Projet final : Développement et déploiement d'une application serverless complète en utilisant des technologies open source.

  • Évaluation des projets et délivrance des certificats de réussite.

Ressources et Supports

  • Slides et documents de référence.

  • Accès aux enregistrements des sessions.

  • Forums de discussion et support technique.


Ce plan de formation avancée est conçu pour offrir une maîtrise approfondie des architectures serverless open source et permettre aux participants d'appliquer ces connaissances de manière efficace dans leurs environnements professionnels.

Last updated