Formation DevOps pour débutants


Le DevOps est une voie de collaboration entre les équipes de développement et les opérations de production. Elle réduit les incompréhensions entre ces groupes en créant des standards communs, en automatisant les tâches difficiles et répétitives et en accélérant le temps-vers-production de façon stable.

Objectifs

  • Automatiser le livrable en production de façon rapide, fiable et répétable
  • Standardiser les codes et infrastructures pour faciliter la communication entre les équipes et leurs membres
  • Améliorer la qualité en testant les applications et infrastructures avant la production

Public cible

  • Les développeurs
  • Les sysadmins
  • Les networkadmins
  • Les architectes Software
  • Les équipes agile Software

Prérequis

  • Connaissances de base en programmation
  • Connaissances de base en administration système/réseau

Caractéristiques singulières de la formation

  • Tout opensource : chaque outil utilisé est opensource. Il est donc plus facile de reproduire ce que vous avez appris directement dans votre projet
  • Cycle théorie-pratique rapide : chaque point théorique est lié à un exercice pratique. Vous apprenez plus vite quand vous mettez directement en pratique ce qui vient d’être enseigné

La formation elle-même

Pourquoi DevOps ?

Définition de la problématique. L’histoire du DevOps et les problèmes qu’il cherche à résoudre

  • La guerre entre développeurs et équipes de production
  • La méthode Agile mais en pratique (User stories et tests)

Modéliser votre dev !

Commente paramétrer correctement un environnement de dev pour améliorer la parité dev-prod et ne pas tout refaire à chaque fois

  • Vagrant et Virtualbox pour gérer des configurations serveurs répétables sur votre propre ordinateur
  • Docker et autres outils containers pour gérer vos apps au sein de ces serveurs

Gérer votre code !

Les bases de git pour apprendre comment gérer une base de code efficacement et sans s’y perdre

  • Git clone, pull/push, branch, merge et quelques flux git
  • Découverte de Gitlab
  • Découverte de Gitea

Tout en artéfacts !

La façon d’empaqueter correctement votre code et infrastructure pour une production plus fiable et sécurisée

  • Comment construire une app avec Docker
  • Comment créer un playbook Ansible pour déployer votre app

Tout automatiser !

Comment automatiser vos tests, paquets et même votre déploiement en production

  • Les principes du CI
  • Créer un CI avec Jenkins
  • Créer un CI avec Gitlab

Tout tester !

Les bases de l’écriture des tests pour infrastructure pour trouver les bugs avant de mettre en production

  • Tests d’intégration avec Bats et Cucumber
  • Tests de conformité avec Inspec
  • Un aperçu de DevSecOps

Déployez-le !

Comment automatiser correctement un déploiement pour éviter de casser la production

  • La syntaxe SemVer pour trouver votre historique de déploiement rapidement
  • Blue/Green, Canary, rolling deploy
  • Les bases de backups

Monitorez-le !

Comment voir ce qui se passe réellement en production

  • Monitorer avec Prometheus
  • Logger avec EFK

Contactez-nous via email ou à travers les réseaux sociaux affichés en dessous !