Développer des applications cloud sur AWS
Le développement d'applications cloud sur AWS offre une agilité et une évolutivité sans précédent. Cette approche permet aux développeurs de tirer parti d'un large éventail de services AWS pour construire des solutions robustes et performantes. De la gestion du stockage et des bases de données à l'intégration de l'intelligence artificielle, AWS fournit les outils nécessaires pour innover et répondre aux besoins métier.
Cette formation intensive vous fournira les compétences pratiques pour maîtriser le développement sur AWS. Vous explorerez en profondeur les SDK AWS et l'AWS CLI, et apprendrez à les utiliser pour interagir avec les services AWS. À travers la construction d'une application complète, vous découvrirez comment configurer les permissions, intégrer la logique métier, gérer l'accès des utilisateurs et déployer votre application dans le cloud.
À l'issue de ce programme de 3 jours, vous serez capable de concevoir, développer et déployer des applications cloud évolutives et sécurisées sur AWS. Vous maîtriserez les bonnes pratiques de développement, les architectures de microservices et les principes DevOps pour optimiser vos projets. Cette expertise vous permettra de répondre aux exigences des environnements cloud modernes et d'accélérer l'innovation au sein de votre organisation.
En tant que partenaire de formation premium (ATP) agréé par Amazon Web Services, Oo2 vous propose des formations qualifiantes et certifiantes qui respectent les normes de qualité rigoureuses de l'organisme.
Objectifs
À l'issue de la formation en développement sur AWS, vous atteindrez les objectifs de compétences suivants :
- construire une application cloud simple de bout en bout en utilisant les kits de développement logiciel AWS (AWS SDK), l'interface de ligne de commande AWS (AWS CLI) et les IDE ;
- configurer les autorisations AWS Identity and Access Management (IAM) pour gérer un environnement de développement ;
- utiliser plusieurs modèles de programmation dans vos applications pour accéder aux services AWS ;
- utiliser les SDK AWS pour effectuer des opérations CRUD sur les ressources Amazon S3) et Amazon DynamoDB ;
- créer des fonctions AWS Lambda avec d'autres intégrations de services pour vos applications Web ;
- comprendre les avantages des architectures de microservices et des applications sans serveur pour la conception ;
- développer des composants API Gateway et les intégrer à d'autres services AWS ;
- expliquer comment Amazon Cognito contrôle l'accès des utilisateurs aux ressources AWS ;
- créer une application Web en utilisant Cognito pour fournir et contrôler l'accès des utilisateurs ;
- utiliser la méthodologie DevOps pour réduire les risques associés aux versions d'applications traditionnelles et identifier les services AWS qui aident à mettre en œuvre les pratiques DevOps ;
- utiliser AWS Serverless Application Model (AWS SAM) pour déployer une application ;
- analyser la construction de votre application à l'aide d'Amazon X-Ray.
Programme
Module 1 : introduction à la formation
- Présentation du déroulement de la formation.
- Distribution des supports de cours officiel.
- Explication détaillée du programme.
- Tour de table et présentation de chacun.
Module 2 : concevoir une application web sur AWS
- L'analyse de l'architecture de l'application fil rouge.
- L'exploration des services AWS essentiels.
- La découverte des méthodes de stockage, gestion et hébergement.
Module 3 : initier le développement sur AWS
- La description des accès programmatiques aux services AWS.
- La présentation des modèles de programmation et leurs avantages (SDK AWS, AWS CLI).
- L'explication de l'intérêt et des fonctionnalités d'AWS Cloud9.
Module 4 : configurer les permissions de développement
- La présentation des fonctionnalités et composants d'AWS Identity and Access Management (IAM).
- Les méthodes de test des permissions AWS IAM.
- La configuration des IDE et SDK pour un environnement de développement.
- L'accès aux services AWS via les SDK et AWS Cloud9.
Labs : configurer l'environnement de développement
- Connexion à l'environnement de développement.
- Vérification de l'installation et de la configuration de l'IDE et de l'AWS CLI avec le profil d'application.
- Validation des permissions nécessaires à l'exécution des commandes AWS CLI.
- Attribution d'une politique AWS IAM à un rôle pour permettre la suppression d'un bucket Amazon S3.
Module 5 : développer avec Amazon S3
- Les concepts fondamentaux d'Amazon S3.
- L'énumération des options de sécurisation des données.
- La définition des dépendances SDK pour le code.
- Les méthodes de connexion au service Amazon S3.
- La gestion des objets de requête et de réponse.
Module 6 : gérer les opérations de stockage S3
- L'exécution des opérations de bucket et d'objet.
- La gestion des objets multiples et volumineux.
- La création et la configuration d'un bucket Amazon S3 pour héberger un site web statique.
- L'octroi d'un accès temporaire aux objets.
- Les opérations Amazon S3 via les SDK.
Labs : développer des solutions avec Amazon S3
- Interaction par programmation avec Amazon S3 via les SDK AWS et l'AWS CLI.
- Création d'un bucket avec des "waiters" et la vérification des codes d'exception de service.
- Construction des requêtes nécessaires pour télécharger un objet Amazon S3 avec des métadonnées.
- Construction des requêtes pour télécharger un objet depuis le bucket, traiter les données et télécharger l'objet modifié.
- Configuration d'un bucket pour héberger le site web et la synchronisation des fichiers sources via l'AWS CLI.
- Ajout de politiques de bucket IAM pour autoriser l'accès au site web S3.
Module 7 : développer avec Amazon DynamoDB
- Les composants clés de DynamoDB.
- L'explication de la connexion à DynamoDB.
- La construction d'un objet de requête.
- La lecture d'un objet de réponse.
- La liste des exceptions de dépannage courantes.
Module 8 : gérer les opérations de base de données DynamoDB
- Le développement de programmes d'interaction avec DynamoDB (SDK AWS).
- L'exécution des opérations CRUD sur les tables, index et données.
- Les bonnes pratiques de développement pour l'accès à DynamoDB.
- Les options de mise en cache pour améliorer les performances.
- Les opérations DynamoDB via le SDK.
Labs : développer des solutions avec Amazon DynamoDB
- Interaction par programmation avec Amazon DynamoDB via les API de bas niveau, de document et de haut niveau.
- Récupération d'éléments d'une table à l'aide d'attributs de clé, de filtres, d'expressions et de pagination.
- Chargement d'une table en lisant des objets JSON à partir d'un fichier.
- Recherche d'éléments dans une table en fonction d'attributs de clé, de filtres, d'expressions et de pagination.
- Mise à jour d'éléments en ajoutant de nouveaux attributs et en modifiant les données de manière conditionnelle.
- Accès aux données DynamoDB à l'aide de PartiQL et des modèles de persistance d'objet lorsque cela est possible.
Module 9 : développer avec AWS Lambda
- Le développement d'une fonction Lambda (SDK).
- La configuration des déclencheurs et des permissions.
- Le test, le déploiement et la surveillance des fonctions Lambda.
Labs : développer des solutions avec les fonctions AWS Lambda
- Création et interaction par programmation avec les fonctions AWS Lambda via les SDK AWS et l'AWS CLI.
- Configuration des fonctions AWS Lambda pour utiliser les variables d'environnement et s'intégrer à d'autres services.
- Génération d'URL pré-signées Amazon S3 à l'aide des SDK AWS et la vérification de l'accès aux objets du bucket.
- Déploiement des fonctions AWS Lambda avec des archives de fichiers .zip via l'IDE et les tests.
- Invocation des fonctions AWS Lambda à l'aide de la console AWS et de l'AWS CLI.
Module 10 : gérer les APIs avec Amazon API Gateway
- Les composants clés d'API Gateway.
- Le développement de ressources API Gateway pour l'intégration aux services AWS.
- La configuration des appels de requête et réponse API.
- Le test des ressources API et le déploiement du point de terminaison API.
- La création de ressources API Gateway.
Labs : développer des solutions avec Amazon API Gateway
- Création de ressources API Gateway RESTful et configuration de CORS pour l'application.
- Intégration des méthodes API avec les fonctions AWS Lambda pour traiter les données de l'application.
- Configuration des modèles de mappage pour transformer les données transmises lors de l'intégration de la méthode.
- Création d'un modèle de requête pour les méthodes API afin de garantir que le format des données transmises est conforme aux règles de l'application.
- Déploiement de l'API Gateway vers un environnement et la validation des résultats à l'aide du point de terminaison API.
Module 11 : concevoir une application moderne
- Les défis des architectures traditionnelles.
- L'architecture en microservices et ses avantages.
- Les approches de conception des applications en microservices.
- Le découplage des applications monolithiques.
- L'orchestration des fonctions Lambda (AWS Step Functions).
Module 12 : sécuriser l'accès utilisateur
- L'analyse de l'évolution des protocoles de sécurité.
- L'exploration de l'authentification (Amazon Cognito).
- La gestion de l'accès utilisateur et l'autorisation des API sans serveur.
- Les bonnes pratiques d'Amazon Cognito.
- L'intégration d'Amazon Cognito et l'analyse des jetons JWT.
Labs : créer de A à Z une application
- Création d'un groupe d'utilisateurs et d'un client d'application pour l'application web.
- Ajout de nouveaux utilisateurs et confirmation de leur capacité à se connecter à l'aide de l'interface de ligne de commande Amazon Cognito.
- Configuration des méthodes API Gateway pour utiliser Amazon Cognito comme autorisateur.
- Vérification de la génération des jetons d'authentification JWT lors des appels API Gateway.
- Développement rapide des ressources API Gateway à l'aide d'une stratégie d'importation Swagger.
- Configuration de l'interface utilisateur de l'application web pour utiliser les configurations Amazon Cognito et API Gateway et la vérification de la fonctionnalité complète de l'application.
Module 13 : déployer l'application
- L'identification des risques du développement logiciel traditionnel.
- La compréhension de la méthodologie DevOps.
- La configuration d'un modèle AWS SAM pour le déploiement sans serveur.
- Les stratégies de déploiement d'applications.
- Le déploiement d'une application sans serveur (AWS SAM).
Module 14 : observer l'application
- La différenciation entre la surveillance et l'observabilité.
- L'évaluation de la nécessité de l'observabilité et de ses composants clés.
- La compréhension du rôle de CloudWatch dans l'observabilité.
- L'utilisation de CloudWatch Application Insights.
- L'utilisation d'X-Ray pour le débogage.
Labs : observer l'application à l'aide d'AWS X-Ray
- Instrumentation du code de l'application pour utiliser les fonctionnalités AWS X-Ray.
- Activation de la génération de journaux par le package de déploiement de l'application.
- Analyse des composants clés d'un modèle AWS SAM et déploiement de l'application.
- Création de cartes de service AWS X-Ray pour observer le comportement de traitement de bout en bout de l'application.
- Analyse et débogage des problèmes d'application à l'aide des traces et des annotations AWS X-Ray.
Module 15 : conclusion de la formation
- Revue des points clés des cours.
- Présentation des autres formations AWS et des certifications.
- Séance de feed-back.
Prérequis
Suivre cette formation AWS nécessite l'un des prérequis recommandés suivants :
- avoir suivi une formation sur les principes de base de la conteneurisation ;
- avoir suivi une formation sur les concepts fondamentaux et le fonctionnement d'Amazon EKS ;
- avoir suivi la formation AWS Cloud Practitioner Essentials ou justifier d'une expérience ;
- avoir une expérience en programmation Python, .NET ou Java.
Public
Cette formation s'adresse aux publics suivants :
- les développeurs de logiciels expérimentés, désireux d'approfondir leurs compétences en utilisant les services AWS pour la création d'applications cloud ;
- les architectes de solutions cloud, chargés de la conception et du déploiement d'architectures applicatives sur la plateforme AWS ;
- les professionnels de l'IT souhaitant renforcer leur expertise en développement sur AWS et optimiser l'utilisation des services cloud.
Points forts
- Formateurs experts AWS certifiés : bénéficiez de l'expertise de formateurs reconnus et certifiés par AWS, qui possèdent une connaissance approfondie des services cloud et des meilleures pratiques de développement.
- Mise en pratique interactive : maîtrisez les outils et techniques de développement sur AWS grâce à des démonstrations concrètes et des exercices pratiques. Vous serez ainsi préparé à relever les défis réels du développement d'applications cloud.
- Acquisition de compétences clés : le contenu de la formation est soigneusement conçu pour vous permettre d'acquérir les compétences essentielles en matière de conception, de développement, de déploiement et de gestion d'applications sur la plateforme AWS.
Objectifs
À l'issue de la formation en développement sur AWS, vous atteindrez les objectifs de compétences suivants :
- construire une application cloud simple de bout en bout en utilisant les kits de développement logiciel AWS (AWS SDK), l'interface de ligne de commande AWS (AWS CLI) et les IDE ;
- configurer les autorisations AWS Identity and Access Management (IAM) pour gérer un environnement de développement ;
- utiliser plusieurs modèles de programmation dans vos applications pour accéder aux services AWS ;
- utiliser les SDK AWS pour effectuer des opérations CRUD sur les ressources Amazon S3) et Amazon DynamoDB ;
- créer des fonctions AWS Lambda avec d'autres intégrations de services pour vos applications Web ;
- comprendre les avantages des architectures de microservices et des applications sans serveur pour la conception ;
- développer des composants API Gateway et les intégrer à d'autres services AWS ;
- expliquer comment Amazon Cognito contrôle l'accès des utilisateurs aux ressources AWS ;
- créer une application Web en utilisant Cognito pour fournir et contrôler l'accès des utilisateurs ;
- utiliser la méthodologie DevOps pour réduire les risques associés aux versions d'applications traditionnelles et identifier les services AWS qui aident à mettre en œuvre les pratiques DevOps ;
- utiliser AWS Serverless Application Model (AWS SAM) pour déployer une application ;
- analyser la construction de votre application à l'aide d'Amazon X-Ray.
Programme
Module 1 : introduction à la formation
- Présentation du déroulement de la formation.
- Distribution des supports de cours officiel.
- Explication détaillée du programme.
- Tour de table et présentation de chacun.
Module 2 : concevoir une application web sur AWS
- L'analyse de l'architecture de l'application fil rouge.
- L'exploration des services AWS essentiels.
- La découverte des méthodes de stockage, gestion et hébergement.
Module 3 : initier le développement sur AWS
- La description des accès programmatiques aux services AWS.
- La présentation des modèles de programmation et leurs avantages (SDK AWS, AWS CLI).
- L'explication de l'intérêt et des fonctionnalités d'AWS Cloud9.
Module 4 : configurer les permissions de développement
- La présentation des fonctionnalités et composants d'AWS Identity and Access Management (IAM).
- Les méthodes de test des permissions AWS IAM.
- La configuration des IDE et SDK pour un environnement de développement.
- L'accès aux services AWS via les SDK et AWS Cloud9.
Labs : configurer l'environnement de développement
- Connexion à l'environnement de développement.
- Vérification de l'installation et de la configuration de l'IDE et de l'AWS CLI avec le profil d'application.
- Validation des permissions nécessaires à l'exécution des commandes AWS CLI.
- Attribution d'une politique AWS IAM à un rôle pour permettre la suppression d'un bucket Amazon S3.
Module 5 : développer avec Amazon S3
- Les concepts fondamentaux d'Amazon S3.
- L'énumération des options de sécurisation des données.
- La définition des dépendances SDK pour le code.
- Les méthodes de connexion au service Amazon S3.
- La gestion des objets de requête et de réponse.
Module 6 : gérer les opérations de stockage S3
- L'exécution des opérations de bucket et d'objet.
- La gestion des objets multiples et volumineux.
- La création et la configuration d'un bucket Amazon S3 pour héberger un site web statique.
- L'octroi d'un accès temporaire aux objets.
- Les opérations Amazon S3 via les SDK.
Labs : développer des solutions avec Amazon S3
- Interaction par programmation avec Amazon S3 via les SDK AWS et l'AWS CLI.
- Création d'un bucket avec des "waiters" et la vérification des codes d'exception de service.
- Construction des requêtes nécessaires pour télécharger un objet Amazon S3 avec des métadonnées.
- Construction des requêtes pour télécharger un objet depuis le bucket, traiter les données et télécharger l'objet modifié.
- Configuration d'un bucket pour héberger le site web et la synchronisation des fichiers sources via l'AWS CLI.
- Ajout de politiques de bucket IAM pour autoriser l'accès au site web S3.
Module 7 : développer avec Amazon DynamoDB
- Les composants clés de DynamoDB.
- L'explication de la connexion à DynamoDB.
- La construction d'un objet de requête.
- La lecture d'un objet de réponse.
- La liste des exceptions de dépannage courantes.
Module 8 : gérer les opérations de base de données DynamoDB
- Le développement de programmes d'interaction avec DynamoDB (SDK AWS).
- L'exécution des opérations CRUD sur les tables, index et données.
- Les bonnes pratiques de développement pour l'accès à DynamoDB.
- Les options de mise en cache pour améliorer les performances.
- Les opérations DynamoDB via le SDK.
Labs : développer des solutions avec Amazon DynamoDB
- Interaction par programmation avec Amazon DynamoDB via les API de bas niveau, de document et de haut niveau.
- Récupération d'éléments d'une table à l'aide d'attributs de clé, de filtres, d'expressions et de pagination.
- Chargement d'une table en lisant des objets JSON à partir d'un fichier.
- Recherche d'éléments dans une table en fonction d'attributs de clé, de filtres, d'expressions et de pagination.
- Mise à jour d'éléments en ajoutant de nouveaux attributs et en modifiant les données de manière conditionnelle.
- Accès aux données DynamoDB à l'aide de PartiQL et des modèles de persistance d'objet lorsque cela est possible.
Module 9 : développer avec AWS Lambda
- Le développement d'une fonction Lambda (SDK).
- La configuration des déclencheurs et des permissions.
- Le test, le déploiement et la surveillance des fonctions Lambda.
Labs : développer des solutions avec les fonctions AWS Lambda
- Création et interaction par programmation avec les fonctions AWS Lambda via les SDK AWS et l'AWS CLI.
- Configuration des fonctions AWS Lambda pour utiliser les variables d'environnement et s'intégrer à d'autres services.
- Génération d'URL pré-signées Amazon S3 à l'aide des SDK AWS et la vérification de l'accès aux objets du bucket.
- Déploiement des fonctions AWS Lambda avec des archives de fichiers .zip via l'IDE et les tests.
- Invocation des fonctions AWS Lambda à l'aide de la console AWS et de l'AWS CLI.
Module 10 : gérer les APIs avec Amazon API Gateway
- Les composants clés d'API Gateway.
- Le développement de ressources API Gateway pour l'intégration aux services AWS.
- La configuration des appels de requête et réponse API.
- Le test des ressources API et le déploiement du point de terminaison API.
- La création de ressources API Gateway.
Labs : développer des solutions avec Amazon API Gateway
- Création de ressources API Gateway RESTful et configuration de CORS pour l'application.
- Intégration des méthodes API avec les fonctions AWS Lambda pour traiter les données de l'application.
- Configuration des modèles de mappage pour transformer les données transmises lors de l'intégration de la méthode.
- Création d'un modèle de requête pour les méthodes API afin de garantir que le format des données transmises est conforme aux règles de l'application.
- Déploiement de l'API Gateway vers un environnement et la validation des résultats à l'aide du point de terminaison API.
Module 11 : concevoir une application moderne
- Les défis des architectures traditionnelles.
- L'architecture en microservices et ses avantages.
- Les approches de conception des applications en microservices.
- Le découplage des applications monolithiques.
- L'orchestration des fonctions Lambda (AWS Step Functions).
Module 12 : sécuriser l'accès utilisateur
- L'analyse de l'évolution des protocoles de sécurité.
- L'exploration de l'authentification (Amazon Cognito).
- La gestion de l'accès utilisateur et l'autorisation des API sans serveur.
- Les bonnes pratiques d'Amazon Cognito.
- L'intégration d'Amazon Cognito et l'analyse des jetons JWT.
Labs : créer de A à Z une application
- Création d'un groupe d'utilisateurs et d'un client d'application pour l'application web.
- Ajout de nouveaux utilisateurs et confirmation de leur capacité à se connecter à l'aide de l'interface de ligne de commande Amazon Cognito.
- Configuration des méthodes API Gateway pour utiliser Amazon Cognito comme autorisateur.
- Vérification de la génération des jetons d'authentification JWT lors des appels API Gateway.
- Développement rapide des ressources API Gateway à l'aide d'une stratégie d'importation Swagger.
- Configuration de l'interface utilisateur de l'application web pour utiliser les configurations Amazon Cognito et API Gateway et la vérification de la fonctionnalité complète de l'application.
Module 13 : déployer l'application
- L'identification des risques du développement logiciel traditionnel.
- La compréhension de la méthodologie DevOps.
- La configuration d'un modèle AWS SAM pour le déploiement sans serveur.
- Les stratégies de déploiement d'applications.
- Le déploiement d'une application sans serveur (AWS SAM).
Module 14 : observer l'application
- La différenciation entre la surveillance et l'observabilité.
- L'évaluation de la nécessité de l'observabilité et de ses composants clés.
- La compréhension du rôle de CloudWatch dans l'observabilité.
- L'utilisation de CloudWatch Application Insights.
- L'utilisation d'X-Ray pour le débogage.
Labs : observer l'application à l'aide d'AWS X-Ray
- Instrumentation du code de l'application pour utiliser les fonctionnalités AWS X-Ray.
- Activation de la génération de journaux par le package de déploiement de l'application.
- Analyse des composants clés d'un modèle AWS SAM et déploiement de l'application.
- Création de cartes de service AWS X-Ray pour observer le comportement de traitement de bout en bout de l'application.
- Analyse et débogage des problèmes d'application à l'aide des traces et des annotations AWS X-Ray.
Module 15 : conclusion de la formation
- Revue des points clés des cours.
- Présentation des autres formations AWS et des certifications.
- Séance de feed-back.
Prérequis
Suivre cette formation AWS nécessite l'un des prérequis recommandés suivants :
- avoir suivi une formation sur les principes de base de la conteneurisation ;
- avoir suivi une formation sur les concepts fondamentaux et le fonctionnement d'Amazon EKS ;
- avoir suivi la formation AWS Cloud Practitioner Essentials ou justifier d'une expérience ;
- avoir une expérience en programmation Python, .NET ou Java.
Public
Cette formation s'adresse aux publics suivants :
- les développeurs de logiciels expérimentés, désireux d'approfondir leurs compétences en utilisant les services AWS pour la création d'applications cloud ;
- les architectes de solutions cloud, chargés de la conception et du déploiement d'architectures applicatives sur la plateforme AWS ;
- les professionnels de l'IT souhaitant renforcer leur expertise en développement sur AWS et optimiser l'utilisation des services cloud.
Points forts
- Formateurs experts AWS certifiés : bénéficiez de l'expertise de formateurs reconnus et certifiés par AWS, qui possèdent une connaissance approfondie des services cloud et des meilleures pratiques de développement.
- Mise en pratique interactive : maîtrisez les outils et techniques de développement sur AWS grâce à des démonstrations concrètes et des exercices pratiques. Vous serez ainsi préparé à relever les défis réels du développement d'applications cloud.
- Acquisition de compétences clés : le contenu de la formation est soigneusement conçu pour vous permettre d'acquérir les compétences essentielles en matière de conception, de développement, de déploiement et de gestion d'applications sur la plateforme AWS.
AWS est une marque déposée d'Amazon.com, Inc. ou de ses filiales.