Formation Amazon Web Services, développer des applications Web "scalable" pour le Cloud
Notre formation a pour vocation de vous apprendre le moyen de tirer profit du Cloud AWS pour déployer des applications scalables et résilientes.
Vous découvrirez comment AWS permet de concevoir des applications innovantes et apprendrez les bonnes pratiques de conception d'une application pour ces environnements.

À l’issue de la formation, le participant sera en mesure de :
- Mettre en place des architectures résilientes
- Comprendre les principes des applications événementielles avec AWS Lambda
- Mettre en place une approche polyglotte de la persistance de données avec DynamoDB et ElasticSearch
- Stocker des fichiers sur Amazon S3 et contrôler leur diffusion avec Amazon Cloudfront
- Appliquer le zero downtime deployment dans un processus d’intégration et de livraison continue
- Appréhender le coût total de possession d'un environnement cloud et réduire la dépendance aux technologies propriétaires d’une offre cloud
Cette formation s'adresse aux architectes et développeurs.
2 JOURS
Introduction
- Comprendre une offre Cloud : infrastructure, plateforme...
- Dépendance des applications vis à vis d’une offre Cloud.
- Bonnes pratiques de conception.
- Mesure du coût d’opportunité d’utilisation d’une offre Cloud.
Travaux pratiques
Mise en application de RDS, DynamoDB, Cloudsearch, Redshift et de Kinesis.
Les applications
- EC2 : une infrastructure élastique.
- Exigence d’applications stateless, conséquences sur les choix de conception.
- Surcouche Beanstalk.
- Dockerisation avec ECS Container Service et EC2 Kubernetes Services.
- Surcouches EMR pour les Jobs Hadoop et Spark.
- Alternative serverless avec AWS Lambda, couplage avec API Gateway.
Travaux pratiques
Déploiements d’une API Rest sur EC2 avec AWS Beanstalk, déploiement de composants sur AWS Lambda.
Sites statiques et single page application
- S3 pour héberger un site statique ou une single page application.
- Problématiques spécifiques des SPA.
- Diffusion avec Cloudfront.
- Gestion du cache et invalidations.
Travaux pratiques
Déploiement d’une single page application Angular sur S3 et diffusion sur CloudFront.
Stockage de données
- Principe de la persistance polyglotte.
- Principes d'une BDD distribuée.
- BDD NoSQL d’AWS : DynamoDB, Elasticsearch as a Service...
- BDD relationnelles avec Amazon RDS.
- Synchronisation entre BDD via le streaming.
Travaux pratiques
Création d’une base DynamoDB, création d’un cluster Elasticsearch.
Stockage des fichiers
- Archivage avec Glacier.
- Stockage de fichiers avec S3.
- Requétage des fichiers avec Athena.
- Diffusion de fichiers avec le CDN CloudFront.
Travaux pratiques
Création de buckets S3, couplage avec CloudFront, sécurisation des contenus.
Messages
- Pattern pub/sub avec SNS.
- Communication point à point avec SQS.
- Alternatives Open Source.
Travaux pratiques
Création de topics SNS, couplage avec Lambda.
Services techniques
- Utilisation de services techniques AWS par une application.
- Sécurité avec IAM, la chaîne d’authentification.
- Utilisation du SDK.
- Isolation du code dépendant d’AWS.
Travaux pratiques
Utilisation d’AWS Elastic Transcoder.
Intégration continue et livraison continue avec la CLI
- Command line interface (CLI).
- Chaîne d’authentification.
- Types de livrables selon l'environnement.
- Livraison et intégration continue vers Beanstalk, Lambda, S3 et ECS.
Travaux pratiques
- Déploiement des composants applicatifs sur leurs environnements respectifs avec la CLI.
Connaissance de base en programmation.
