Résumé du cours
Le cours Ingénierie DevOps sur AWS montre comment utiliser les schémas d’opérations de développement (DevOps) les plus courants pour développer, déployer et gérer des applications sur AWS. Ce cours couvre les principes essentiels de la méthodologie DevOps et étudie de nombreux cas d’utilisation, applicables à des scénarios de développement d’entreprises, de PME et de startups.
Moyens d'évaluation :
- Évaluations formatives pendant la formation, à travers les travaux pratiques réalisés sur les labs à l’issue de chaque module
- Évaluation sous forme de questionnaire à l’issue de la formation
A qui s'adresse cette formation
Ce cours s’adresse aux personnes suivantes :
- Administrateurs système
- Développeurs logiciels
Certifications
Cette formation prépare à la/aux certifications:
Pré-requis
Pour assister à ce cours, il est recommandé :
- d’avoir suivi la formation Cloud Operations on AWS (AWSSYS);
- d’avoir suivi la formation Developing on AWS (AWSD);
- de maîtriser au moins un langage de programmation de haut niveau (C#, Java, PHP, Ruby, Python, etc.) ;
- d’avoir des connaissances intermédiaires dans l’administration de systèmes Linux ou Windows au niveau de la ligne de commande ;
- de disposer d’une expérience de travail avec AWS, à la fois pour AWS Management Console et l’interface de ligne de commande AWS.
Objectifs
A la fin de ce cours, vous aurez acquis les compétences suivantes :
- Savoir utiliser les meilleures pratiques DevOps pour développer, fournir et maintenir des applications et des services à grande vitesse sur AWS
- Être capable de lister les avantages, les rôles et les responsabilités des petites équipes DevOps autonomes
- Apprendre à concevoir et mettre en oeuvre une infrastructure sur AWS qui prend en charge les projets de développement DevOps
- Pouvoir tirer parti d'AWS Cloud9 pour écrire, exécuter et déboguer votre code
- Comprendre comment déployer divers environnements avec AWS CloudFormation
- Pouvoir héberger des référentiels Git sécurisés, hautement évolutifs et privés avec AWS CodeCommit
- Savoir intégrer les référentiels Git dans les pipelines CI/CD
- Apprendre à automatiser la génération, le test et l'empaquetage du code avec AWS CodeBuild
- Pouvoir stocker et exploitez en toute sécurité les images Docker et les intégrer dans vos pipelines CI/CD
- Comprendre comment créer des pipelines CI/CD pour déployer des applications sur Amazon EC2, des applications sans serveur et des applications basées sur des conteneurs
- Savoir mettre en oeuvre des stratégies de déploiement communes telles que "all at once", "rolling" et "blue/green"
- Apprendre à intégrer les tests et la sécurité dans les pipelines CI/CD
- Être capable de surveiller les applications et les environnements à l'aide des outils et technologies AWS
Contenu
1 - Introduction au DevOps
- Qu'est-ce que DevOps ?
- Le voyage d'Amazon vers DevOps
- Fondamentaux pour DevOps
2 - Automatisation des infrastructures
- Introduction à l'automatisation des infrastructures
- Plonger dans le modèle AWS CloudFormation
- Modification d'un modèle AWS CloudFormation
- Démo : structure du modèle AWS CloudFormation, paramètres, piles, mises à jour, importation de ressources et détection de dérive
3 - Boîtes à outils AWS
- Configuration de l'AWS CLI
- Kits de développement logiciel AWS (SDK AWS)
- AWS SAM CLI
- Kit de développement cloud AWS (AWS CDK)
- AWS Cloud9
- Démo : AWS CLI et AWS CDK
- Lab : utilisation d'AWS CloudFormation pour provisionner et gérer une infrastructure de base
4 - Intégration continue et livraison continue (CI/CD) avec des outils de développement
- Pipeline CI/CD et outils de développement
- Démo : pipeline CI/CD affichant certaines actions d'AWS CodeCommit, AWS CodeBuild, AWS CodeDeploy et AWS CodePipeline
- Lab : déploiement d'une application sur une flotte EC2 à l'aide d'AWS CodeDeploy
5 - Intégration continue et livraison continue (CI/CD) avec des outils de développement (suite)
- AWS CodePipeline
- Démo : intégration AWS avec Jenkins
- Lab : automatisation des déploiements de code à l'aide d'AWS CodePipeline
6 - Introduction aux microservices
- Introduction aux microservices
7 - DevOps et conteneurs
- Déploiement d'applications avec Docker
- Amazon Elastic Container Service et AWS Fargate
- Amazon Elastic Container Registry et service Amazon Elastic Kubernetes service
- Démo : déploiement de pipeline CI/CD dans une application conteneurisée
8 - DevOps et informatique sans serveur
- AWS Lambda et AWS Fargate
- Référentiel d'applications sans serveur AWS et AWS SAM
- Fonctions d'étape AWS
- Démo : AWS Lambda et caractéristiques
- Démo : démarrage rapide d'AWS SAM dans AWS Cloud9
- Lab : déploiement d'une application sans serveur à l'aide d'AWS Serverless Application Model (AWS SAM) et d'un pipeline CI/CD
9 - Stratégies de déploiement
- Déploiement continu
- Déploiements avec les services AWS
10 - Tests automatisés
- Introduction aux tests
- Tests : unitaire, intégration, tolérance aux pannes, charge et synthétique
- Intégrations de produits et services
11 - Automatisation de la sécurité
- Introduction à DevSecOps
- Sécurité du pipeline
- Sécurité dans le pipeline
- Outils de détection des menaces
- Démo : AWS Security Hub, Amazon GuardDuty, AWS Config et Amazon Inspector
12 - Gestion de la configuration
- Introduction au processus de gestion de configuration
- Services et outils AWS pour la gestion de la configuration
- Lab : effectuer des déploiements blue/green avec des pipelines CI/CD et Amazon Elastic Container Service (Amazon ECS)
13 - Observabilité
- Introduction à l'observabilité
- Outils AWS pour aider à l'observabilité
- Lab : utilisation des outils AWS DevOps pour les automatisations de pipeline CI/CD
14 - Architecture de référence (Module optionnel)
- Architectures de référence
15 - Conclusion
- Composants de la pratique DevOps
- Revue du pipeline CI/CD
- Certification AWS
Moyens Pédagogiques :