Bloc Contenu
Header DevOps
Logo de l’opérateur de formation :
Sous-titre : Deviens DevOps en 4 mois avec Maroc Ynov Campus
Infos clés
- Durée : 4 mois
- Lieux de formation : ESRMI 32, Rue Moulay Ali Cherif – Hassan- Rabat
- Prochaine session : Avril 2024
- Diplômés (au minimum) d’un :
Bac+3 en Infrastructure Digitale (Réseaux et Système / Cloud Computing)
Bac+3 en Développement Informatique
Débouchés : les Après avoir suivi une formation de DevOps, vous pourriez accéder à divers
postes que vous postes passionnants dans le domaine de l'informatique et de la technologie.
pourrez occuper Certains des postes courants auxquels vous pourriez prétendre incluent le
après cette DevOps, l’administrateur système, l’architecte cloud, le développeur logiciel,
formation ou encore le chef de projet informatique. Ces postes offrent des opportunités
de carrière stimulantes et variées dans le domaine de l'ingénierie logicielle et
des opérations informatiques.
Success Stories de 50% de nos lauréats sont insérés en entreprise avant la fin de la formation
Lauréats (si
disponible)
Pourquoi devenir
DevOps en 2024 ? En 2024, le métier de DevOps présente de nombreux avantages. Avec
l'évolution rapide de la technologie et la demande croissante pour des
solutions logicielles fiables et efficaces, les entreprises cherchent de plus en
plus à intégrer des pratiques DevOps pour améliorer leur agilité et leur
efficacité opérationnelle.
En tant que DevOps, vous serez en mesure de jouer un rôle clé dans la mise
en œuvre de ces pratiques, ce qui vous permettra de rester pertinent sur le
marché du travail et de bénéficier de nombreuses opportunités de carrière
passionnantes.
De plus, vous serez en mesure de travailler sur des projets innovants et de
collaborer avec des équipes multidisciplinaires, ce qui vous permettra
d'acquérir de nouvelles compétences et de progresser dans votre carrière.
Compétences : ce • Découvrir les fondements du DevOps et comment l’adopter dans une
que vous allez organisation.
apprendre • Implémenter le concept DevOps en adoptant une culture de
collaboration et en mettant en place un CI/CD pipeline via des outils
modernes et dédiées d’automatisation.
• Automatiser le déploiement, la montée en charge et la mise en œuvre
de conteneurs d'application sur des clusters de serveurs.
• Mettre en place et superviser une infrastructure on-promise et dans le
cloud.
• Explorer les pratiques et les outils d'automatisation de l'infrastructure.
• Sécuriser une infrastructure digitale ainsi que le processus de livraison
logiciel.
Programme de la Partie I : Mise à niveau
formation
Bloc 1 : Système et Réseaux
- Systèmes d’Exploitation
▪ Bases des systèmes d’exploitation
▪ Systèmes Linux, Unix et Windows
▪ Administration
▪ Commandes
▪ Scripts Shell et PowerShell
- Réseaux et Administration
▪ Fonctionnement et caractéristiques d'un réseau informatique
▪ Les équipements réseaux
▪ Les modèles OSI et TCP/IP
▪ Commutation et Routage
▪ Applications, protocoles et services
▪ Administration de serveurs (Nginx, Tomcat, IIS) via SSH
Bloc 2 : Programmation et Bases de Données
- Bases de la Programmation en langage Go
▪ Algorithmique : variables, structures de contrôle, structures
de données, etc.
▪ Programmation orientée objet
▪ Mise en place d’un serveur web
▪ Manipulation des API
- Bases de Données
▪ Description des différents modèles de SGBD et de leurs
fonctionnalités
▪ BD relationnelles :
• Installation et configuration d’un serveur de base de
données PostgreSQL
• Exploitation d’une base de données avec les opérations
CRUD
• Création et manipulation de sauvegardes de BDD
• Utilisation d’une interface d’administration de BDD
▪ BD non relationnelles :
- Manipulation des documents d’une BD
- Installation et administration d’une BD MongoDB
- Manipulation des BDD clé-valeur utilisées en cache (Redis)
Bloc 3 : Virtualisation, Cloud Computing et Sécurité
- Virtualisation et Cloud Computing
▪ Virtualisation des machines
▪ Concepts clés du Cloud Computing
▪ Les services fondamentaux des principaux fournisseurs
cloud public : Calcul, stockage, bases de données, réseaux,
sécurité (IAM), supervision, facturation, etc.
▪ Principes et caractéristiques d'une architecture structurée
dans le cloud
- Bases de la Sécurité
▪ Vulnérabilités : d’infrastructure, du système d’exploitation et
des applications
▪ Différents types d'attaques
▪ Outils de reconnaissance passive et active
▪ Exploitation des vulnérabilités
▪ Sensibilisation aux attaques de type Social Engineering
Bloc 4 : Gestion de Projet Agile
- Systèmes de Contrôle de Version
▪ Versioning du code avec Git
▪ Création et gestion d’un dépôt distant GitLab
▪ Utilisation des branches avec Git pour travailler en équipe
- Gestion de projet
▪ Méthodologie Agile : SCRUM
▪ Organisation de sprints
▪ Définition des priorités des tâches
▪ Animation et organisation des points de suivi
▪ Outil de ticketing et de gestion de projet JIRA
Partie II : Pipeline de Mise en Production
- Aperçu et Introduction au DevOps
▪ Cycle de Développement Logiciel (SDLC)
▪ Problématique à résoudre
▪ L’approche DevOps comme concept :
• Les aspects de collaboration intra et inter équipes
(volet : People)
• L’automatisation du cycle de développement logiciel
(volet : Process)
• Aperçu sur les outils, services et plateformes DevOps
(volet : Tools)
▪ Le concept vs le rôle et ses responsabilités
- Intégration Continue (CI) avec GitLab
▪ Configuration de GitLab pour l'exécution de pipeline
d'intégration continue
▪ Automatisation de l’utilisation des outils de build et gestion
des packages
▪ Automatisation des tests unitaires et tests de régression
▪ Mise en place d’un système de test E2E automatisé
▪ Analyse automatique de la qualité et de la sécurité du code
avec SonarQube
- Livraison/Déploiement Continu(e) (CD) avec GitLab
▪ Extension d’un CI pipeline pour déployer une application dans
un environnement de Test
▪ Automatisation des tests des montées en charge
▪ Automatisation du déploiement en production
- Mise en place d’un pipeline CI/CD complet avec Jenkins
Partie III : Infrastructure
Bloc 1 : Conteneurs
- Conteneurisation des Applications avec Docker
▪ Les bases de la conteneurisation : besoin et concept
▪ Architecture générale et composants de Docker
▪ La création et la gestion des conteneurs avec Docker
▪ Persistance et Gestion des données de l’application (Stockage)
▪ Communication entre conteneurs (Networking)
▪ Exécution instantanée de plusieurs conteneurs avec Docker
Compose
- Orchestration des Conteneurs avec Kubernetes
▪ Orchestration des conteneurs : besoin et concept
▪ Architecture générale et composants de Kubernetes
▪ Création et administration d’un cluster Kubernetes (avec
kubeadm ou kubspray)
▪ Objets Kubernetes : pod, service, ingress, namespace, volume,
configmap, secret
▪ Contrôleurs Kubernetes : deployment, replicaset, statefulset,
daemonset, job et cronjob
▪ Les fichiers de configuration YAML (syntaxe et bonnes
pratiques)
▪ Technologies connexes : écosystème des outils
complémentaires (kubectl, Helm, etc.)
Bloc 2 : Automatisation de l’Infrastructure
- Infrastructure as Code I : Mise à disposition des Infrastructures avec
Terraform
▪ Infrastructure en tant que code : besoin et concept
▪ Mise à disposition d’une infrastructure cloud : besoin et
concept
▪ Concepts de base et composants de Terraform : provider,
resources, data sources, commandes, state, output values,
input variables, environment variables, etc.
▪ Terraform Provisioners
▪ Terraform Modules & Workspaces
▪ Remote State Management
▪ Mise à disposition d’une infrastructure cloud (+ astuces et
bonnes pratiques)
- Infrastructure as Code II : Gestion des Configurations avec Ansible
▪ Gestion des Configurations : besoin et concept
▪ Comparaison des outils de gestion des configurations : Puppet
/ Chef / Ansible
▪ Fichiers de Configuration d’Ansible et concepts de base
▪ Ansible Inventory
▪ Ansible Variables
▪ Ansible Playbooks
▪ Ansible Modules
▪ Ansible Handlers, Roles and Collections
▪ Introduction au Templating (templates Jinja2 pour des
configurations dynamiques)
- GitOps avec ArgoCD
▪ GitOps : besoin et concept
▪ CD pipeline : les modèles Push et Pull
▪ Mise en place d’ArgoCD pour le déploiement automatisé des
applications
▪ Phases, Options et Politiques de synchronisation
▪ Stratégies de suivi (tracking)
Bloc 3 : Observabilité et Monitoring
- Monitoring avec Prometheus
▪ Observabilité et Monitoring : comprendre le concept, l’intérêt,
les types et les techniques
▪ Prometheus comme outil de supervision : Installation et
configuration sur Kubernetes
▪ Cas d'utilisation spécifiques pour l'utilisation de Prometheus
Monitoring
▪ Architecture de Prometheus : Serveur Prometheus (Retrieval,
Storage, http server), Cibles, Métriques, Gestionnaire
d’alertes (Alert Manager), Prometheus web UI.
▪ Fonctionnement de Prometheus
▪ Stockage de données Prometheus et langage de requêtes
PromQL
▪ Superviser des conteneurs Docker ou des clusters Kubernetes
avec Prometheus
▪ Paramétrer des alertes automatiques avec Prometheus
Alertmanager
▪ Visualisation des résultats avec Grafana
- Tracing avec Jaeger
▪ Le Tracing : le concept, l’intérêt et les techniques
▪ Utilisation de Jaeger pour tracer les requêtes entre services
- Logging avec les piles ELK / EFK
▪ Le logging : le concept, l’intérêt et les techniques
▪ Les pile ELK (Elasticsearch / Logstach / Kibana) et EFK
(Elasticsearch / Fluentd / Kibana)
▪ Utilisation pour le logging de l’infrastructure et des
applications déployées sur Kubernetes
Partie IV : Sécurité (DevSecOps)
- Introduction au DevSecOps
▪ Problèmes et limitations de la sécurité classique
▪ Le DevSecOps comme concept :
• Les pratiques pour l’implémenter : Shift-left Security,
Automatisation, Sensibilisation, etc.
• Le concept vs le rôle et ses responsabilités
- Sécurité dans le cycle de développement logiciel
▪ Introduction aux scans de vulnérabilités dans un cycle de
développement logiciel (SDLC)
▪ Avant le déclenchement du pipeline CI/CD
• Pre-commit Hooks
• Gestion des Secrets avec Vault
▪ Scans intégrés au niveau du pipeline CI/CD
• Static Application Security Testing (SAST)
• Software Composition Analysis (SCA)
• Sécurité des Conteneurs :
o Bonnes pratiques de création des images Docker
o Scans des images au niveau du pipeline de livraison
o Scans des images au niveau des registres Docker
• Dynamic Application Security Testing (DAST)
• Visualisation des résultats des scans dans un « Vulnerability
Management Tool »
• Actions de remédiation
• Actions de détection et analyse des false positives
- Introduction à d’autres aspects de la sécurité
▪ Sécurité dans le Cloud
▪ Sécurité d’un cluster Kubernetes
▪ Sécurité de l’Infra as Code
▪ Gouvernance et Conformité (Compliance as Code)
Soft Skills
• Développement personnel
• Rédaction de CV
• Techniques de travail en groupe
• Technique d’entretien d’embauche
• Optimisation du profil sur Linkedin
• Débats en anglais
Notre méthode Formation modulaire orienté pratique : Les participants se verront attribuer
un projet sur lequel ils travailleront tout au long de la formation, aboutissant
à une soutenance finale pour mettre en lumière les compétences acquises.
A quoi s’attendre Séminaire d’intégration, cours interactif, encadrement personnalisé.
pendant le
bootcamp ?
Présentation de Le groupe YNOV CAMPUS figure dans le TOP 10 des groupes d’enseignement
l’opérateur supérieur français. C’est le leader spécialisé dans l’enseignement des filières
digitales avec près de 11 000 étudiants. Le groupe YNOV est présent en
France à travers 15 campus à Aix-en-Provence, Bordeaux, Lyon, Nantes, Paris,
Montpellier, Rennes, Lille, Nice et Toulouse. Pour le Maroc nous avons un
campus à Casablanca.
Candidature - Prérequis : minimum Bac + 3
- Critères de sélection : Sélection sur dossier / test écrit (QCM)/ test oral.
- Modalités, étapes de candidature : Inscription sur le site JOBINTECH
FAQ dédiée à cette
formation