DevOps BootCamp Syllabus
Nord Foire, à côté de la Brioche d’orée
Email : [Link]@[Link]
Tel : +221 78 178 73 00
Plan de cours
DevOps BootCamp
Résumé
➔ Sujet(s) : DevOps BootCamp
➔ Sujet ou unité étudié : devops, Linux, conteneur, Cloud, kubernetes
➔ Classe/niveau : BAC+3
➔ Pour :
◆ Software Developers
◆ System Administrators
◆ Network Engineers
◆ Cloud Engineers
◆ Testing Engineers / QA
➔ Objectif :
À la fn de ce cours, le participant doit être capable de mettre en place un pipeline
CI/CD, déployer et monitorer une application Java sur un environnement Kubernetes
chez le fournisseur cloud de son choix.
➔ Temps imparti : 60h
Formateur
➔ Nom: Mouhamadou Moustapha CAMARA
➔ Profession: Senior Software Architect Consultant, Digital Transformation -
DevOps & Security enthusiast
➔ Portfolios:
- + 10 ans d’expérience comme développeur d’applications weber mobile
dont quatre ans comme responsable Dev - DevOps.
- Community Support à KodeKloud (e-learning plateforme dans le domaine
du cloud)
Mouhamadou Moustapha CAMARA - Solution Architect Consultant
1
DevOps BootCamp Syllabus
- Mentor - Reviewer à Udacity sur les cours de développement et cloud Developer
➔ Certifcation & Badge :
- Certifé Kubernetes Administration (CKA)
- Certifé ITIL Foundation v3
- Cisco Network Security
➔ Vidéos de présentations DevOps (EN):
[Link]
Mise en œuvre
Contexte d'apprentissage
Le devops est un mouvement en ingénierie informatique et une pratique technique visant
à l'unifcation du développement logiciel (dev) et de l'administration des infrastructures
informatiques (ops), notamment l'administration système.
Parcours
Section 1 : les fondamentaux
- Introduction au DevOps
- Défnition
- Les outils devOps
- Confguration environnement de travail
- Installation et Confguration de VirtualBox
- Installation et confguration de Vagrant
- Linux Basique (Ubuntu 22.04 LTS)
- Commande de base
- Gestion des paquets
Mouhamadou Moustapha CAMARA - Solution Architect Consultant
2
DevOps BootCamp Syllabus
- administration réseaux fondamentale sur Linux
- Les services Linux
- Version Control avec Git & GitHub
- Installation et initialisation
- gestion des branches
- Répertoires distants
- Programmation fondamentale
- Java — Installation et confguration
- Java — Build et packaging
- Java — Unit test
- [Link] — Installation et confguration
- [Link] — NPM
- [Link] — Unit test
- Python — Installation et confguration
- Python — PIP
- Python — Unit test
- Microservices architecture
- Lab : Git et environnement de programmation sur Ubuntu 22.04 : Déployer
une application microservice
Section 2: Containérisations
- Défnition et avantages des conteneurs
- Docker
- Défnition et vocabulaire
- Les commandes de base de Docker
- Les images Docker (Création — Exécution — Interaction)
- Stockage
Mouhamadou Moustapha CAMARA - Solution Architect Consultant
3
DevOps BootCamp Syllabus
- Réseaux
- Docker Registry (Docker Hub)
- Lab : Créer des images docker, les publier sur Docker hub et les exécuter en local
Section 3 : Conteneurs orchestrations avec kubernetes
- Kubernetes overview
- Défnition
- kubernetes fondamental
- Kubernetes architecture
- YAML - JSON
- installation et confguration environnement local
- Les ressources kubernetes
- Pods
- Replicaset
- Deployment
- StatefulSet
- Namespaces
- Services
- Ressource limits
- Lab : Reprendre les images créées précédemment et utiliser kubernetes pour
le déploiement
Section 4 : Cloud Computing
- Cloud computing
- Introduction
- Informatique traditionnelle
- C'est quoi le Cloud Computing?
- Bénéfque du Cloud Computing
Mouhamadou Moustapha CAMARA - Solution Architect Consultant
4
DevOps BootCamp Syllabus
- Modèles de services du cloud computing
- Plateforme as a service (PAAS)
- Infrastructure as a service (IAAS)
- Software as a service (SAAS )
- Exemple de fournisseur cloud
- AWS
- Les services cloud sur AWS
- K8s sur AWS
- DigitalOcean
- les services cloud sur DigitalOcean
- k8s sur DigitalOcean
- Linode
- les services cloud sur Linode
- k8s sur Linode
- Lab : Déployer l'environnement de test précédent dans un environnement cloud
au choix de l'étudiant
Section 5 : Automation CI/CD
- CI/CD (Défnition et vocabulaire)
- Jenkins
- Pourquoi Jenkins ?
- Installation et confguration
- Administration de Jenkins
- Pipeline
- Créez votre premier Jenkins fle
- CI pipeline
- CD pipeline
- Lab : Mettre en place un pipeline CI/CD en réutilisant le repos
créé précédemment
Section 6 : Infrastructure as a code / Confguration
Management (Bonus)
- Iac : Terraform
Mouhamadou Moustapha CAMARA - Solution Architect Consultant
5
DevOps BootCamp Syllabus
- Introduction à Terraform
- Utilisation de Terraform
- Terraform avec des fournisseurs cloud
- Confguration management : Ansible
- Introduction à ansible
- Utilisation de ansible
- Lab : Confgurer l'environnement de travail sur le cloud avec Terraform et ansible
Section 7 : Monitoring
- Introduction au Monitoring
- Utilisation de prometheus & grafana
- Utilisation de Elasticsearch
- Lab : Mettre en place une interface de monitoring et remonter les logs
de l'application précédemment déployer
Section 8 : Capstone project
Mouhamadou Moustapha CAMARA - Solution Architect Consultant