Developing on AWS with AWS Jam
(DODEVA-AAJ)
Ce cours enseigne aux développeurs expérimentés comment interagir de manière programmatique avec les services AWS pour créer des solutions Web.
Il vous guide à travers une discussion architecturale de haut niveau sur la sélection des ressources et approfondit l’utilisation des kits de développement logiciel AWS (SDK) et de l’interface de ligne de commande (AWS CLI) pour créer et déployer vos applications cloud. Au cours de ce cours, vous créerez un exemple d’application, en apprenant à configurer les autorisations dans l’environnement de développement, à ajouter une logique métier pour traiter les données à l’aide des services principaux AWS, à configurer les authentifications des utilisateurs, à déployer sur le cloud AWS et à déboguer pour résoudre les problèmes d’application.
Le cours comprend des exemples de code pour vous aider à mettre en œuvre les modèles de conception et les solutions abordés dans le cours. Les ateliers renforcent le contenu clé du cours et vous aident à mettre en œuvre des solutions à l’aide du kit SDK AWS pour Python, .Net et Java, de l’interface de ligne de commande AWS et d’AWS Management Console.
Le dernier jour est un AWS Jam, un événement gamifié, où les équipes s’affrontent pour marquer des points en relevant une série de défis selon les bonnes pratiques établies basées sur les concepts abordés dans le cours. Vous avez l’occasion de découvrir un large éventail de services AWS dans une série de scénarios réels qui représentent des tâches opérationnelles et de dépannage courantes. Le résultat final est le développement, l’amélioration et la validation de vos compétences dans le cloud AWS grâce à la résolution de problèmes réels, à l’exploration de nouveaux services et fonctionnalités et à la compréhension de leur interopérabilité
Objectifs pédagogiques :
Dans ce cours, vous apprendrez à :
- Créer une application cloud simple de bout en bout à l’aide de kits de développement logiciel AWS (SDK AWS), d’une interface de ligne de commande (AWS CLI) et d’IDE.
- Configurer les autorisations AWS Identity and Access Management (IAM) pour prendre en charge un environnement de développement.
- Utiliser plusieurs modèles de programmation dans vos applications pour accéder aux services AWS.
- Utiliser les kits SDK AWS pour effectuer des opérations CRUD (création, lecture, mise à jour, suppression) sur Amazon Simple Storage Service (Amazon S3) et les ressources Amazon DynamoDB.
- Créer des fonctions AWS Lambda avec d’autres intégrations de services pour vos applications Web.
- Découvrir les avantages des architectures de microservices et des applications serverless pour la conception.
- Développer des composants API Gateway et intégrez-les à d’autres services AWS.
- Expliquer comment Amazon Cognito contrôle l’accès des utilisateurs aux ressources AWS.
- Créer une application Web à l’aide de 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 identifiez les services AWS qui aident à mettre en œuvre les pratiques DevOps.
- Utiliser le modèle d’application sans serveur AWS (AWS SAM) pour déployer une application.
- Observer la création de votre application à l’aide d’Amazon X-Ray.
- Travailler en équipe pour résoudre des problèmes d’utilisation AWS réels dans un AWS Jam
Public visé :
Ce cours s’adresse aux personnes expérimentées :
- Développeurs de logiciels
- Architectes de solutions
- Les informaticiens qui souhaitent améliorer leurs compétences en développement à l’aide des services AWS
Prérequis :
Les participants à ce cours doivent avoir :
- Principes de base techniques AWS
- Connaissance pratique des services de base AWS
- Expérience de la programmation dans l’une des langues suivantes : Python, .FILET, Java
Programme de cours :
Jour 1
Module 1 : Aperçu du cours
- Logistique
- Ressources pour les étudiants
- Ordre du jour
- Introductions
Module 2 : Création d’une application Web sur AWS
- Discutez de l’architecture de l’application que vous allez construire au cours de ce cours
- Explorez les services AWS nécessaires à la création de votre application web
- Découvrez comment stocker, gérer et héberger votre application web
Module 3 : Démarrer le développement sur AWS
- Décrire comment accéder aux services AWS par programmation
- Énumérer quelques modèles programmatiques et la manière dont ils permettent d’améliorer l’efficacité des kits SDK AWS et de l’AWS CLI
- Expliquer la valeur d’AWS Cloud9
Module 4 : Premiers pas avec les autorisations
- Passez en revue les autorisations des fonctionnalités et des composants AWS Identity and Access Management (IAM) pour prendre en charge un environnement de développement
- Démonstration de la mise à l’essai des autorisations AWS IAM
- Configurez vos IDE et SDK pour prendre en charge un environnement de développement
- Démonstration de l’accès aux services AWS à l’aide des kits SDK et d’AWS Cloud9
Exercice pratique 1 : Configuration de l’environnement de développement
- Se connecter à un environnement de développement
- Vérifiez que l’IDE et l’AWS CLI sont installés et configurés pour utiliser le profil d’application
- Vérifier que les autorisations nécessaires ont été accordées pour exécuter les commandes AWS CLI
- Attribuer une stratégie AWS IAM à un rôle pour supprimer un compartiment Amazon S3
Module 5 : Prise en main du stockage
- Décrire les concepts de base d’Amazon S3
- Répertorier les options de sécurisation des données à l’aide d’Amazon S3
- Définir des dépendances SDK pour votre code
- Expliquer comment se connecter au service Amazon S3
- Décrire les objets de demande et de réponse
Module 6 : Traitement de vos opérations de stockage
- Effectuer des opérations clés sur le compartiment et l’objet
- Expliquer comment manipuler des objets multiples et volumineux
- Création et configuration d’un compartiment Amazon S3 pour l’hébergement d’un site Web statique
- Accorder un accès temporaire à vos objets
- Démonstration de l’exécution d’opérations Amazon S3 à l’aide de kits SDK
Exercice pratique 2 : Développer des solutions à l’aide d’Amazon S3
- Interagissez avec Amazon S3 de manière programmatique à l’aide des kits SDK AWS et de l’AWS CLI
- Créer un compartiment à l’aide d’attentes et vérifier les codes d’exceptions de service
- Créez les requêtes nécessaires pour charger un objet Amazon S3 avec des métadonnées jointes
- Demandes de génération pour télécharger un objet à partir du compartiment, traiter les données et charger à nouveau l’objet dans le compartiment
- Configurer un compartiment pour héberger le site Web et synchroniser les fichiers sources à l’aide de l’AWS CLI
- Ajoutez des stratégies de compartiment IAM pour accéder au site Web S3.
Jour 2
Module 7 : Premiers pas avec les bases de données
- Décrire les principaux composants de DynamoDB
- Expliquer comment se connecter à DynamoDB
- Décrire comment créer un objet de demande
- Expliquer comment lire un objet de réponse
- Énumérer les exceptions de dépannage les plus courantes
Module 8 : Traitement des opérations de votre base de données
- Développer des programmes pour interagir avec DynamoDB à l’aide des kits SDK AWS
- Effectuer des opérations CRUD pour accéder aux tables, aux index et aux données
- Décrire les bonnes pratiques des développeurs lors de l’accès à DynamoDB
- Examiner les options de mise en cache pour DynamoDB afin d’améliorer les performances
- Exécution d’opérations DynamoDB à l’aide du SDK
Exercice pratique 3 : Développement de solutions à l’aide d’Amazon DynamoDB
- Interagissez avec Amazon DynamoDB de manière programmatique à l’aide d’API de bas niveau, de document et de haut niveau dans vos programmes
- Récupérer des éléments d’une table à l’aide d’attributs clés, de filtres, d’expressions et de paginations
- Charger une table en lisant des objets JSON à partir d’un fichier
- Rechercher des éléments à partir d’une table en fonction d’attributs clés, de filtres, d’expressions et de paginations
- Mettre à jour les éléments en ajoutant de nouveaux attributs et en modifiant les données de manière conditionnelle
- Accéder aux données DynamoDB à l’aide de PartiQL et des modèles de persistance d’objets, le cas échéant
Module 9 : Traitement de la logique de votre application
- Développer une fonction Lambda à l’aide de SDK
- Configurer les déclencheurs et les autorisations pour les fonctions Lambda
- Tester, déployer et surveiller les fonctions Lambda
Exercice pratique n° 4 : Développement de solutions à l’aide d’AWS Lambda Functions
- Créez des fonctions AWS Lambda et interagissez de manière programmatique à l’aide des kits SDK AWS et de l’AWS CLI
- Configurer les fonctions AWS Lambda pour utiliser les variables d’environnement et les intégrer à d’autres services
- Générer des URL pré-signées Amazon S3 à l’aide des kits SDK AWS et vérifier l’accès aux objets de compartiment
- Déployez les fonctions AWS Lambda avec .zip archives de fichiers via votre IDE et testez-les si nécessaire
- Appel de fonctions AWS Lambda à l’aide de la console AWS et de l’AWS CLI
Module 10 : Gestion des API
- Décrire les principaux composants d’API Gateway
- Développer des ressources API Gateway à intégrer aux services AWS
- Configurer les demandes d’API et les appels de réponse pour vos points de terminaison d’application
- Testez les ressources API et déployez le point de terminaison de l’API de votre application
- Démonstration de la création de ressources API Gateway pour interagir avec les API de votre application
Exercice pratique 5 : Développement de solutions à l’aide d’Amazon API Gateway
- Créez des ressources RESTful API Gateway et configurez CORS pour votre application
- Intégrer des méthodes API aux fonctions AWS Lambda pour traiter les données d’application
- Configurer des modèles de mappage pour transformer les données de transfert lors de l’intégration de la méthode
- Créez un modèle de demande pour les méthodes d’API afin de vous assurer que le format des données de transfert est conforme aux règles d’application
- Déployez API Gateway sur une étape et validez les résultats à l’aide du point de terminaison d’API
Jour 3
Module 11 : Création d’une application moderne
- Décrire les défis des architectures traditionnelles
- Décrire l’architecture et les avantages des microservices
- Expliquer les différentes approches de conception d’applications de microservices
- Expliquer les étapes de découplage des applications monolithiques
- Démonstration de l’orchestration des fonctions Lambda à l’aide d’AWS Step Functions
Module 12 : Accorder l’accès aux utilisateurs de votre application
- Analyser l’évolution des protocoles de sécurité
- Explorer le processus d’authentification à l’aide d’Amazon Cognito
- Gérer l’accès des utilisateurs et autoriser les API serverless
- Observer les bonnes pratiques pour la mise en œuvre d’Amazon Cognito
- Démonstration de l’intégration d’Amazon Cognito et examen des jetons JWT
Laboratoire 6 : Capstone – Terminer la construction de l’application
- Créez un groupe d’utilisateurs et un client d’application pour votre application web à l’aide de
- Ajouter de nouveaux utilisateurs et confirmer leur capacité à se connecter à l’aide de l’interface de ligne de commande Amazon Cognito
- Configurer les méthodes API Gateway pour utiliser Amazon Cognito en tant qu’autorisateur
- Vérifier que les jetons d’authentification JWT sont générés lors des appels d’API Gateway
- Développez rapidement des ressources API Gateway à l’aide d’une stratégie d’importation Swagger
- Configurez le frontend de votre application Web pour utiliser les configurations Amazon Cognito et API Gateway et vérifiez l’ensemble des fonctionnalités de l’application
Module 13 : Déploiement de votre application
- Identifier les risques associés aux pratiques traditionnelles de développement de logiciels
- Comprendre la méthodologie DevOps
- Configurer un modèle AWS SAM pour déployer une application sans serveur
- Décrire diverses stratégies de déploiement d’applications
- Démonstration du déploiement d’une application sans serveur à l’aide d’AWS SAM
Module 14 : Observer votre application
- Faire la différence entre surveillance et observabilité
- Évaluez pourquoi l’observabilité est nécessaire dans le développement moderne et les composants clés
- Comprendre le rôle de CloudWatch dans la configuration de l’observabilité
- Démonstration de l’utilisation de CloudWatch Application Insights pour surveiller les applications
- Démonstration de l’utilisation de X-Ray pour déboguer vos applications
Exercice pratique 7 : Observation de l’application à l’aide d’AWS X-Ray
- Instrumentez le code de votre application pour utiliser les fonctionnalités AWS X-Ray
- Activer votre package de déploiement d’application pour générer des journaux
- Comprendre les composants clés d’un modèle AWS SAM et déployer votre application
- Créez des mappages de service AWS X-Ray pour observer le comportement de traitement de bout en bout de votre application
- Analysez et déboguez les problèmes d’application à l’aide des traces et des annotations AWS X-Ray
Module 15 : Résumé du cours
- Aperçu du cours
- Cours de formation AWS
- Certifications
- Commentaires sur le cours
Jour 4
AWS Jam
- Participez à des défis en équipe dans un environnement AWS réel
- Rivalisez avec vos collègues dans une expérience d’apprentissage ludique et pratique
- Appliquez ce que vous avez appris lors du cours sur divers services AWS